Symptom
An employee has an employment type "Contract" with a future-dated contract end date. The system created a contract expiry alert based on the alert rule logic. The alert was saved to the database to be triggered on the alert effective date.
Later, the employee got converted to Permanent employment type. However, the system still triggered the contract expiry alert on the alert effective date.
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 - Alerts & Notifications
Reproducing the Issue
- Configure an alert rule to trigger a contract expiry alert (say, one month before the contract end date).
- System creates an alert for the employee with the Contract employment type.
- Change the employee's employment type to "Permanent" before the alert effective date.
- Observe that the contract expiry alert is still triggered on the alert effective date.
Cause
- The system creates alerts based on the configured alert rule logic and stores them in the database with a future effective date.
- Even though the employee's employment type is changed from "Contract" to "Permanent" before the alert effective date, the previously created alert remains in the database and is not automatically deleted, causing the system to send out the Contract expiry alert.
Resolution
To prevent such alerts from being triggered, you can consider the following options:
Option 1:
- Navigate to the "Manage Alerts and Notifications" page in SAP SuccessFactors Employee Central.
- Regularly review pending alerts to identify alerts that are no longer valid due to changes in employee data (e.g., employment type changes).
- Manually delete invalid alerts before their effective date to prevent them from being triggered.
Option 2:
Delete the old pending alert as explained in the How Old Pending Alerts Are Handled | SAP Help Portal section in the implementation guide.
You can do so by including an ELSE-IF condition in the Alert rule (Refer sample rule screenshot below) which checks if the Employment Type is equal to Permanent and the THEN conditions to do the following:
- Set the alert effective date as 31/12/9999 (meaning that the system will create a new alert with an effective date of 9999 but it will never get triggered).
- Set the same alert message and alert workflow (same as that was configured for the Employment Type = Contract).
- Delete the Old Pending Alert (this will delete the existing alert for Contract End Date that is saved in the DB and thereby prevent it from being triggered).
Please refer to the Resolution section in the KBA 2677124 - EC Alerts: System Logic for when a saveAlert Rule is Removed or Changed - SAP for Me to review the different scenarios as to how the alerts will be triggered (i.e., existing alerts deleted and new alerts created) after updating the Alert rule and then running the EC Alerts & Notifications job.
Note: In case the alert rule has an IF condition which checks if the Contract End Date value is not equal to Null, please set the Contract End Date to 31-12-9999 in Job Information when the employment type is changed to Permanent.
Keywords
SAP SuccessFactors, Employee Central, contract expiry alert, employment type change, contract, permanent, conversion, manage alerts and notifications, alert rule, pending alerts, contract end date, alert effective date, Delete Old Pending Alert Flag , KBA , LOD-SF-EC-ALR , Alerts & Notifications (saveAlert - EC Core only) , How To
Product
Attachments
| Pasted image.png |
| Pasted image.png |
SAP Knowledge Base Article - Public