How to modify job info records based on seniority
Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental.
SAP SuccessFactors Employee Central (EC) - All Supported Versions
Reproducing the Issue
Requirement is to update a job info field automatically based on seniority.
This can be acheived through Off Cycle Event Batch feature.
STEP 1: Using OffCycleEventBatch for Modifying Employee Records
Currently, the rules engine is capable of processing validations and making updates to attributes when a rule condition is met as a result of the transaction that is completed. However, as an HRIS system has to process these rules when the condition is met at a time later than when the transaction is executed.
Example use cases that should be supported:
- When an employee reaches 50 years of age, the employee becomes eligible for a free retirement advisory class. In this scenario, the condition is met at a time different from when the transaction is entered, which is typically at new hire.
- If an employee completes 10 years of service, the employee is eligible for a car. Similar to the age based processing, the service based processing has the same condition.
OffCycleEventBatch is MDF object which is used to capture the configuration to run rules on batch of records.
The OffCycleEventBatch object has a filter condition and an associated rule.
The filter condition will be utilized to get the records for which the condiiton is met and the associated rule can be used to define further filter condition (if required) and the action (SET) that needs to be taken on the record.
The SET action is supported only on the HRIS employee entities not MDF entities and the rule should modify only a single employee entity. Multiple entities (types of entity) modification in single rule is not supported.
The effective date of the modified record will be set to the date on which the OffCycleEventBatch processed this record. Providing effective date as user input is not supported.
EXAMPLE 1: If an employee completes 3 years of service, the employee is eligible for a car if employee works in India.
This can be achieved by creating an OffCycleEvent with date filter on service date with offset as 3 years and associating an action rule to it which will change the compensation information to set eligible for car to true when Legal Entity of employee is in India.
Associated Action Rule
[Note] Only one entity type can be modified using this rule. In above case only compensation can be modified , not job and compensation together. And the base entity of OffCycleEvent objct should be same as base entity of the associated rule.
EXAMPLE 2: If an employee is more than or equal to 50 years of age and has worked for more than an year in company, employee is eligible for car.
Associated action rule
3. Pay Scale Reclassification
Procedure to perform pay increases for represented employees in pay scales.
- OnSave rules to create compensation records during imports should be configured in the system. The rules will run post save and create relevant compensation records (save uses imports framework internally, the flag to run rules during imports should be turned on from Admin center)
- BizXDailyRulesProcessingJob should be configured in the system to run daily.
Configure OffCycleEvent Batch to
- Filter employees based on seniority date
- Change job information pay fields
Associated action Rule
STEP 2: Configure the BizXDailyRulesProcessingJob job to run OffCycleEventBatch Daily using Provisioning
This Job will pick all active OffCycleEventBatch Records and execute them.
You cannot preferentially select which offcycle events batches should be picked up by the job.
[Note] The Job should be configured to run daily in provisioning, this setting should not be modified.
Off Cycle Event Batch, OffCycleEventBatch, Job Info , KBA , LOD-SF-EC-JOB , Job Information , How To