‎2009 Dec 03 9:30 PM
IW31/32 has been enhanced to call a functionmodule
CALL FUNCTION 'Z_RFC_STATUS_CHANGE' DESTINATION v_dest
the v_dest has a value of BIZTALK.
one of the parameters being sent is a status (text field)
I added a new status code to be sent and the Functionmodule Fails
I try debugging with internal and external breakpoints and I never manage to get to debug as the module executes.
how can I debug this FM so I can determine what causes the failure?
Any help will be appreciated.
‎2009 Dec 03 9:35 PM
Hi,
May be the function module is called in Update task.
If you are in ECC, While in debug mode, go to "Settings -> Display/Change Debugger settings "
Here check the "Update Debugging" and hit OK.
Now all the function modules that is called in Update task can be debugged.
Happy Debugging.
Regards,
Subramanian
‎2009 Dec 03 9:35 PM
Hi,
May be the function module is called in Update task.
If you are in ECC, While in debug mode, go to "Settings -> Display/Change Debugger settings "
Here check the "Update Debugging" and hit OK.
Now all the function modules that is called in Update task can be debugged.
Happy Debugging.
Regards,
Subramanian
‎2009 Dec 03 9:52 PM
I have tried the solution. I still get an error without ever seeing one line of code..
When I send a status code that does not cause the error, the debugger just steps over the funtioncal. I have tried the debuging with my user ID as well as the BIZTALK USER ID.
I have checked SM59 to see If I can find a different user ID to debug against.
‎2009 Dec 03 10:21 PM
There is nothing for you to 'step-into'. Your .Net developer should be able to catch the call and debug the code on his/her side in the Biztalk code if that's what your intention is. From the SAP-side, you can analyze that the call parameters are correct before the call and then receive the result of the call and look at the response. You can also turn on a trace for the RFC destination in SM59.
What type of error are you referring to? Is it an update that doesn't happen on the Biztalk side or is it an exception that gets thrown?
‎2009 Dec 03 10:24 PM
Thank you,
The FM being called is an SAP FM. So I should be able to debug
‎2009 Dec 03 10:32 PM
Hi,
Since the FM is in an external system you cannot debug it in the calling system. If you want to know what is happening inside the FM then note down the values of the parameters being passed to the FM. Then log in to the target system and create a test data for the FM using the values recorded earlier. And you can execute it in debug mode.
Regards
Prasenjit
‎2009 Dec 04 2:45 PM
Thank you,
The FM being called is an SAP FM. So I should be able to debug
No, you can't. The function is only a shell. You are actually executing a program in another system (Biztalk) and receiving a response. Check out the help files on remote function calls...
‎2009 Dec 04 2:51 PM
Ah, now I get it. When calling a FM with a destination, I am only sending parameters to the external app. I added the new status code to the filters in the Biztalk orchestration and the error went away. Thanks for helping me understand what really happens
‎2009 Dec 04 2:54 PM
I agree with Brad
As the call is made in an external system it can be debugged & analysed by the developer on the external system. He will be able to tell you exactly why the RFC fails.
BR,
Suhas