You are trying to request leaves for any employee in your system and when trying to save, you are getting an error saying "Business key values already exist!"
"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) - Time Off
Reproducing the Issue
- Go to any Employee;
- Go to Time Management session;
- Click in Administer Time;
- Click in New Absence:
- Try to save a new Leave request;
- Get the error message;
In the Employee time object you have defined a business key which is repeating causing the issue.
For MDF object we must always have an external code and this external code must be unique so regularly when you create a leave, the system automatically generates an unique external code and this external codes acts like the primary key for the object, however, the MDF objects we also support business keys which are customized logics that customer can use to determine the primary keys for the MDF object
The business key can be simple or composed by more than one fields of the MDF objects and acts like a primary key which means that whatever is the logic the customer use, it must always be a unique value per object created.
If for some reason the logic used generates a duplicate value, this will then raise the error "Business key values already exist!" and will not allow saving the object
- Go to configure object definition;
- Check the Time off Related objects (Employee Time, Time Account, Time Account Type, etc.);
- Scroll down to the session Business Key and check if you have any value there;
- In case you have you can either:
- Remove this and let the system use the standard configuration using the externalcode as primary key;
- Check your business key configuration and make sure that your configuration always generate unique primary keys;
EMPLOYEE_HRIS_GO_BUSINESS_KEY_ALREADY_EXIST cannot request leave employee time with same external code , KBA , LOD-SF-EC-TIM , Time Off , Problem