SAP Knowledge Base Article - Public

3108381 - MDF based entity not always picked up by OData API (v2)

Symptom

You wish to understand why a field from an MDF based entity is sometimes picked up for replication by or visible via OData API (v2), and other times it is not. Payloads and Audit Logs do not show any warnings or errors

Environment

  • SAP SuccessFactors HXM Suite
  • SAP SuccessFactors OData API

Reproducing the Issue

  • Create a field in the UI, which is linked to an MDF based entity and observe how it is visible in the UI
  • Observe how the same field is missing via Manage Data and/or OData API (e.g. via Integration Center)

Cause

Business Rule configuration:
For MDF based entities, onLoad Rules are only supported in some very specific cases in OData v2 (e.g. if the field is set as transient and the field is explicitly set in the $select statement)
In other words, if the value is not persisted in the database and is set through an onLoad rule, it will show on the UI but will not be returned in the OData response

Resolution

Use a Save Rule which will persist the value. This way the API can retrieve such value and return it in the OData API response

Keywords

audit log not available, payload not available, MDF, MDF based entity, Manage Data, Business Rule, onLoad Rule, On Load, OnSave, On Save, OData v2 , KBA , LOD-SF-INT-ODATA , OData API Framework , LOD-SF-INT-API , API & Adhoc API Framework , LOD-SF-INT-MDF , Metadata Framework API (MDF) , LOD-SF-INT , Integrations , How To

Product

SAP SuccessFactors HXM Suite all versions