‎2007 Dec 14 8:40 AM
Hi
While calling a adobe form i got an error in my report
Runtime Errors CALL_FUNCTION_PARM_MISSING
Except. CX_SY_DYN_CALL_PARAM_MISSING
Date and Time 14.12.2007 14:05:35
Short text
Incorrect parameter with CALL FUNCTION.
What happened?
When calling a function module, one of the parmaeters was not
specified.
Error in the ABAP Application Program
The current ABAP program "!ADOBE" had to be terminated because it has
come across a statement that unfortunately cannot be executed.
Error analysis
An exception occurred that is explained in detail below.
The exception, which is assigned to class 'CX_SY_DYN_CALL_PARAM_MISSING', was
not caught and
therefore caused a runtime error.
The reason for the exception is:
When calling the function module "/1BCDWB/SM00000081", one of the parameters
needed according to the interface description was not specified.
This parameter was "BOOKINGS".
Missing Handling of System Exception
Program !ADOBE
Trigger Location of Exception
Program !ADOBE
Include !ADOBE
Row 50
Module Name START-OF-SELECTION
<b> and this is my program</b>
*&---------------------------------------------------------------------*
*& Report ZADOBE
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZADOBE.
DATA : is_customer TYPE scustom.
DATA : it_bookings TYPE ty_bookings.
DATA : iv_image_url TYPE string.
DATA : iv_sending_country TYPE adrc-country.
DATA : it_sums TYPE TABLE OF flprice_t.
DATA : docparams TYPE sfpdocparams.
DATA : formoutput TYPE fpformoutput.
DATA : outputparams TYPE sfpoutputparams.
DATA: FM_NAME TYPE RS38L_FNAM.
PARAMETERS : pa_cusid TYPE scustom-id.
SELECT SINGLE * FROM scustom INTO is_customer
WHERE id = pa_cusid.
SELECT * FROM sbook
INTO CORRESPONDING FIELDS OF TABLE it_bookings
WHERE customid = pa_cusid.
outputparams-nodialog = 'X'.
outputparams-getpdf = 'X'.
*outputparams-adstrlevel = '02'.
CALL FUNCTION 'FP_JOB_OPEN'
CHANGING
ie_outputparams = outputparams
EXCEPTIONS
cancel = 1
usage_error = 2
system_error = 3
internal_error = 4
OTHERS = 5.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
docparams-langu = 'E'.
docparams-country = 'US'.
docparams-fillable = 'X'.
CALL FUNCTION '/1BCDWB/SM00000081'
EXPORTING
/1bcdwb/docparams = docparams
is_customer = is_customer
it_bookings = it_bookings
* IV_IMAGE_URL =
iv_sending_country = 'US'
* IT_SUMS =
IMPORTING
/1bcdwb/formoutput = formoutput
EXCEPTIONS
usage_error = 1
system_error = 2
internal_error = 3
OTHERS = 4
.
IF sy-subrc <> 0.
*MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
*WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'FP_JOB_CLOSE'
* IMPORTING
* E_RESULT =
EXCEPTIONS
usage_error = 1
system_error = 2
internal_error = 3
OTHERS = 4
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.<b>My adobe form is a copy of standard adobe form FP_EXAMPLE_01</b>
Regards
Nanda
‎2007 Dec 14 9:54 AM
As the error message says, you've not properly coded your call to /1BCDWB/SM00000081 You have to have a BOOKINGS parameter.
matt
‎2007 Dec 14 9:54 AM
As the error message says, you've not properly coded your call to /1BCDWB/SM00000081 You have to have a BOOKINGS parameter.
matt
‎2007 Dec 14 10:14 AM
Hi Mathew
Thanks for your reply. I had already made some changes in my coding you can check that below
*&---------------------------------------------------------------------*
*& Report ZADOBE
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZADOBE.
DATA : is_customer TYPE scustom.
DATA : it_bookings TYPE ty_bookings.
DATA : IT_CONNECTIONS TYPE TY_CONNECTIONS.
DATA : iv_image_url TYPE string.
DATA : iv_sending_country TYPE adrc-country.
DATA : it_sums TYPE TABLE OF flprice_t.
DATA : docparams TYPE sfpdocparams.
DATA : formoutput TYPE fpformoutput.
DATA : outputparams TYPE sfpoutputparams.
DATA: FM_NAME TYPE RS38L_FNAM.
PARAMETERS : pa_cusid TYPE scustom-id.
SELECT SINGLE * FROM scustom INTO is_customer
WHERE id = pa_cusid.
SELECT * FROM sbook
INTO CORRESPONDING FIELDS OF TABLE it_bookings
WHERE customid = pa_cusid.
outputparams-nodialog = 'X'.
outputparams-getpdf = 'X'.
*outputparams-adstrlevel = '02'.
CALL FUNCTION 'FP_JOB_OPEN'
CHANGING
ie_outputparams = outputparams
EXCEPTIONS
cancel = 1
usage_error = 2
system_error = 3
internal_error = 4
OTHERS = 5.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
docparams-langu = 'E'.
docparams-country = 'US'.
docparams-fillable = 'X'.
CALL FUNCTION '/1BCDWB/SM00000080'
EXPORTING
/1bcdwb/docparams = docparams
customer = is_customer
bookings = it_bookings
CONNECTIONS = IT_CONNECTIONS
* IV_IMAGE_URL =
iv_sending_country = 'US'
* IT_SUMS =
IMPORTING
/1bcdwb/formoutput = formoutput
EXCEPTIONS
usage_error = 1
system_error = 2
internal_error = 3
OTHERS = 4
.
IF sy-subrc <> 0.
*MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
*WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'FP_JOB_CLOSE'
* IMPORTING
* E_RESULT =
EXCEPTIONS
usage_error = 1
system_error = 2
internal_error = 3
OTHERS = 4
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.<b>Now its going to short dump saying that</b>
Short text
Function parameter "IV_SENDING_COUNTRY" is unknown.
What happened?
Error in the ABAP Application Program
The current ABAP program "ZADOBE" had to be terminated because it has
come across a statement that unfortunately cannot be executed.
Function module "/1BCDWB/SM00000080" was called
with the parameter "IV_SENDING_COUNTRY".
This parameter is not defined.
Error analysis
An exception occurred that is explained in detail below.
The exception, which is assigned to class 'CX_SY_DYN_CALL_PARAM_NOT_FOUND', was
not caught and
therefore caused a runtime error.
The reason for the exception is:
Function module "/1BCDWB/SM00000080" was called
with the parameter "IV_SENDING_COUNTRY".
This parameter is not defined.
Regards
Nanda
‎2007 Dec 14 10:17 AM
Hi
If i comment the line
iv_sending_country = 'US'
then its showing an message as <b>No job started</b>
‎2007 Dec 14 10:54 AM
You can't use a parameter that's not defined - IV_SENDING_COUNTRY is not a parameter of the function module you are calling. The error means precisely what it says. Do you understand function modules at all? I suggest you read the ABAP help for CALL FUNCTION MODULE.
Further, the function module parameters are defined in tx SFP in the "interface" section.
matt
‎2007 Dec 14 11:22 AM
‎2007 Dec 14 10:00 AM
‎2007 Dec 14 10:04 AM
Add a BOOKINGS parameter! Look at the function module through SE37, and see what type is expected. It should give you a hint of what to put in.
matt