Technical Articles
C4C Account Owner update from SAP MDG/S4 HANA
Business Use Case: Prospects are created in our SAP Sales Cloud solution, and the Account Owner is automatically determined based on the employee who is creating the Prospect. The prospect is then promoted to SAP MDG for general validation and approval. The account can be enriched and the account owner too can be updated in MDG system and we want all the enriched data to come back and update the account in the Sales Cloud solution including the updated account owner.
System Architecture and Issues
We used the latest webservices for the integration between PI and MDG system.Since we used the new webservice from MDG instead of IDocs, it was not updating the accout owner properly in C4C. SAP confirmed that this would work only if the party role “Employee Responsible – Sales” is defined as Sales Data relevant, meaning it could work for cases where multiple sales areas are assigned to Accounts. But it would not work for cases similar to our scenario where in we do not extend sales areas in accounts (because of historical and legacy system restrictions). So we had to improvise and find another alternative solution to fix this issue.
Some SAP reference knowledge articles
https://apps.support.sap.com/sap/support/knowledge/public/en/2569691
https://apps.support.sap.com/sap/support/knowledge/public/en/2615607
Solution Proposal
To overcome the issue with the account owner update from MDG, we implemented another service “BPRelationshipReplicationIn” just to update the account owner. The standard “BPReplicationIn” service is used to update all the other general account fields, and the ““BPRelationshipReplicationIn” service is just used to update the account owner coming from MDG. This service was able to update the C4C account owner independent of the sales area, meaning the account owner field can be directly updated for accounts with single sales area data assignment too.
I have specified the sample “BPRelationshipReplicationIn” inbound payload for reference below.
Whenever a customer was enriched & updated in MDG system, C4C always received two inbound interfaces. “BPReplicationIn” updating all the generic account fields & “BPRelationshipReplicationIn” updating just the account owner.
This is the solution for the below question posted in this community last year.
https://answers.sap.com/questions/12852926/c4c-account-owner-not-getting-updated-from-mdg.html
Conclusion: The “BPRelationshipReplicationIn” service can be used to update the account owner in special cases if the accounts are not extended to multiple sales areas in the C4C solution. This could work for other external integrations like S4 HANA too.
Hi Siraj,
Thanks for this BLOG. I have one simple question since we are just starting out with C4C-MW-MDG -ERP integration.
How do you trigger BusinessPartnerSUITEBulkReplicateRequest to MDG is there button like transfer or something like that?
Kindly let me kno.
BR
Dhruvin
Hi Dhruvin,
When an account is converted from "Prospect" role to "Sold-To-Party", the interface is triggered from C4C. Basically setting the prospect checkbox to "false" converts the account role from prospect to Sold-To. This event triggers the outbound interface from C4C.
Regards,
Siraj
Hi Siraj,
So user manually have to set this, Indicator to “false”? but what happens if the Prospect to customer conversion fails in System?
And how can we automate this? I have activated BusinessPartnerReplicationSelfInitiatedOut and now all the BP are triggered for Outgoing which are saved.
In our case we only want to trigger this for Prospect to Customer.
Thanks a lot for your answer. Also do we have any process documentation for this?
Br
Dhruvin
Hi Dhruvin,
There is a business scoping question to stop the replication of prospects to an external/SAP systems. Once you enable this scoping question, only the accounts which are not prospects are replicated.
Also please check the below blog, where in you can specify certain filters based on communication arrangements.
https://blogs.sap.com/2019/11/18/1911-feature-flexible-prospect-blocking-to-other-integrated-systems/
Regards,
Siraj
Hi Siraj,
Thats a very good point, However in my case I would like to “Send” Prospects, So that MDG can enrich it and approve it to be created in ERP.
once that is done, I would like MDG to change prospect from Customer.
Is that possible with a Badi or something like that?
BR
Dhruvin
Hi Dhruvin,
The filter BADI (CheckBusinessObjectInstanceProcessIntegrationRelevance ) in SAP Cloud for Customer provides the capability to implement a customer specific logic to determine the business object instances relevant for replication.
Regards,
Siraj
Hi Siraj,
Thanks for this, Actually I just now checked this badi but still have some doubts i think which can be solved only by a POC.
So in our We Replicate BP from C4C to ERP and we want to filter based on some logic and badi is perfect for that.
But we dont want any logic to be used when we replicate BP to our SMC system, so based on Communication system we would like to add logic. Which I am not sure would be possible for not.
Do you have any idea for that?
Thanks a lot for your help so far.
Br
Dhruvin