SAP Knowledge Base Article - Public

2726841 - How to use filter option on jobReqPostings/postingStatus fields in ODATA API

Symptom

While running a ODATA API Query to fecth the details of the Job Requisition, you will see the details of the Job Posting status as Updated?Expired .

Posting Status section.png

However if you try to filter the Requisition with Posting Status as "Updated " , It will throw an error

https://apisalesdemo4.successfactors.com/odata/v2/JobRequisition?$jobReqPostings,status,recruiter,jobReqLocale,mrPostingType,jobType,orgeh5 &$format=json&$filter=jobReqPostings/postingStatus ne 'Updated'

Error message :

Failed to retrieve result with given criteria.

Cause

This is the Expected behavior

Resolution

At the code level the Posting Statuses are mapped to the Numeric value 

   POST_FAILED (0, "Failed"),

    POSTED_SUCCESS (1, "Success"),

    UPDATED_SUCCESS (2, "Updated"),

    DELETED_SUCCESS (3, "Deleted"),

    POST_PENDING (4, "Pending"),

    REPOST_PENDING (5, "Repost_Pending"),

    REPOSTED_SUCCESS (6, "Repost_Success"),

    POST_EXPIRED (7, "Expired");

For Example , if you need filter the Job Requisition based on Posting Status Updated , the query needs to be like

https://apisalesdemo4.successfactors.com/odata/v2/JobRequisition?$jobReqPostings &$format=json&$filter=jobReqPostings/postingStatus ne 2

Keywords

jobReqPostings/postingStatus , Failed to retrieve the result with the given criteria , KBA , LOD-SF-RCM-API , Webservices & APIs , Problem

Product

SAP SuccessFactors HCM Core 1808