Technical Articles
Ariba SLP to MDG Integration & replication troubleshoot
Summary:
This blog post would help you save time and effort and not reinvent the wheel. We have penned down general areas where all SAP-MDG projects struggle with Ariba Integration. If we observe more scenarios will create a version 2.
Below are the frequent and important scenarios faced while working with Ariba SLP <–> MDG.
Scenario 1:
How do we create a Change Requests (diff for create/change) from the payload incoming from Ariba SLP?
Solution 1:
Implement BADI MDG_SE_BP_BULK_REPLRQ_IN, in method INBOUND_PROCESSING write below code:
– Define internal table with type MDG_USER_PROXY_SETTING_T.
– Append Line 1
- FIELD_NAME = “PROXY_PERSISTANCE”.
- FIELD_VALUE = “1”.
– Append Line 2
- FIELD_NAME = “SUPPLIER_CHANGE”
- FIELD_VALUE = <CR Type>
– Call method: CL_MDG_BP_BUPA_SI_IN=>IF_MDG_UPLOAD_PROXY~SETUP_FOR_FILE_UPLOAD ( Exporting IV_INSTANCE = 1 IT_USER_SETTING = <Above Internal Table> )
******************************************************************************************************************
Scenario 2:
Once we enable DRF to Ariba from MDG, how does the Business Partner number flow back to SLP post BP is created in MDG to enable Bi-Sync?
Solution 2:
Implement BADI MDG_SE_BP_BULK_REPLRQ_OUT, in method IF_MDG_BP_BULK_REPLRQ_OUT~OUTBOUND_PROCESSING
Get current Business Partner Id from OUT-BUSINESS_PARTNER-INTERNAL_ID or OUT-BUSINESS_PARTNER-SUPPLIER-INTERNAL_ID.
Ensure both Internal Ids are same (i.e. contains BP number).
Read Key mapping data to get Supplier Id via below APIs
CL_MDG_ID_MATCHING_API_BS=>GET_INSTANCE
IF_MDG_ID_MATCHING_API_BS=>QUERY_OBJECTS
Fill Supplier Id in OUT-BUSINESS_PARTNER-RECEIVER_INTERNAL_ID & OUT-BUSINESS_PARTNER-SUPPLIER-RECEIVER_INTERNAL_ID
Also, ensure UUID fields are in sync.
******************************************************************************************************************
Scenario 3:
Supplier getting replicated from Ariba SLP but CR or BP is not created in SAP-MDG?
Solution 3:
We have observed error logging during creation process is not readable, and we need to debug it’s API related methods and below are the places where setting a breakpoint during replication process would get us error message in general.
If processing is not real time via service and works based on batch job of Pull program (/ARBA/SM_BUSINESS_PARTNER_PULL) then place additional breakpoint in this program to check if the process is pulling payload data from Ariba or not.
For all scenarios, below methods help a lot to gather error message:
- CL_MDG_BP_BUPA_SI_IN=>DO_SAVE
- CL_MDG_BP_BUPA_SI_IN=>DO_SEND_CONFIRMATION
NOTE: these are the frequent places where I’ve encountered error, incase it’s not appearing here more detailed debugging would be needed.
******************************************************************************************************************
Putting down few links from which I felt are quite enlightening from other bloggers/experts:
- Experience Seamless Supplier Integration with SAP Ariba Powered By Master Data Governance | SAP Blogs
- SAP MDG-S Integration with Ariba-SLP | SAP Blogs
- Integration of SAP Master Data Governance (MDG) with SAP Ariba Supplier and Lifecycle Performance (SLP) | SAP Blogs
Please feel free to add comments or more scenarios & solutions herein.
Hi Aditya Bajoria ,
Very informative blogpost.
Titu Dat , i remember you were asking something similar earlier. Hope this blogpost will be helpful for you.
Regards
Senthil.
Nice post.
You might want to add which version of MDG was Ariba SLP integrated with. The polling program (/ARBA/SM_BUSINESS_PARTNER_PULL) is no more required with CIG add-on. Until MDG 8.0, it was scheduled as a background job to read the inbound message queues when the Supplier was registered in Ariba SLP.
Note: There's another class CL_MDG_BP_2_STA which you might want to check especially method CREATE_CR. Quite often users ask about the Change Request description for Ariba SLP vendors. You'll find the CR description hardcoded in the aforesaid method.
Keep sharing!
Nice point Asim.
Yes, CR description change, is a very common ask, and unfortunately not possible with any enhancement within the classes SAP has written,, however if we're using Rule Based workflow may be service BADI can be used to change CR data post creation, or any other BADI for that matter.
I have written for MDG9.0 where CIG wasn't involved, however even if it's via CIG I believe same code is hit.
Regards,
Aditya
Thanks Aditya for the blog,
indeed very informative. Small query. Can I use the same BADIs when I'm using Consolidation to trigger Change Request?
Regards
Vaibhav