Enterprise Resource Planning Blogs by SAP
Get insights and updates about cloud ERP and RISE with SAP, SAP S/4HANA and SAP S/4HANA Cloud, and more enterprise management capabilities with SAP blog posts.
cancel
Showing results for 
Search instead for 
Did you mean: 
CHRNIEMANN
Advisor
Advisor

Introduction and Scenario


You have set up your business partner scenario in your S/4HANA system? Now you want to send your S/4HANA business partners to another S/4HANA system?

This blog provides you the steps for a basic scenario: sending your business partner master data from one S/4HANA on premise system to another with some snapshots. Being a member of the business partner team of the S/4HANA RIG, I want to share this with you.

Let´s assume business partners (BP’s) like this BP customer:


Which technology should you use for the replication? Web services or IDocs?

The answer is clearly given in note 2417298 - Integration of Business Partner with Customer and Supplier Roles: the web service technology of Enterprise Service Oriented Architecture (SOA) is to be used, if the system has business partners. The IDocs DEBMAS and CREMAS are not recommended for data integration between S/4HANA systems. For business partner replication, the web service technology is also used by S/4HANA Master Data Governance (MDG) and SAP Cloud Platform Master Data for Business Partner. Additonally, there are odata services for business partner master data available, but their usage is not scope of this blog.

Detailed reference information about the business partner web service definitions with all fields can be found here.

So, what set up steps needs to be done? Don´t get confused, when MDG is mentioned in linked documentation sometimes. It´s, because technically it´s part of S/4HANA, but you don´t need to set up the complete MDG for this.

There are two major steps:

  1. SOA manager basics on sender and receiver
    First you need to do the basic configuration in the SOAMANAGER (SOA Manager) transaction. It starts the SOA Manager web application. I will describe the steps below. For your reference, here´s also the link to help.sap.com.

  2. Configuration in Data Replication Framework (DRF)
    The Data Replication Framework enables you to replicate data from a source system to target systems. I will describe how to configure it for this sceanrio below. For your reference, here´s also the link to help.sap.com.


Configuring SOA Manager for Business Partner


Before you set up the data replication framework (DRF), you need to configure the SOA Manager accordingly in receiver and provider system.

Preparation


Do these steps as preparation in both receiver and provider system;

  1. Get administrative authorizations for the SOA manager in S/4HANA: SAP_BC_WEBSERVICE_ADMIN_TEC and authorization for transactions SU01, SUIM, PFCG.

  2. Create a special service user in transaction SU01 with authorization role SAP_BC_WEBSERVICE_ADMIN_TEC.

  3. Activate special business functions from SOA and business partner.
    Run this activity in the customizing: SAP Customizing Implementation Guide > Activate Business Functions. Active business function FND_SOA_REUSE_1.

  4. Activate point-to-point communication for enterprise services
    Run this activity in the customizing: SAP Customizing Implementation Guide > Cross-Application Components > Processes and Tools for Enterprise Applications > Enterprise Services > Point-to-Point Enablement for Asynchronous Enterprise Services > Activate Support for Point2Point Communication.

  5. Connect to the system landscape directory or implement a BAdI for local system ID determination as described in the IMG doucmentation here: Cross-Application Components > Processes and Tools for Enterprise Applications > Master Data Governance > General Settings > Data Replication > Define Custom Settings for Data Replication > Define Technical Settings > BAdI: Determination of Local System Name

  6. Configure the web service runtime as described in note 1043195 - Configuration of Web service runtime

  7. Activate the error and conflict handler (optional, recommended) in IMG Cross-Application Components > General Application FunctionsError and Conflict HandlerActivate Error and Conflict Handler.


CONFIGURE the SOA MANAGER


Do these steps as preparation to configure the SOA Manager in both receiver and provider system;

  1. Create a point-to-point communication profile with same name in provider and receiver.

  2. Configure the client setting.

    Go to Technical Administration > SAP Client Settings in the SOA Manager, provide an organization name and either get the business system from System Landscape Directory (if you use it) or if you have used the BAdI, provide local system ID as defined in the BAdI MDG_IDM_GET_LCL_SYSTEM.
    Then enter the own business system ID. You can get the own business system ID from transaction SLDCHECK and check in the transactions list report the section “Calling function LCR_GET_OWN_BUSINESS_SYSTEM”:



  3. Configure a provider system for the business scenario configuration.

    Create the provider system on the Technical Administration tab of the SOA Manager.
    On the General tab provide the name of the business system ID of the counterpart system, a description and as profile name enter the profile name from Step 1!




    Enter further details on the next step “Enter connection settings for searching web services and credentials to access service metadata like WSDL and WSIL”. Use the primary service registry settings and the WSIL usage. Fill these fields

    • SLD Identifier
      Enter it in this format <client>.SystemName.<XYZ>.SystemNumber.<Installation Number>.SystemHome.<Host>.
      SystemNumber you find under System>Status>SAP System Data>Installation Number and SystemHome under System>Status>Database Data>Host.

    • Access URL for WSIL and Logon Information
      Format: https://<hostname>:<port>/sap/bc/srt/wsil?sap-client=<client>;
      Host name and port you get from transaction SMICM (ICM Monitor), Goto > Services

    • User and Password for WSDL and WSIL. You can take the service user you created in the backend system.

    • Create Business Application ID
      Enter an application name, description and the business application ID from the counterpart system. It can be found under SOAMANAGER > Technical Administration > SAP Client Settings in the counterpart system. Press Finish.The Identifiable Business Context Reference (IBC reference) for the counterpart system is generated automatically and can be checked in SOAMANAGER > Service Administration > Identifiable Business Context Reference.



  4. Edit logon data for business scenario
    After the backend users were created already earlier, please create appropriate Logon Data entries within both provider and receiver system locally. This can be done in the SOAMANAGER > Service Administration > Logon Data Management > Maintenance

  5. Assign Logon Data to Provider Identifiable Business Context (IBC) Reference
    Now the just created Logon Data have to be assigned to the IBC References.
    Press Next, assign the logon data and press Finish.

  6. Create Integration Scenario Configuration for Point-to-Point Communication using Service Group.With this, you select the business partner services for the communication. In SOAMANAGER go to Service Administration > Local Integration Scenario Configuration and create an integration scenario configuration.
    Add these Service Definitions:

    • BUSINESSPARTNERSUITEBULKREPLIC

    • BUSINESSPARTNERSUITEBULKREPLI1

    • BUSINESSPARTNERRELATIONSHIPSUI

    • BUSINESSPARTNERRELATIONSHIPSU1



    For all assign the above created profile MDG and press Next.


    Then Select service groups and provider IBC reference by adding service group MDG_BS_SUPPLIERREPLICATEREQ and MDG_BS_SUPPLIERREPLICATECONF.



    To all service groups assign the before created IBC Reference.



    Check the Logon Data Assignment and Press Finish.

    Do not activate the business scenario immediately because first the business scenario in the counterpart system needs to be defined.

    After creation of the integration scenario in the counterpart system, activate the scenario and process pending tasks in both systems.

  7. Set logical port as default
    For setting the logical port, in SOAMANAGER go Service Administration > Web Service ConfigurationSearch Object Type: All and Object Name:BusinessPartnerSUITEBulkReplicateRequest_Out

    Click on the BusinessPartnerSUITEBulkReplicateRequest_Out, select the logical port and press Set Log.Port Default.




Congratulations, you´ve set the SOA Manager! Most of the work is done. Now you only need to configure the Data Replication Framework.

Configuration in Data Replication Framework (DRF)



  1. Define technical settings for business system

    • For settings in the DRF, in transaction DRFIMG, go to Data Replication > Define Custom Settings for Data Replication > Define Technical Settings > Define Technical Settings for Business Systems

    • Create a new entry with the business system as you entered as provider system in SOA Manager under Technical Administration > Provider Systems and a logical system. As Business Object Type add 986 (Business Partner including Relationships) with Output Mode Object-Dependent Default with System Filter checked. As communication channel choose Replication via Services, further values as shown in snapshot.



  2. Define a replication model

    • In transaction DRFIMG, go to Data Replication > Define Custom Settings for Data Replication > Define Replication Model.

    • Create a new Replication Model entry, Assign Outbound Implementation 986_3 Outbound Impl. for BP/REL via Services, Communication Channel Replication via Services and Filter time Filter After Change Analysis. For the new Assignment line as next step create a new assignment line and enter the target business system for the replication model. Log Days can be set optional.

    • Furthermore, set outbound parameters in Assign Outbound Parameter with Outbound Parameter “PACK_SIZE_BULK” for example with value 50 or 100.

    • Save Active your replication model in Data Replication > Define Custom Settings for Data Replication > Define Replication Model.




Starting the Replication


Finally, you can start the replication via transaction DRFOUT. Select the previously created replication model and the respective outbound implementation. You get several options for the replication.


With the button Manual Replication Filter Criteria, you get to the filter screen. On the screen you can enter several filters, after done press Save. Back on the main screen, press Execute, and you trigger the data replication manually.


After e.g. a manual start you get the log:


Further detailed monitoring is possible via transaction SRT_MONI Web Service Utilities: Message Monitor.



Conclusion


This guidance should give a good starting point for business partner replication, especially if you haven´t worked with the SOA Manager and DRF before.

As this is just a starter, I bet there are many questions coming up as you evolve your scenario.

For questions please check these helpful links:

Brought to you by the SAP S/4HANA RIG and Customer Care team.
32 Comments
vpawate
Explorer
0 Kudos
Very much needed blog ! .. Thanks for putting this together, Christian !

When setting up filters DRF  - is there an option to set up a filter based on the 'Target System' selected in the Change Request UIBB ?

This becomes necessary when MDG is governing only general data (org level filters like company code/p.org are not applicable)  and when the user wants replication only to a particular target ERP system.
reza_nell2
Discoverer
0 Kudos
Hi,

it's a ver good guidance for setting of Koa-Manager. Just a remark, you're saying in step 7 : "Set logical port as default". But this is not necessary, specially if you use your source system as a hub.

What I'm interested in, is the setting for change pointer to replicate only the changes. If you could explain how to set it, it would be great.

Thanks an Regards

Ray
0 Kudos
Hello Vinay,

Do you see any drawbacks in creating a different model for a particular Target ERP System where only subset of data to be replicated. You can set up a Business model and add filters to them in DRFF.
former_member711961
Discoverer
0 Kudos
Hello.

The blog is very good and is very detailed, the information shared is very interesting. Thanks.

I have a question: ¿Is it possible set any field obligatory in the filter criteria on transaction DRFOUT?
sven_hertig1
Participant
0 Kudos
Hello Christian,

currently I set up the SAP MDG (incl. MDC) on S/4HANA. For the replication process SAP recommends to use SOA and not ALE because of the suppported business partner attributes. Can you share a gap list or a useful link of these attributes where I can check the gap to generate a decision for our customer which communication channel should be used?

Thanks and

Best regards,

Sven
former_member630319
Discoverer
0 Kudos
Hi Christian,

Is there an option to remove the company code segment from the replication in the filters.
0 Kudos
Hi Christian,

thanks for your detailed explanation! really useful.

I have one small question, if we would like to replicate data from S/4HANA to ERP system, will this SOA webservice methods still be applicable? because i see the SAP note and your post, it is only applicable for BP data replicated from S/4HANA to S/4HANA.
former_member713405
Discoverer
0 Kudos
Thank you Christian, very good blog. Would you have such information for Master Recipe Replicate Outbound scenario? We have a scenario where we are trying to send recipe information from S/4HANA to MII through SOA services.

Looking at your blog, I have setup the required SOA services. However, I couldn't find service groups related to Master Recipe replicate and hence left it blank.

Any inputs here?
rivert_torres
Explorer
0 Kudos
Could you comment, any idea how to send your S/4HANA business partners to another No S/4HANA?
former_member189962
Active Participant
0 Kudos
By non-S/4HANA I assume that you mean SAP ECC system. You can still follow the same process given that the Business Partner SOA services available and Business Partner is active in your SAP ECC system
0 Kudos
Thanks for the useful Blog. I have one question; can we trigger SOA service with specific time intervals. E.g. one of the client is looking to trigger SOA replication only when we chose REPLICATE option in NWBC business partner page. But client do not want to replicate the data immediately after Final check approval of given Business partners(in create or change).
marcpara
Explorer
0 Kudos
Hi christian.niemann,

Thank you for this blog, it's very useful.

We have the following scenario: we keep an ECC system for the HR data (employees, time and salary without the business partner activation) and we will install a S/4HANA system for the other processes and modules. Can we follow the procedure described in your blog to replicate HR master data from the ECC system to the S/4HANA system ?
sebastian_schuermann
Participant
0 Kudos
Great Blog Christian! Thank you, it helped me a lot.
S00254372681
Participant
0 Kudos
Hi

Is there constraint for change pointers in DRF when Bp is transferred
dnguyen_31
Participant
0 Kudos
Great document Christian! Thank you for sharing. I am looking for document on Replicating business partner from S/4HANA to SAP C4C via CPI. If you have something, please refer me to one.

Thanks again,

David
LatishAdnani
Participant
0 Kudos
Has the SOA distribution model been tested out in case of distributed EWM systems?
markus_doehr2
Active Contributor
Thank you for this blog.

We used this to connect an ERP do a decentral eWM (S4/2020 FPS02) and may need to postpone the GoLive because

  • only a Web-Frontend is available to transfer specific objects/edit filters, there is no possibility to use some multi-selection method using SAPGUI Why? This makes no sense whatsoever. Given the amount of different notes having to explain this I assume that it's not only us asking this question.

  • in case of an error like "missing ID und UUID of the business partner" one has to one-by-one check the payload and try to figure out, what the issue is and even if the error is found, there is no convenient way in transferring only the missing data (see point 1)


I'm aware that DRF is a framework/a tool and not a complete application interface but since it's incredibly cumbersome and confusing to use (see above) I'd not recommend this approach without an ETL-tool around it to help troubleshooting. We errorneously believed that this is "a successor for ALE" with the same features but it's a lot more complex [unnecessarily] and is by no means complete and/or robust enough for people without prior experience in and with asynchronous webservices.
0 Kudos
Dear Experts,

We have recently upgraded our ECC system to S4 HANA 2021 and trying to replace our existing customer creation/update related interfaces via standrad BusinessPartnerSUITEBulkReplicateRequest_In service!
I could create a business partner using this when tested via SPROXY but unable to create Customer role for same.
The strange part is proxy execution is successful without any errors! but Customer role is not created.
So I would like to know if this really can be helpful for our requirement and what could be actually missing in our system to support this?
is it possible for you to share a sample Payload that supports customer role creation?
Do we really need DRF set up to just test this request via SPROXY as well?
I would really appreciate your help in this direction!


Regards,
Ashwini
former_member189962
Active Participant
0 Kudos
Hi Ashwini,

The reason that the Customer role is not created would be the failed CVI synchronization due to invalid/incomplete data in the payload for the Customer master.

You can check the logs using the transaction MDS_PPO2. Set the object type = BUS1006 and Object Key = Business Partner Number.

Additionally, there is NO DRF set-up required to text the proxy via the SPROXY transaction code.

Regards,

Ankush

 
0 Kudos
Hi christian.niemann ,

 

Thank you for the detailed process flow. We followed the similar approach but especially with huge volume load, this technique of SOA Replication is eating away all the bgRFC's and at one point it killed our system.

could you please suggest the better way to handle this mass volume of BP Replication

Appreciate your response!

thank you

 

 

 
ashfaq_ali02
Explorer
0 Kudos
Can DRF be used to replicate business partners from SRM and CRM to S4 HANA ?
S_Arora
Participant
0 Kudos
Hello,

we are facing an issue as follows. we need to replicate BP from S/4 to C4C.

In my scenario, we have to process the data to multiple receiver systems, so I am trying to create the logical ports using the service group, however its failing while executing the pending tasks.

Please refer the attached error screenshot, did not find anything regarding this error.Any information regarding the error will be helpful.

Is there any Business functions need to activated as a prerequisites?

 

rgds

sachin

 

 

 
sastry_gunturi
Active Participant
0 Kudos
Christian/Others,

We are trying to replicate Business partners and their relationships to the cloud. Triggering scenario 986_3 does not trigger the BusinessPartnerRelationshipSUITEBulkReplicateRequest_Out webservice. How can we push the Business partner relationships via DRF?
Domingos81
Explorer
0 Kudos

Hi,

Using this process with transaction DRFOUT, is it possible to use some EXIT or BADI to do some kind of treatment on the data, for example: not sending a partner that is type RV?

tks.

0 Kudos
Is this resolved.

We are facing similar problem.Can you share how you resolved it.
0 Kudos
There is no logical port coming up automatically.

Should we create it manually
edward_oleary
Participant
0 Kudos
Hi Domingos

We have a very similar requirement we would like in our case to extend the data being sent and wondered were we would find the exit/BADI that allows us to control this type of requirements?

Great blog Christian - would be great to cover this extension requirement in a follwo up blog

 

Regards

Eddie

 
guti2110
Discoverer
0 Kudos
Thank you for the blog.

 

Is there an option to replicate the BP via IDocs?
monicaang
Explorer
0 Kudos
Dear Christian

In your screenshots the Logical Ports are editable, thus not generated with Profile & Provider Service. I have a problem with the automatically created logical ports from the Local Scenario. They don't take into consideration the sap-client and I land with my data always in the default sap-client.

If I create a manually configured logical port and add ?sap-client in the URL all fine. But that is not your explanation and also not the standard documentation.

How can I solve this?

Thanks

Monica
CHRNIEMANN
Advisor
Advisor
0 Kudos
Hi Monica,

sorry, but please try asking questions under "Ask a question" under the S/4HANA community section:

https://community.sap.com/topics/s4hana

Kind regards,

Christian
CHRNIEMANN
Advisor
Advisor
0 Kudos
For questions please check these helpful links:
monicaang
Explorer