Step by step procedure to implement SOAP to RFC synchronous scenario in PI/PO

In this SOAP to RFC Synchronous scenario, we are going to see how the synchronous message flow works in SAP PI/PO.

There has been always a challenge in the integration of the third-party system with SAP ECC due to different third-party platforms and various connection protocols with lots of security issues. Function modules are the ones that are widely used in SAP ECC to carry out different functions. By exposing these functional modules remotely via web services to expose SAP APIs.

This document will explain the SOAP to the RFC communication scenario using SAP PI. At the sender side, the SOAP adapter is used and the receiver side RFC adapter is used to get the record from the SAP ECC via an RFC. A standard RFC function Module BAPI_GET_USER_DETAIL is used to get the Basic SAP user details from ECC and display in web service.

The third party and other SAP applications can access RFCs in a multiple ways.

  • Exposing RFC as a web-service using SAP Process Integration (PI/PO)
  • Direct ALE connection between other SAP systems in the same landscape.
  • Exposing RFC as a web service using transaction SE37(Utilities)

In this article, we will see the detail on how to expose an RFC as a web service using SAP PI/PO environment. This would be a SOAP to RFC synchronous interface.

The advantage of using SAP PI in this purpose is you would have comprehensive monitoring capabilities than other methods. SAP PI has provided detail message monitoring, message logging, and error handling capabilities which can be leveraged for any scenario.

The disadvantage, on the other hand, is that an additional effort needs to be maintained for creating the PI/PO part of the development.

Block Diagram of SOAP to RFC Scenario

This example third party sender uses webservice call to connect to SAP PI/PO via SOAP adaptor and PI converts that call to RFC call and connects to ECC and executes function module in ECC and returns data back to PI/PO and PI/PO intern return that message back to calling webservice.

Let us Begin,

Step1. Using SAP Tcode-SE37 access the RFC module and make sure that the function module is “Remote enabled”. – SE37

SAP TCode-Se37 to Access RFC function Module
Remote Enabled Function Module

Step-2. Import RFC to SAP PI/PO-ESR

Right-click on RFC under imported objects under software component and provide application server/system number/user credential. Then find the RFC from the list.

Step-3. Define Service Interface for SOAP adapter (Outbound-Synchronous)

Step-4. Define Message Mapping for both Request and Response message.

Request from SOAP to RFC
Response from RFC to SOAP

 Step-5. Create operation mapping for SOAP to RFC for both Request and Response.

Operation Mapping for SOAP Request to RFC Request
Operation mapping from RFC Response to SOAP Response

Step-6. Create sender SOAP communication channel(ID)

Step-7. Create sender RFC communication channel(ID)

Step-8. Create integration scenario(ID)

Step-9. Download WSDL

Step-10. Import the WSDL in SoapUI. Send the Message

Thanks for reading the blog. Please go through the below link to understand better.

Leave a Reply

Your email address will not be published.