Product Information
Automatic Requisition update based on Position field changes
This article shows how fields within a requisition can be updated automatically once a position has been updated.
There have been many a times that organisations have updated the position fields after a requisition has been created (or manually created and position detail added later) – resulting in either a manual activity to keep the requisition in sync or leaving them be out of sync until EC/Onboarding kicks in.
With this article the aim is to show how to keep the requisition in sync with position.
Disclaimer: Please note that this is a custom solution that SAP Product Support is unable to assist with implementing
Pre-requisites:
- EC Position Management
- Std_position_obj in Recruiting requisition template and to have position details populated in the requisition(2911099 – Support of Position GO on Job Requisition and Job Offer – Recruiting Management – SAP ONE Support Launchpad)
- Rules in Recruiting
- Integration Centre
For my example, I have assumed the Company (Legal Entity), Division (Business Unit), Department and Location to be the fields that need to be kept in sync. However, any field supported in the usual business rule from position to requisition creation, can be used.
Let us assume that I have created my requisition from position management – by click on create requisition from within the position, and then gone ahead with the usual route map for approval and now that the requisition is live. Through the course of hiring, the organisation has decided to move this position to a new department and location. Now according to the standard build, the requisition will be out of sync compared to the position and hence needs to be updated – and here comes business rules and Integration Centre!
My existing position when the requisition was created:
Position details when requisition was created
My requisition when it was created:
Requisition details when first created from the position
Now, the position after the org changes (notice department and location have been updated):
Position details after the org changes
The business rule used to map the fields:
Business rule for mapping
Config update in Manage Rules in Recruiting:
I have added this as a save rule that way we can trigger the rule on regular intervals using Integration Centre.
Manage Rules in Recruiting
Integration Centre:
I have used SuccessFactors as the source and destination (Odata V2, scheduled job). The started entity in this case is Job Requisition.
You only need to map the req id (please note it is better to always use this only for approved and/or closed reqs, as open reqs might not have all the fields populated).
Requisition ID mapping
Also, I would only want the requisition to be updated if the linked position has been updated. For this condition, in Filters, I have added the ‘Change Date’ of the std_position_obj within the requisition to be checked with the last run date/time.
Filters in Integration Centre
For scheduling, you can only run this once everyday or weekly or monthly or yearly.
Requisition after the Integration Centre job run:
Requisition after Integration Centre job run
Points to note:
- Std_position_obj is a pre-requisite like mentioned before. This automated update will not work with any other position options within the requisition.
- Preferably use this integration only for approved and closed requisitions as open requisitions which are pending approval, sometimes do not have all mandatory fields filled in, which will result in Integration centre throwing an error.
- Care should be taken, and detailed discussions need to be held with the talent acquisition team before implementing this solution as the business rule is a ‘On-Save’ rule, which means even if business users are tying to update any field within the requisition, this rule will be triggered. So, if a recruiter/recruiting operator, has a business reason to change some of the fields within the requisition to not match the position, this rule will make sure it reverts it!
- With Integration Centre scheduling – Daily executions are not supported as this requires the update/last modified date to be in the requisition, however in our case the change is in the position rather than the requisition.
- Intelligent services, from what I have checked this cannot be triggered through this because
- ‘Position Update’ – The base object in intelligent ‘services is automatically assumed as ‘Position’, but the position object does not store requisition details, so wouldn’t be able to map for requisition to be updated.
- ‘Requisition Update’ – The requisition is not updated in the first place; the position is updated for which we require the position to be updated.
Hope this helps in understand the steps required to automate the updates to requisition when a linked position is updated. Please share your feedback/ views on the same.
Disclaimer: Please note that this is a custom solution that SAP Product Support is unable to assist with implementing
You can find more details on Recruiting questions and answers from other fellow community members over here: All Questions in SAP SuccessFactors Recruiting | SAP Community
Good one, Abisheg!
Thank you very much Karen 🙂
Great solution to automate these updates!
I do want to call-out that updates of position info to requisition may not always be appropriate depending on what was changed and the regulations in your country.
For example, if the position's job code/title changed, it would not be appropriate for us in the USA to have that update an open requisition as the candidate requirements/candidate pool may be different. We also want to ensure that the external posting location is not changed after posting (again, different candidate pool).
For this reason, I configured our update rule to be triggered manually as an on-change rule on the position field on the requisition. The position field is view-only to recruiters but editable to system admins. This allows the admin to review what the changes are to determine if it is appropriate to update an existing open requisition, or if the recruiter should be directed to close the existing requisition and create a new one. We simply re-select the same position in the requisition and it updates the corresponding fields we have configured in the rule.
Best regards,
Angie
Hi Angela,
Thank you very much for the comment, really appreciate the details shared.
I agree, this solution although possible, should be used with utmost care and consideration around processes and local regulations.
There are many ways this solution can be used.
All of these options have their own pros and cons beyond the system, hence there needs to be a careful study around all before implementing it.
Many thanks
Abisheg
Hi Abhisheg,
Nice blog and thanks for sharing this info with the bigger community. This was one of my To-Do list for Blogs, LOL! I am glad you have covered it now.
Angela Pullano ,
thanks for sharing your feedback.
What do you refer to by "if the position's job code/title changed, it would not be appropriate for us in the USA to have that update an open requisition as the candidate requirements/candidate pool may be different." Ideally, if a requisition was initiated for a specific vacant position, the candidate was supposed to be hired for that particular position attributes. If a position attributes change, and If the business requirement for the candidate isn't aligned with the changes, that should require a different position, correct? Ultimately, the candidate will come back and tie to the position, the requisition was initiated from. Maybe I have misinterpretated your statement, it will be helpful if you can explain?
Also, it's not a common practice for every customer in the USA but maybe just a few.
Rinky
Hi Rinky,
I will do my best to clarify!
Anytime a position/job requisition is changed in a manner that would affect the qualified candidate pool, the requisition should be closed and a new requisition created.
Using the same requisition in the above scenarios will result in a candidate pool that is not really equal in competition for the same position and may result in candidates that previously applied no longer being qualified (but did meet the requirements at the time of the original posting), or candidates that viewed the job previously not having applied, but would have, if it had been posted with the new requirements.
Changes to a position that only affect back-end administration but would not affect the external job posting are fine to use the original job requisition and posting/same candidate pool.
Best Regards,
Angie
Hi Abisheg,
thanks for the great post.
I was wondering what the base object of the business rule would be.
Can't find any with the name "Standard Job Requisition Updated" one. Is there something we need to activate first.
Thanks and best regards,
Philipp
Hi Philipp,
Thank you!
Apologies for having missed that in the post , it would be a 'Basic' business rule and the base object would be the name of your requisition template if you want the rule to only apply to a particular template or please select 'Job Requisition (All)' if you would want it to apply to all templates.
In my case the name of the template was 'Standard Job Requisition Updated'
Many thanks
Abisheg
Hi Abisheg,
thanks a lot for the quick reply.
Makes sense now 🙂
Will right away give it a try.
Best regards,
Philipp
Dear Philipp,
I've been trying to reproduce this configuration. And I believe the integration is not picking up the position field that was updated.
Where you able to configure this successfully?
Kind regards,
Ines
Dear Abisheg,
I've been trying to reproduce this configuration. And I believe the integration is not picking up the position field that was updated.
Do we need to map in the integration any fields besides jobrep ID?
kind regards,
Ines
Hi Ines,
My company recently implemented this business rule. If you want to email me at jennifer.brown@newmont.com, I'd be happy to share some screen shots of our configuration.
Regards,
Jenn
Very kind of you Jennifer, hope the above blog was helpful in your configuration.
Thanks Abisheg! Yes, I was searching everywhere through everything I could find to pull this together, and I stumbled upon your blog. We did end up getting a couple hours with an SAP expert our SF CRM hooked us up with, and that helped fill in our gaps.
Because we actually got help from SAP, I know they were going to try to reach out to SAP Support desk and let them know they shouldn't be telling customers that this can't be done or it isn't supported. So it's possible someone might get lucky with some assistance now from the help desk.
I would add that you can run the Integration Center job every 2 hours, and it is very important to add an "is draft" statement to the IC job so that running the business rule doesn't fail when there is a required field on the job req that isn't filled out. Additionally, it was recommended to us to create a rule that updates the Target Start Date field on the job req (if a company is using that field on their job req) and make it be the current date, if it is in the past. Apparently that solved for some problems other customer had run into. So that was a second business rule that runs before our Position to Job Req Sync rule.
For the business rule, we were also advised to add a section of statements before the "Set xxxx to be equal to xxxx" statements, in the "If" section of the If/Then rule. In this way, running the rule takes up less system resources.
If I can help anyone avoid the heartache we went through with getting this set up in our system, here are screen shots of what we created in the system. Customers should note, we also did a big communications push to our recruiters so they would understand what fields do NOT update as a part of this sync with position data. But being that our recruiters pushed hard for this automatic update, they were happy with this solution.
Have a great day everyone! -- Jenn
Rule for Position to Job Req Sync
We were told you can make the business rule as complicated as you want really. For some US companies, that have to follow OFCCP rules, they may want to include something in the business rule that stops any update if the job req is or has been posted. Or at least limits which fields can update, if the req is or was posted.
Integration Center job - Is Draft statement is important
Integration Center - Filter and Sort settings
Integration Center - Scheduling settings
Integration Center - Review and Run page
On Save rules for Position to Req Sync - includes update of Target Start Date field
Rule to run first - if Target Start Date is a field on job req template
Hi Ines,
Within integration centre, you definitely dont need anything other than the requisition id. Only within the business rules will you have all the position fields mapped to the requisition fields. The reason for integration centre only having requisition id, is to make the system believe there was a save action executed.
Hi,
we are encountering an issue where integration center job is running successfully with warnings but is not triggering the onSave event to run the rule. If we add a filter on the integration on reqID (is equal to) with one redID value it will trigger onSave for the req in the filter. If we remove this filter, job runs, completes with warnings, but dosent actually update any reqs.
any insight?
thanks,
Alex
This is how I would debug -
Have you added the filter for 'change date' for the standard position object? If yes, does the position actually have the latest change date updated? Before running the integration centre job, do you see any req id listed in the 'Configure fields' area?
When the above are met, I faced no issues, so would have to deep dive into the filters and the IC config to find the issue.
Hi, Thanks for the reply!
We cant seem to add the filter on the change date, we are getting an error any idea what can cause this? :
Thanks for this, Abisheck!
I seem to remember I have read an article about automatically creating a new requistion based on the position data, when a new position is created, but can't find it any more. Do you know any article or documentation about that?
thank you!
Sven
I haven't seen that - might be interesting to find out if it is hidden somewhere - will dig around. I did try creating a req automatically when a position was created, through Integration Centre but I couldn't get it to work. However when using a middleware it worked seamlessly - so not sure if its a IC limitation (or my knowledge 🙂 )
Regards
Abisheg
Hello,
I'm trying to set the business rule for this feature as shown in your steps as well as mentioned on a deck shared during a recent SAP learning series "Employee Central and Recruiting Integration Series -- Position Data Synchronization", however I'm not finding the option to select the "Job Requisition (ALL).Position.Business Unit.
GUIDE DETAILS:
Thank you,
Candy E.