Remote ABAP debugging.
When working on Integration tools like Business Connector/.Net connectors/XI, we use RFC call to process in the backend SAP R/3 system. Because when we call any SAP RFC function module from any integration tool, it will be processed on any available application server in the backend, where a user breakpoint cannot be triggered to debug the ABAP code in the backend system. The situation becomes worst to the developers/testers when they want to test the scenarios like HTTP-XI-RFC, HTTP-XI-PROXY, and FTP-XI-RFC so on. But we have a simple solution to debug the ABAP code when we are working on Remote function calls.
PRE-REQUISITE:
- The backend SAP system should be ECC 6.0 with latest patch updates.
- It is assumed that user has developed a simple scenario HTTP-XI-PROXY/HTTP-XI-RFC or any similar scenario where XI makes a RFC or Proxy call to SAP R/3 system.
- When developing the scenario, in the integration directory configuration, while creating the Receiver communication channel with RFC adapter or Proxy Adapter user has to use own SAP R/3 user id / password as authentication parameters with which user wants to login to the SAP system to debug the code. i.e the same user id has to use to login the sap system to set the break-point in the ABAP Code.
SOLUTION:
Log in to the sap system where RFC function module or Proxy class implemented.
Open the Function module/ Proxy class and set a break-point. It is not mandatory that break-point has to set only at the initial line of the code; user can set anywhere in the entire code, which will be executed on RFC call.
Execute the transaction code “SRDEBUG” (Note: this tcode is available only in latest ECC 6.0 system)
Click on the button Activate Debugging. A pop-up screen will be opened. Fill the User-ID with which break-point has been set. (The same user-id should be used as authentication data in the XI while creating RFC communication channel). Select the radio buttons “all Appl. Servers” and “External breakpoints already set”. Click on OK.
Another pop-up will be opened with a message “End debugging?” Leave the pop-up as it is. (Don’t close the transaction).
Now start sending a message from HTTP client. When the message arrives to SAP R/3 system, a debug session will be started from the point where user kept the break-point in the step-2. From this point user can start debugging the code as usual.