SAP Knowledge Base Article - Public

2386938 - HRIS Sync - Nationality

Symptom

We will see Natinality sync behavior especially locale related logic.

Company locale is Chinese in Provisioning:

p1.png

Logged in user's locale is Germany in the UI:

p2.png

Country localized data in MDF Country objects:

p3.png

p4.png

 

Reproducing the Issue

Personal Information -> Nationality sync

The field Nationality in Personal Information is pre-defined as a Country field in code. The standard configuration in Succession Data Model (SDM) is:

p5.png

The standard configuration for HRIS sync mapping for the field in SDM is:

p6.png

In Personal Information portlet, the Country data in the drop down list display is related to logged-in user locale since EC is using MDF Country object which support localization of the data. Technically, CHN will be stored in Personal Information table. And when EC render EC Personal Information portlet, CNH will be based on logged-in user's locale to be rendered from MDF localized data. It will use company locale if user's locale is null.

p7.png

Data stored in EC Personal Information table is CHN.

Resolution

When EC sync Personal Information – Nationality to EP (UDF file), we will always sync the default value related to the Country code to EP. Technically EP custom fields by-design can't support localized feature, so we need to sync EP with the Country name and the Country name will be stored in EP table. Before territory migrating to MDF Country, we used territory table–>territory name. After migration, we still use territory view –>territory name which is based on the Country's default value of Country name.

Sync logic for EC custom strings field configured as type=Country:

SDM configuration of the field:

p9.png

HRIS sync mappings in SDM:

p10.png

In EC Personal information portlet, the Country data in the drop down list display is related to logged-in user locale since EC is using MDF Country object which support localization of the data. Technically internal id will be stored in Personal Information table related to GO- specific Country code. And when EC render EC Personal Information portlet, the value of Country name will be based on logged-in user's locale. It will use company locale if user's locale is null. Data in Personal Information portlet:

p11.png

When EC sync data to EP related to type=Country (GO object), we will always sync the Country name related to the Company locale to EP. Technically EP custom fields by-design can't support localized feature, so we need to sync EP with the Country name.

p14.png

Country field sync logic related to Country:

The behavior to sync Personal Information–>Nationality is different from the behavior to sync Personal Information–>customString field configured as type=Country. When we sync Nationality, we always sync Country name with the default value to EP fields. When we sync Personal Information custom fields configured as type=Country, we always sync Country name with the Company locale to EP fields. HRIS sync never sync data based on logged-in user locale for two reasons:

  1. Since data could be entered into system by import or API, and it will be synched by running HRIS sync job. And even if it's entered in UI, it will be synched again by HRIS sync job when the job is scheduled to run. So it doesn't make sense to use user's locale to sync labels/names to EP since HRIS sync job will run as an admin user.
  2. It also doesn't make sense to sync Country name related to the user's locale such as Germany characters to EP field and then the Chinese colleagues or Japanese colleagues to see these Germany characters without knowing the meaning of the characters only because the data is updated by a German colleague. 

Keywords

UDF SYNCHRONIZATION COUNTRY EP LOCALE MAPPING , KBA , LOD-SF-EC-INT , Manage Pending Hires (Integration RCM/ ONB/ OBX + UI) , LOD-SF-EC , Employee Central , LOD-SF-EC-HRS , HRIS Sync , Problem

Product

SAP SuccessFactors HCM Core 1702