Skip to Content
Technical Articles
Author's profile photo Ajeesh Nair

How to map a “picklist” field from Employee Central – Position Management to Job Requisition without Lookup Picklist Mapping object and using externalCode? – Recruiting [oData API]

Context:

It is a common requirement from many customers around the possibility to use a picklist field on the job requisition that can be mapped to and prefilled from the position. Currently, the picklist values can be mapped through OData API from picklist fields in position object to the optionId of the picklist in job requisition. In order to do so, we need to define this mapping with the help of an additional object (lookup picklist object) that contains both the code and the optionId value. This is explained in KBA: How to map Picklist fields in EC Position Management to RCM Integration with oData API – Recruiting Management. With this lookup mapping object, it needs to be setup and maintained whenever there is a new value added in the picklist. This is an additional maintenance for any customer.

This blog explains about the workaround solution that can be used to map a “picklist” field from Employee Central – Position Management to Job Requisition without Lookup Picklist Mapping object and using externalCode of the picklist value. This solution explained here minimises the manual maintenance of the look up mapping object where by the system automatically identifies the new values based on the unique externalCodes.

Prerequisites:

  1. Both Employee Central Position Management and Recruiting have been enabled and configured in the system.
  2. The externalCode of the “picklist value” (not picklist) should be unique. This means that No two picklist values should have the same externalCode in the system. For example, picklist YesNo with two values Yes and No and YesNoMaybe with there values should not have the same externalCode for Yes (Y), No (N). The externalCode has to be unique for each value.

Configuration:

  1. Navigate to Admin Center> Position Management Settings> Integration
  2. Open the business rule assigned under Field Mapping Rule to Create Job Requisition from Position
  3. Edit or add the rule statement with reference to the externalCode of picklist value using the format function

Position%20-%20Job%20Req%20Picklist%20Mapping%20externalCode

Once mapped successfully, ensure to run an oData API Metadata Refresh and Export before testing by creating the job requisition.

Note: The field mapping can be done through other ways also like label and other fields. This blog is one of the ways to configure the field mapping apart from the recommended way of mapping by SAP using the PicklistOption entity (KBA: https://launchpad.support.sap.com/#/notes/2361220).

Please provide your feedback and any question in the comments section. I would also encourage you to ask any SAP SuccessFactors Recruiting related questions through the community portal: https://answers.sap.com/tags/67837800100800006356

Assigned Tags

      3 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Divia Radhakrishnan
      Divia Radhakrishnan

      Great post, Ajeesh. Saves a lot of time. Thanks for sharing this tip.

      Author's profile photo Pradeep RAGUNATHAN
      Pradeep RAGUNATHAN

      Hi Ajeesh,

      I followed your post but getting the error Sorry, the requisition cannot be created. Creation of a job requisition for position Position_521 failed. Details: RDScustom2_New invalid

      Please advise what would cause this error. I have configured the rule exactly as your screenshot from the blog.

      Thanks in advance

      Pradeep

      Author's profile photo Ajeesh Nair
      Ajeesh Nair
      Blog Post Author

      Hi Pradeep,

      The system is throwing an invalid error for RDScustom2_New field. Please recheck your configuration and the field definition and mapping maintained. Ensure that the picklist used in position and job requisition are the same and the external codes are unique in the system as explained in pre requisite # 2 in my blog.

      Kind regards,

      Ajeesh