Symptom
When having an OnChange Business Rule applying changes to a read-only object fields, the changes are applied but when saving the form, the changes are reverted to the previous values.
Environment
SAP SuccessFactors Recruiting Management
Reproducing the Issue
- Create a Business Rule to apply a change on an object field
- Set the rule as OnChange under Manage Rules in Recruiting;
- Go to the RCM form you defined the rule (e.g., Job Requisition);
- Trigger the rule; - The value will be changed.
- Save the form;
- Changes were reverted;
Cause
This is an expected behavior based on the structure of Business Rules in Recruiting. Please refer to the Resolution section.
Resolution
On the current design, if an OnChange Business Rule is triggered by the user/operator, the same user/operator must have write permission to the object field that the rule will be changing. If the user/operator does not have permission, the rule will trigger but the changes won't get saved.
This information is addressed on the following sections of the Implementation Guide:
"The onSave trigger can default or update values into a read-only field. However, if the user doesn’t have edit permission, you can’t use the onChange trigger to default values into a read-only field in the requisition.
This behavior is similar to a non-object field. Please refer to the following article for more information - http://launchpad.support.sap.com/#/notes/3005834
As a workaround, you can define the same rule as OnSave or define write permissions to the user/operation in question.
See Also
2987208 - "errorMessage=f.setSelectedValue is not a function" on Job Application page - Recruiting Management
Keywords
changes, change, saving, saved, not, object, not, working, properly, rule, rules , KBA , LOD-SF-RCM-RUL , Recruiting Rule Issues with MDF Platform , Problem