Capping of overtime hours on monthly basis in Employee Central Timesheet
Many clients with complex business processes that track employee times usually have a common requirement to restrict employees from working (and by extension, booking) overtime over a certain number of hours. I have also observed in most cases that these restrictions are usually for the work done in a month rather than strictly in a week. Therefore, there is a need to accumulate the employee overtime booking to a certain specified capping value over a period of one month and then continue monitoring this accumulated value against new bookings by the employee. When the capping value is exceeded, the requirement is to stop the employee from going ahead and booking the OT at his end and rather raise an error message for the employee to know that the maximum capping hours for the month has been reached.
A heavy industry client would like to track its employees working times with special rules around overtime payment. This customer has a set of employees that are eligible for overtime. However, these employees are restricted by company policy from working more than 20 hours in a month. In case an employee tries to book overtime over the capping value of 20 hours, the system should flash an error message and stop the employee from recording these overtime hours.
Limitation of EC Timesheet weekly periodicity
As per the SAP KBA 2554939 – Monthly based Time Sheet related questions – the scenario where the overtime hours need to be capped across a month is not possible in standard functionality of EC timesheet as the it is of a weekly periodicity. For e.g., as mentioned in the KBA, the requirement where a monthly surplus of overtime can be cumulated up to max. 20 hours and any surplus of exceeding 20 hours at the end of the given month will need to be cut off, is not achievable since the timesheet is weekly based.
Standard System Level Workaround Solution
Indeed, the employee central timesheet object has a weekly periodicity and therefore the accumulation and checks of overtime capping beyond one week is not possible. However, SAP has provided a concept of time collectors that can be used to achieve our objective. Time collectors are going to be the “star of the show” in this solution design as it is now possible to set a monthly periodicity to the time collector and accumulate the OT hours that an employee has in total for a month in the EC timesheet booking.
High Level Solution Description
Before we document the solution, a quick heads up that this is written for duration based recording. However, it can be adapted for clock times based recording too with the general time type groups and time valuation adjusted to cater in a similar way as for duration based cases.
Here I will describe the general system based flow of how to set up the solution to accumulate the monthly overtime value in a time collector and raise an error message when the capping value has been reached (or breached).
Solution Steps to perform capping of the overtime hours based on monthly threshold value
a) Create time types classified as attendances to enable the employee to record his working time
- Time Type: Working Time [Official working hours spent on official duty]
This attendance type will be used by the employee to record his working time.
2. Time Type: Business Travel
3. Time Type: Training Hours
b) Create a time type group to identify the recorded working times/overtime calculation/maximum OT value/planned working time of the employee in the EC timesheet
- Creating a time type group to identify the recorded working times of the employee in the EC timesheet
c) Create a time valuations to perform the calculation required to identity overtime & measure against the capping value.
1) Create time valuation to calculate the overtime hours based on the input time types of working hours, business travel, training hours recorded by the employee in the timesheet against the threshold value of scheduled planned working time excluding the breaks.
1.1) Create a time valuations for assessment of the employee times to calculate the overtime hours based on the input time types of working hours, business travel, training hours recorded by the employee in the timesheet against the threshold value of fixed time such as 8 hours.
- In case you would like to use a fixed number of hours to ascertain the extra ones as overtime, use the fixed value option in the threshold category dropdown.
- Put a numeric value in the threshold value box as below for 8 hours.
d) Create time recording profile to assign to the employee in their job information input for time recording profile
This time recording profile is then assigned to the employee in job information section as below:
The time collector value also can be checked through the time workbench as below where you will be able to see various time collectors set up in the system and their values:
The set up of the monthly values of the time collectors for achieving the monthly capping of overtime hours can be accomplished for both duration based as well as clock times based positive time scenarios. There could be scenarios where quarterly overtime capping can apply. Though this cannot be achieved through the time collector configuration – there is a workaround that can be applied. The monthly collector value can be passed into payroll where the Employee Central Payroll system can perform a CRT cumulation of a quarterly time frame and the payment of the OT hours beyond the quarterly cap can be dropped off in payroll. In order to answer customer query on how the employees would be kept up to date on how much OT is being paid out as against how much was worked, EC Payroll can put this information in the pay slip for the employee to check every month.