Technical Articles
Replication of Bank Master and Cost Center from SAP ERP or S/4 to SuccessFactors Employee Central
Bank Master replication – At present SAP has not given this as a standard replication in SAP Cloud Platform Integration (CPI) and Dell Boomi.
Initial load of Bank master data is done by the Data Team. They load all the bank master using the standard import functionality in SuccessFactors EC.
I have seen few customers doing dual maintenance after go-live i.e. when they create/update bank master in S/4 they manually do the same in SuccessFactors EC.
Few customers prefer to make this automated and create a custom integration via SAP Cloud Platform Integration or Dell Boomi to replicate bank master to SuccessFactors EC. This custom integration would require a cloud connector to read bank data from S/4 on premise. ODATA adaptor can be used to read data from S/4. UPSERT operation can be used to update these details in SuccessFactors EC.
Change documents can be configured in S/4 to read only changes instead of reading all the Bank master. So basically before the go-live the SuccessFactors EC and S/4 (Finance system) should be in sync in terms of Bank master.
On the day of go-live you can schedule the interface in CPI to start reading changes in Bank master from S/4 from the go-live date. So changes made in S/4 after this timestamp will be read by CPI and updated in SuccessFactors EC.
When you have Bank id field in SuccessFactors EC as auto generated then you may need to think about getting the highest Bank id when there’s a new Bank in S/4 since you have to read highest Bank id and add 1 because in API you have to provide the Bank id while creating a new Bank. One option is to read the Banks created in Employee Central from last execution timestamp and store the Highest Bank id in CPI. If you find Bank id from Employee Central which was created after last run then increment it by 1 and use it as next Bank id else use the Bank id stored in CPI (variable).
Cost Center Replication – SAP has given a standard replication for this.There is a Standard integration package in Dell Boomi and SAP CPI. This integration package enables you to integrate Cost Center data S/4 to SAP SuccessFactors Employee Central. This is triggered by a scheduled job in S/4.
The replication is achieved via change pointer concept which used idocs to transfer data.
Standard Message type : ODTF_CCTR. For Employee Central Payroll we have a different message type which is COSMAS.
Standard Basic type: ODTF_CCTR01
Below 2 steps are mandatory to set up this replication in S/4.
- Activate change pointer for message type ODTF_CCTR using transaction code: BD50.
- Ensure change pointer generally is checked (Transaction code BD61).
To connect S/4 to SAP CPI you need a RFC connection of type G. In the target host you need to mention the runtime url of your SAP CPI instance.
There are 2 modes to trigger this replication.
1. Full/Initial Replication of all cost centers from S/4 to SuccessFactors EC.
For initial replication the standard program ODTF_REPL_CC should be executed. Select the parameters on the selection-screen as explained below.
- Select the controlling area
- Uncheck the parameter ‘Use Report Variant for Change Pointers for Cost Center’ for initial run
- Select the receiver partner number. This is the receiver partner profile.
- Enter the start date (Cost centers will be effective from the latest of start date on cost center or this date, ex cost center is effective from 01/01/2010 in S/4 and you enter 01/01/1900 here, then cost center will be effective from 01/01/2010 in Employee Central.
- Select the processing mode as ‘Send idoc’ for live run or ‘Test mode’ for test run.
Note: Executing full run will not wipe out custom cost centers created manually in Employee Central.
2. Delta Replication –
For Delta replication the standard program ODTF_REPL_CC should be executed. Select the parameters on the selection-screen as explained below.
- On the selection screen, define your replication criteria as required and select the Use Variant for Delta Replication Using Change Pointers checkbox to specify that you want to use this program variant for the replication of changes. Then save your selection as variant.
- Go to t-code SM36 and schedule the Creating IDoc Type from Change Pointers (RBDMIDOC) program(BD21) as a regular background job using the ODTF_CCTR message type.
- The RBDMIDOC program reads the change pointers with the ODTF_CCTR message type and replicates the changed data using the ODTF_REPL_CC program variant that you’ve defined in the first step.
- Schedule background job for the Transaction code BD21 using message type ODTF_CCTR to send change pointer records from S/4 to SuccessFactors EC.
- SAP suggests to delete the already processed change pointers. For this you can schedule background job for the transaction code BD22 using message type ODTF_CCTR.
Below steps can be followed to test the replication –
- Create/Change cost center in SAP using t-codes KS01/KS02 resp.
- Open Transaction code BD21, enter message type ODTF_CCTR and execute
- Check updates in SuccessFactors EC by going to Manage Data and selecting Cost Center
FAQs –
1. Can I replicate names and descriptions of cost centers in different languages?
Yes. Select this option on the selection-screen of program ODTF_REPL_CC. Further you need to map the languages from S/4 to SuccessFactors EC in the value mapping in SAP CPI.
2. Is there a BADI where I can modify cost center data before replicating?
Yes. There’s a BADI ‘ODTF_CO_REPL_IDOC_COST_CENTERS’ provided by SAP for you to modify data as per customer’s requirement.
3. If I delete a cost center in S/4 and replicate, will the cost center in SuccessFactors EC be deleted?
No. Deletion of cost center in S/4 will not be transferred to SuccessFactors EC. This needs to be handled manually.
4. If I deactivate a cost center in S/4 will this be replicated to SuccessFactors EC?
Yes. Cost center in S/4 has control flags. ‘Actual primary costs’ is the flag which is used for this purpose. It is mapped to status of cost center in SuccessFactors EC.
5. Where I can see the cost center field mapping from S/4 to SuccessFactors EC?
You can find this in the integration flow in SAP CPI. These details are also mentioned in the SAP guide to replicate the cost centers.
6. Is the data sent synchronously or asynchronously in cost center replication?
Data is sent asynchronously.
Hello Manu,
Can I replicate names and descriptions of cost centers in different languages?
What are the steps needs to be done in CPI - I can see one below artifact Value Mapping for CostCenter Standard Package.
Configure Map Cost Center Language Keys from SAP ERP or SAP S/4HANA to Language Keys from SAP SuccessFactors Employee Central
Is there any standard list to add the entries for this value mapping? What are the steps needs to be done at SuccessFactor system?
My Testing Case:
From S4H i can see <LANGUAGE_CODE>E</LANGUAGE_CODE> in the IDOC and i have maintained ERP_DEFAULT_LANGUAGE = E in the ContentModifier. I am not able to see the language code in descriptionTab and in nameTab. Do i am missing something here?
<descriptionTab>
<value>XX Cost Center</value>
<languageCode>
</languageCode>
</descriptionTab>
<nameTab>
<value>XX Cost Center</value>
<languageCode>
</languageCode>
</nameTab>
Also can you please let me the the below two fields, are these are mandatory to be created at SF side?
COMPANY_ID_TARGET_FIELD and
PERSON_RESP_TARGET_FIELD
Thanks and Regards,
Mohan
Hi Manu,
Thanks for this great blog!
Is it possible to proceed incremental load of cost center changes. In my case I have configured an association to division in cost center object. But at the moment e.g. a name change of Cost center is added with a new time slice in EC but the Association is not propagated from the old time slice. So the import works in full purge and not in incremental load. Is it possible to change this import parameter in CPI Flow?
Thanks and best regards,
Bianca
Hi Bianca Kühnel ,
Not sure I understood your question completely but if you are using the standard iflow in CPI then you can't modify it. Did you try to find any BADI/Enhancement for this?
Regards
Hi
Can you help understand how ODATA adaptor can be used to read data from S/4.
Are you talking about some api here.. I have a scenario where I have S4 on prem and have to send bank master data to SF using CPI as middle ware.
Hi,
You can use idocs to trigger from S/4 and send data to SAP CPI. If I remember correctly the S/4 was on on cloud in our case.
Regards,
Do you have any specific reason to suggest Idoc?
I was thinking of using latest Rest Webservice approach. Any inputs?