SAP Knowledge Base Article - Public

2571698 - Best practices setting up business rules for event reason derivation

Symptom

  • You are configuring the event reason derivation using business rules but is having some difficulties or want to know what are the best practices for this setup.
  • We recommend that you use the Event Reason Derivation scenario while creating a new rule instead of the Basic scenario.

Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental. 

Environment

  • SAP SuccessFactors Employee Central
  • SAP SuccessFactors HXM Suite

Resolution

Before you configure the event reason derivation we strongly recommend you to read the section 9 - Using MDF-Based Business Rules for Event-Reason and Workflow Derivation in our employee central master implementation guide and Blog:Event Reason Derivation XML Rules Change to Business Rules Within First Half 2021 Production Release - Innovation Alert

  1. The first thing you should bear in mind is that each business rule consumes processing time when saving, this means that the less onSave rules you have, the better your performance will be when saving and this leads to our first best practice which is "Group your event reason derivation in a single rule using "Else IF" see example below;

Important:

We recommend that you use the Event Reason Derivation scenario while creating a new rule instead of the Basic scenario.

  • Trigger Rules for Event Reason Derivation
  • You can use this scenario to create rules that derive the event reason for the Job Information Model and Compensation Information Model.
  • rrrrr1.png

Example:

KB1.jpg

KB2.jpg

  1. When you have the event reason derivation enable, the event reason field won't be available, which means that you must provide a logic to define the event reason for all possible scenarios and at the end set a catch all rule or a catch all event reason. If you forget to do this you may get the following error message in certain changes "Unable to determine the event reason for the proposed changes", this message is not a defect but a configuration issue which means that based on the clauses you configured for the event derivation rule, it was not possible to set the event reason.
    1. In the example below you have a screenshot that shows the catch all even reason: NOTE: It is important that you still check that Event Reason is NULL before setting the Catch All Event Reason. D not use ELSE otherwise it can still overwrite Hire, Termination, Rehire  events or Events specified manually during Import.

ESLEIF_CATCHALL.png

 

    1. If you want to set the catch all in a different rule, it is possible too. For that please refer to the KBA 2475778 - Error: Unable to determine the EventReason for the proposed change(s)
  1. Set your business rule starting for the more specific scenario to the more general, for example: If field A and B and C are updated then use the event reason A else if field A and B are updated then use the event reason B else use catch all event reason. This is because, if you set the more general event first, the more specific events will never be triggered. Please note that in the example provided in the topic one the rule starts with the event that validated the bigger set of conditions drilling down to the more general;
  2. Event reason derivation business rules are triggered also during new hire, manage pending hire, add global assignment and concurrent employment and internal hire, as a result you should always add in your if clause an additional condition where the event reason is equal to null. To explain this, consider that you are hiring an employee and selecting the new hire event reason, if there is no condition validating the event reason field, when you click on submit your hire, the event reason rule will be triggered changing the event reason (please see below a screenshot);

KBA5.jpg

FAQ - Additional Information

Q) Which Implementation Guide can I find more information on this topic?

A) Guide: Implementing Employee Central Core

Chapter:  Event Reason Derivation from XML

Employee Central Support Engineer Team Action: Please refer to Internal Meno

Q) Can I use .value in event reason derivation rule?

A) The .value selection is only available in Business Rules of a Model Base Object (eg. Job Information Model). In these Rules when setting a value such as Event Reason it is required to select the .value option.

See: .value

 eeeppe2022-03-31_12-30-07.png

See Also

  • 2541909 - Job Info: How to configure the Event Reason (event-reason)
  • 2808336 - The 'Edit Link' Permission in Employee Central
  • 2475778 - Error: Unable to determine the EventReason for the proposed change(s)
  • 2274816 - How to Create an Event Reason
  • 2396664 - Manual / Automatic event reason and workflows derivation
  • 2617429 - Event Reason Availability and Configuration in Employee Central

Keywords

.value, Event Reason Derivation Business, Rule, catch all , KBA , best practice , event reason derivation rule , LOD-SF-EC-JOB-EVN , Events, Derivation & Employee Status , LOD-SF-EC-POS-JTP , Job Information to Position Sync , LOD-SF-EC-CMP-EVN , Events, Derivation & Employee Status , How To

Product

SAP SuccessFactors Employee Central all versions ; SAP SuccessFactors HCM Suite all versions