Hello experts,
I have a requirement to build a fiori application where user will upload excel file containing purchase orders and we need to post supplier confirmation after some initial validations.
I have done one POC to consume api API_SUPPLIERCONFIRMATION to post supplier confirmation in RAP action and it is working fine. I wanted to know whether it is a recommended approach to consume released api from ABAP as it introduces a http overhead? If we cannot find any released BO then can we go with calling released api from ABAP?
Thank you in advance for your support.
Imteyaz
Request clarification before answering.
Hello @md_alam
For an ABAP Cloud/RAP application, the recommended approach is to use a released API/business object whenever available instead of calling the OData API via HTTP from ABAP.
Use a released RAP BO/API if SAP provides one for Supplier Confirmation.
Calling API_SUPPLIERCONFIRMATION via HTTP from ABAP works but introduces network/HTTP overhead, authentication handling, and additional error management.
If no released BO or API is available in ABAP Cloud, consuming the released OData API (API_SUPPLIERCONFIRMATION) is the supported fallback approach.
For mass processing from Excel uploads, validate the data first and then process confirmations in batches to optimize performance.
Recommendation,
Check whether a released BO/API exists for Supplier Confirmation in your S/4HANA release.
If not available, use the released API_SUPPLIERCONFIRMATION OData service from RAP/ABAP.
The HTTP overhead is generally acceptable unless you are processing very high volumes.
Thanks,
Sravan
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Imteyaz,
Short answer: for supplier confirmations there is no released RAP BO you could call with EML, so the released API is the way, and yes, you pay the HTTP round trip. I checked the release states on S/4HANA 2023 and 2025, and both look the same.
What the release information says (table ARS_W_API_STATE, in both releases)
So, is it a good approach?
When there is no released BO, the released remote API is the way that keeps you on released objects only. The other way out, EML on R_SupplierConfirmationTP from classic ABAP, would work against an object without any contract, and an upgrade can change it without notice. I would not go there for something that posts documents.
What I would do in your case: keep all the validations on the C1 views (I_POSupplierConfirmationAPI01 and the purchase order views), and call the API only for the write, through the remote proxy and a communication arrangement. Then the HTTP part is only the posting, not the reads.
What I did not test: the API call itself through the remote proxy, how long it takes per confirmation, and S/4HANA Cloud Public Edition, where the list of released objects can be different. If your system is a newer release, check the release state of R_SupplierConfirmationTP there, because SAP keeps releasing BOs.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
| User | Count |
|---|---|
| 8 | |
| 7 | |
| 6 | |
| 4 | |
| 4 | |
| 4 | |
| 3 | |
| 3 | |
| 3 | |
| 2 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.