Below work demonstrates Data flow from IBP to BW4HANA using CPI-PI. In this we post statistical data from IBP to BW4HANA.
We handle this in two parts:
Step 1: SAP IBP to CPI-DS: Blog by Akash can be referred for this
Blog Link https://blogs.sap.com/2020/06/21/ibp-to-cpi-using-cpi-ds/
Step 2: Data flow from SAP CPI-DS to SAP CPI to SAP BW4HANA
Below explanation helps configure flow for Step2.
Wherein we trigger webservice using soap from SAP CPI to rest based payload to BW4HANA
- CPI-DS and CPI-PI & CPI-PI and BWHANA connections are done.
- Respective users should have enough authorisations to post data in respective application.
- Cloud Connector configurations is done for accessing BW4HANA from SAP CPI-PI.
- Make sure Data Source created in BW4HANA is write enabled. (refer to the Blog in references)
With CPI-DS as a sender and BW4HANA as a receiver. We use soap at sender and HTTP at receiver to post data into BW4HANA.
- Create an iflow, modifying it to SOAP sender ,
- Configure Sender Soap Adapter for webservice you want to use.
- Create a mapping between webservice and Target structure as defined in Data Source in BW4HANA.
- Create Content Modifier (Fetch X-CSRF Token)
- Create http receiver that pushes Rest payload to receiver,
- Content modifier 1 configuration:
- For an iflow, Runtime Configuration can be set to “On Integration Flow” for Iflow level HTTP Session re-use.
- Use Soap UI or Postman To trigger (for testing)- Maintain Header
- Before triggering, you can change Log level message on “Trace” and check the below that token fetched previous process step is Successfully send in request to receiver.
Step involved in BW4HANA
Excellent blog by Gordon can be referred for BW4HANA configurations as well.
Data is posted in BW4HANA and same can be checked. Below are some troubleshooting tips for reference.
*Bonus: Troubleshooting tips
- Token Validation Failed: Response from token has to be handled in Cookie defined in Iflow .Below blog can be referred. Where in you need to explicitly may have to handle cookie using groovy script in case HTTP session re-use feature isn’t working.
- HTTP 403 error: Check if user has enough authorisation and Credential created for BW4HANA in CPI is having enough authorisation.
I thank colleagues -Akash, Ankit and Harish for their contribution and help.
Blogs referenced above has been extremely helpful.