Calling a BAPI in the SAP S/4 HANA Public Cloud from SAP Process Orchestration
In the previous blog post of this series I showed how to call a whitelisted BAPI in the SAP S/4 HANA Cloud in the most simple of fashions. This blog post describes how to do the same from SAP Process Orchestration:
Calling a BAPI in the Cloud from SAP Process Orchestration
In the very first blog post it is described which restrictions apply to BAPI integration scenarios involving SAP S/4HANA Cloud systems with On-Premise system. To put it simple: SAP-to-SAP scenarios are supported in the boundaries of SAP Note 2447593. Since SAP Process Orchestration meets this prerequisite, this test case describes a valid scenario. In the example the “OnPrem System” connected to SAP PO is PostMan but could also be another application. As long as the communication to the SAP S/4 HANA Cloud goes via SAP PO it’s ok.
This Test Case has been set up by Hoang Vu. He also wrote this chapter and authorized my to use it for the blog. A nice side note: 20 years ago I learned a lot about RFC, ALE, IDOCs, EDI etc from Hoang’s father.
What I used
- A functional SAP Cloud Connector Instance + user with administrative privileges
- An SAP S/4 HANA Public Cloud Tenant + user with administrative privileges
- SAP Process Orchestration + development user
What I did
- Prepare the SAP S/4 HANA Public Cloud System (as described in the first blog post)
- Set up an RFC Service Channel in the SAP Cloud Connector (as described in the second blog post)
- Do the settings in SAP Process Orchestration
- Run a test from PostMan
Settings in the SAP Process Orchestration
To call the BAPI from a SAP PO system you need to do following configuration steps:
Create integration objects in Enterprise Service Repository
You need to import the BAPI structure into your software component version using the import functionality in SAP PO:
Then you can create an outbound and an inbound service interface with the RFC structure:
For an initial test you can create a 1-to-1 message mapping and then create an operation mapping with the message mapping including the outbound service interface on the left side and the inbound service interface on the right side.
Create integration configuration in Integration Builder
Firstly you need to create the relevant communication channels. For our use case we will create a SOAP sender channel first:
Then we create a receiver RFC channel with the respective information of the connection to the SAP Cloud Connector. The information in the channel is very similar to the information that we maintained in the SM59 destination in the ERP system:
Based on these communication channels an integrated configuration will be created:
In the integrated configuration, you can download the WSDL under Integration Configuration -> Display WSDL -> Save:
Test interface using PostMan or another SOAP Tool
You can use this WSDL and import it into your SOAP Tool to call the interface. The URL is already maintained in the WSDL, which means that if you import the WSDL into your SOAP tool the URL will automatically be filled out. All you need to do is provide the equipment information and your user password of your SAP PO system:
If you set it up correctly you should receive a HTTP 200 response including the equipment data from the S/4HANA Cloud system:
What I learned from this test case
With a running SAP Cloud Connector the BAPI call to the SAP S/4 HANA Cloud is just as simple as to an SAP ERP on-premise. So if you have a running SAP PO and SAP S/4 HANA Cloud comes into your landscape what you need to do is setting up a SAP Cloud Connector next to it and then you are fine to go (with a little bit of config)!
Please let me know if the description was helpful and you were able to set up the same test case. Any feedback how to improve this blog post is welcomed! Please put it in the comment section.
In the next blog post I will describe how I called the same BAPI from a stand-alone Java program. The pattern of the call is the same, meaning no additional settings in the SAP S/4 HANA Cloud System or the SAP Cloud Connector are required. It’s only a matter of getting the Program to work. So stay faithful until the next part of the series!