SAP Knowledge Base Article - Public

3723252 - Understanding Translation Fallback Logic in MDF Entities - OData API

Symptom

  • Integration Center or OData API calls are returning a value in a language that does not match the expectations.
  • The API is returning the "Default Value" instead of a specific translation (e.g., English UK, Spanish, etc.).
  • Users see different values in the UI compared to what is extracted via the API.

Environment

  • SAP SuccessFactors HCM Suite
    • OData API

Reproducing the Issue

  1. Query the API field Name (name) from the Department or any other MDF entity.
  2. Observe the response payload returning data from Name (name_defaultValue) instead of Name (name).
  3. Verify the inconsistent behavior when retrieving the Name via OData API.

Cause

This behavior is due to the Locale Handling logic within MDF Entities. When an OData request is made, the system follows a strict fallback hierarchy to decide which translation to "pick" for the response.

The API prioritizes values in the following order:

  1. User’s Preferred Locale: The language specifically set in the user's Global Header > Settings > Languages.
  2. Company Default Locale: If the user’s preferred locale is not maintained for that specific record, the system checks the instance-wide default language.
  3. Default Value Field: If neither the user nor the company locale has a translation maintained, the system pulls the technical <fieldname_defaultValue>.

Note: Even if a value exists in a "Name" field or another language (e.g., Chinese or US English), the API will stop at the Default Value if a specific match for the User/Company locale is not found.

Resolution

To ensure the API returns the desired text for a specific user, follow these steps:

  1. Identify the User's Locale: Check the "Preferred Language" for the user experiencing the issue.
  2. Maintain the Translation: Navigate to the specific MDF Object (e.g., Department, Position, etc.) via Manage Data.
  3. Add Specific Locale: Select the "Translations" (globe icon) for the field in question and ensure a value is explicitly entered for the User's Preferred Locale.
  4. Verify: Re-run the OData API or Integration Center preview. The system should now find a match at "Step 1" of the hierarchy and return the correct value.

See Also

Refer to: Locale Handling in MDF Entities

Keywords

odata api, name field, name_defaultvalue, incorrect mapping, locale handling, fallback hierarchy, translation issue, mdf entities, api response, inconsistent behavior, baggage hub , KBA , LOD-SF-INT-MDF , Metadata Framework API (MDF) , LOD-SF-INT-INC-ODATA , ODATA API In Integration Center , LOD-SF-INT-EC , Employee Central SFAPI & OData Entities , LOD-SF-INT-ODATA , OData API Framework , Problem

Product

SAP SuccessFactors HCM Suite all versions