Codelist mapping in Hybris C4C for an integrated scenario
In any integrated scenario of SAP implementations where Hybris Cloud for customer application would be integrated to the backend ECC / CRM system, code list mapping is a mandatory process to be performed for successful integration and data transfers.
This document explains code-list mapping, the two types of code list mapping offered by C4C application.
Code list mapping in SAP Hybris Cloud for Customer
The process of mapping the values of various parameters from Hybris C4C to the connected backend ECC / CRM system and vice-versa is known as code-list mapping. This is primarily used in a connected / integrated system where-in C4C application is connected to the backend system. Code lists are code values defined in the fine tuning in SAP Cloud for Customer and the Customizing of an on-premise system. These codes are used as selection values for field help.
Code list mapping is not applicable for a stand-alone C4C application.
In the above example, you see that values 2 & 3 do not match in the cloud and on-premise systems. When a request for value 2 is sent from cloud system, it will receive an incorrect value from the on-premise system. It is therefore imperative to maintain a valid mapping between code list values across systems as code lists in the various systems may or may not be identical.
Mapping of the code lists and its code values can be achieved through two ways:
1. Automatic code list mapping
2. Manual code list mapping
Automatic code list mapping does not support mapping of all code values / parameters. For those parameters where automatic code list mapping is not supported, explicitly manual code list mapping needs to be performed. Please refer to SAP help to have a list of code parameters supporting automatic code list mapping.
Automatic code list mapping
Important information regarding Automatic code list mapping:
1. Automatic Mapping supports limited set of Standard Code Lists and its associated code values.
2. Code List Exceptions that are not Supported for Automatic Mapping: In the code lists CashDiscountTermsCode and
BusinessPartnerRelationshipCategoryCode, not all the values are transferred to Cloud. Hence, if you use either of these two code lists, review and adjust the values and mappings manually directly in the fine tuning activity.
3. Deleted Code Lists in On-Premise are not refreshed in Cloud Solution.
4. Differential Mapping Overwrites Existing Mapping.
Following are the key steps to perform for automatic code list mapping:
1. Download the code list mapping file from C4C application.
2. Download the code list mapping result file from the connected on-premise (ECC / CRM) system.
3. Review the downloaded code list mapping file.
4. Upload the results code list file into C4C system.
5. Review the mapping in the C4C application.
Download the code list mapping from C4C application:
The code list can be downloaded from C4C system by navigating through the path: Business configuration -> Download code list.
All the code lists in the Cloud solution, and the mappings maintained in the fine tuning activity for the selected mapping group and the selected language will be downloaded into a zip archive file. The zip file contains two .csv files. The Codelist.csv contains all the code lists in the Cloud solution and CodeMapping.csv contains the mapping details. The mapping also indicates if the mapping rule is set to Local and Remote Codes are Equal.
Screenshot for downloading the code list mapping from Hybris C4C system:
Path: Business Configuration -> Download Code list
Download the code list mapping from on-premise system:
1. Download mapping information from connected on-premise system (ECC / CRM) : The path to download the code list mapping is SPRO -> Integration with Other mySAP Components -> Integration with Cloud for Customer -> Download ERP Customizing Information for Code Lists (if on-premise is an ERP system).
2. Alternatively (instead of the SPRO activity), you can use the reports CRMPCD_CUST_EXCHANGE for CRM or the report
CODD_CODE_LIST_MAPPING for ERP.
To download the code list mapping from on-premise ECC / CRM system, please enter the values as stated below:
Group Code ID: Enter the code list mapping group ID as the Group Code ID.
Merged Customizing Directory: Specify the path where the mapping information from the on-premise system must be saved. You must specify the complete file name along with the .ZIP file extension, and the folder where the file should be downloaded. For example, C:\SAP\CloudCodeList.zip.
Important points to consider while downloading the mapping files from backend on-premise system (ECC/CRM):
> Ensure that the CSV Delimiter that is specified here is the same as the delimiter that you had specified while downloading the code lists in SAP Cloud for Customer. By default it is set to ‘,’ (comma).
> C4C BusinessConfiguration File: Specify the path to the Microsoft Excel® file downloaded from SAP Cloud for Customer.
> Additional Languages: If you want to download the code lists in additional languages, select the required languages. Code lists in all the selected languages will be downloaded and these can be further used to upload to SAP Cloud for Customer.
> Consider C4C Code List Mapping: Set this flag if you want to only consider delta code lists for mapping.
Result: The merged zip file also contains two .csv files.
1. CodeList.csv : This file contains all code lists from the on-premise system.
2. CodeMapping.csv : This file contains the code list mapping between the on-premise system and the cloud solution
Note: The zip file contains two .csv files.
Upload Finalized Mapping to Cloud for Customer:
1. The final step in the process is to upload the reviewed mappings to Cloud for Customer. To do this, navigate to Upload Code List in Cloud for Customer under Business Configuration-> Upload Code List.
2. To upload, you must select the same code list group that you used when you downloaded the mapping from Cloud for Customer. Click on Upload to trigger the background job for uploading the code list mapping.
Screenshot for uploading the code list mapping to Hybris C4C system:
Path : Business Configuration -> Upload Code list
Manual code list mapping:
Definition of “Maintain Code List Mapping”: Under Business configuration work center, in Implementation Projects view, click on Open Activity List and select the activity “Code List Mapping for Integration with External Application and Solutions” to define the following configuration:
> Select the mapping group to which you need to assign the code list mappings. SAP recommends that you use a base mapping group such as 03 — SAP On Premise Integration for standard mappings and create new business groups to maintain deviating mappings.
> For the selected mapping group, select the Local Code Type. You will need to maintain separate code list mappings for each local code type. You can also choose to map an External Data Type to the local data type.
Code list mapping rules:
SAP provides two standard code list mapping rules.
- Local And Remote Codes Are Equal: Set this rule if code list values in the cloud and on-premise systems are same. When you select the row for a mapping group, you will see that the mapping rule is set to Local And Remote Codes Are Equal by default. You can set this mapping rule if a one-to-one direct mapping exists between the codes in cloud and on-premise systems. That is, the codes being mapped are the same in cloud and on-premise solutions.
- Map Individual Codes: Set this rule if you need to maintain deviating mappings where the local and external codes do not match.
Screenshot for Code list mapping:
Screenshot for Code list mapping group:
Screenshot for mapping rule: Local and Remote codes are equal:
Screenshot for mapping rule: Map Individual code:
thank you for sharing this.
I wonder, if we can use this functionality also in scenarios without standard on-premise Integration. Do you know if it is possible to use the mapping functionality for other Integration Scenarios too?
The mapping is provided only on the replicate webservice, isn't it?
Hello Venkataraman, Thanks for informative blog, good work.
@Christine yes it should be possible to use code-list mapping for integration other than SAP Systems. In case you have other SAP Systems, you need to create another "Code List Mapping Group" and assign this group to Communication medium (which you have created for the external non-SAP System).