‎2007 Apr 27 8:50 AM
Hi,
1. when the FM was created, it was having 5 import parameters. and it is called inside a BADI
2. later one import parameter(last one) has been removed but the correction at place where it is called is not done.
3. I have the same BADI, same FM and same code on two servers.
4. On Server A it is working fine without giving any dump.
5. while on server B the same code is giving error as follows:-
CALL_FUNCTION_PARM_UNKNOWN
CX_SY_DYN_CALL_PARAM_NOT_FOUND
6. On server A, to test i have written a temporary program which call the Fm,
here also now i am getting the same dump.
My question:
Is there any setting in BADI or some where else to not to considered the parameter(specially last one) if it is not defination/declaratuion of FM?
Please let me know the approach why the same thing is giving the error on server B but not the server A.
useful answer will, rewarded with point.
‎2007 Apr 27 8:52 AM
check if the removed parameter was optional....in such a case it is possible that the parameter was not passed at all.
check the code in the server where it is running properly....and see how the call is made....if possible...paste the call here and give details about the respective parameters.
regards,
Priyank
‎2007 Apr 27 8:52 AM
There is an optional setting for all the parameters of a Function Module.
‎2007 Apr 27 8:52 AM
check if the removed parameter was optional....in such a case it is possible that the parameter was not passed at all.
check the code in the server where it is running properly....and see how the call is made....if possible...paste the call here and give details about the respective parameters.
regards,
Priyank
‎2007 Apr 27 9:51 AM
calls at both the server are same.the second server is replica of first one. but in the server where error is coming , many other program developments were made.
‎2007 Apr 27 8:53 AM
Hi,
Please tick the OPTIONAL check box against the field which is not required in SERVER B.
Best regards,
Prashant
‎2007 Apr 27 9:21 AM
Hi,.
The parameter is already removed as not been used inside FM.
So ticking optional attribute did not comes in to picture.
My question is:-
Is there any setting which making to give dump on Server B but on Server even though all the code is same?
‎2007 Apr 27 9:52 AM
can you give details about the FM interface and also paste the code for calling this FM where it is giving you a dump?
regards,
Priyank
‎2007 Apr 27 9:26 AM
Hi,
You need to comment the parameter in the program where the FM is called.
That is the only solution to avoid the dump.
Best regards,
Prashant
‎2007 Apr 28 12:04 PM
The the dump in server B is coming due to Unicode.
On server A the unicode was disabled while Server is unicode enabled.
The reason is note number 578070.
Summary
Symptom
As of Kernel Release 610, the CALL_FUNCTION_PARM_UNKNOWN runtime error occurs where no runtime error occurred previously.
Reason and Prerequisites
Up to now, "excess" parameters were simply ignored for function module calls ("excess" parameters are parameters that are not defined in the interface of the function module or are defined in another category (IMPORTING/EXPORTING/CHANGING/TABLE)).
This behavior caused problems time and time again because a parameter name that was inadvertently written incorrectly resulted in the program not running as intended; the error was not reported by the runtime error even though it was evident.
The behavior was therefore changed in such a way that excess parameters now result in the CALL_FUNCTION_PARM_UNKNOWN runtime error during "static" function calls (that is, if the function name is specified as a literal).
The check is only performed with "normal" function calls, that is, not with update calls or remote calls.
Since this is incompatible, this intensified test is only performed in conjunction with Unicode checks, that is, only if the calling program is Unicode-enabled.
If the function name is specified via a variable, this check is not performed because this was frequently used to call a number of different function modules with the quantity of all possible parameters (as a weak forerunner to the function module call with a dynamic parameter quantity).
Solution
The error must be eliminated via a change in the ABAP program.