Symptom
You are configuring an integration to hire employees and as part of this integration you are making use of the generateNextPersonID to get an available ID to complete the hire process.
In parallel you also have in your EC implementation a business rule implemented to define the sequence of your employees which is configured under Hire/Rehire Configuration with a business rule consuming a sequence object.
During your tests you have noticed that when hiring an employee via API it will not update the sequence number object, which means that you may fall into a scenario where hiring an employee through UI may use an ID that is already in use by another employee that was hired during INT execution.
Environment
- In your SFSF instance you must be defining the employee IDs using business rule + sequence number in Hire/Rehire Configuration
- In your integration you are calling generateNextPersonID when hiring an employee
Reproducing the Issue
- trigger a hire process via integration and take note of the ID generated
- in your SFSF instance go to Manage Data > Hire/Rehire Configuration > open the business rule configured to define the employee ID and take note of the sequence number object
- now, go to Manage Sequence and open the sequence number object
- Notice that the sequence was not incremented after hiring an employee via integration
Cause
Expected Behavior
Resolution
The sequence number object is exclusively used for business rules scenarios and cannot be updated or read by APIs.
This means that using business rules to define IDs during hire process in conjunction with hiring employees via API using the API call "generateNextPersonID" is not supported.
For customers who want to hire employees via UI and also via Integration scenarios we recommend using database sequence only to generate the IDs in both cases.
Keywords
KBA , LOD-SF-INT-ODATA , OData API Framework , LOD-SF-EC-HIR , Hire & Rehire Wizards , Product Enhancement