Symptom
When you query TemporaryTimeInformation entity, you notice that it returns all records including deleted records. Making it hard to distinguish which records have been deleted and which ones exist in the system.
"Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental."
Environment
- SAP SuccessFactors HXM Suite
- Integration Center
Reproducing the Issue
- Run the following query https://<API URL>/odata/v2/TemporaryTimeInformation?$filter=userId eq 'XXXXXX'
- You will notice that it returns several records (more than the records maintained in manage data for temporary workschedule)
Cause
MDF API will (by default) will search for both Active and Inactive records. On Manage Data page, if you set the "Include Inactives" as "Yes", then search Temporary Time Information for user, you will get both active and inactive records.
Resolution
To return only active records:
- Go to Admin Center -> Configure Object Definition page, search "Temporary Time Information", find the field "mdfSystemStatus" and click Details to set Visibility=Read Only, then save this change.
- Search "OData API Metadata Refresh and Export" to refresh cache - https://launchpad.support.sap.com/#/notes/2171588
- Once complete, go to Integration Center to update the query to update the filter as $filter=userId eq 'XXXXXX' and mdfSystemStatus eq 'A'
- Then only (1) active record is returned in Integration Center (same as Manage Data)
Please Note - this change will make the mdfSystemStatus also visible on Manage Data UI page,
See Also
Keywords
Integration, center, TemporaryTimeInformation, MDF, API, temporary, work schedule, active, inactive , KBA , LOD-SF-INT-EC , Employee Central SFAPI & OData Entities , LOD-SF-INT , Integrations , LOD-SF-INT-ODATA , OData API Framework , Problem