The autofill feature aims to create the required shifts based on the data of workload averages from previous periods.
Let's suppose the that data represents the number of new support tickets should be processed per hour. Autofill would then create a workload estimate by multiplying each ticket by the number of workforce minutes (WFM) each ticket would required.
Step 1. Find the first hour which has more workload than the number of WFM by plotting the difference of workload minutes against the WFM; as there are no WFM at this point, that's the first hour where there's any load. In that hour you schedule a shift and that shift then removes a 60 WFMs from that hour multiplied by the employee efficiency coefficient also supplied to CakeHR.
Step 2. find the first shift that has unbalanced load — if no such hour was found, go to step 3, otherwise schedule another shift at that hour just like in step 1.
Step 3. find an employee for each of the shifts that were determined to be required by steps 1 & 2. Skip any employees that have an approved time-off request, are marked as unavailable for work, have a shift at that time already or have some other rule (e.g. too many hours worked already at that point).
How the stats are being considered by CakeHR
From the Excel stats import provided for autofill purposes the system will extract averages per every hour, per every day of week. Sounds a bit crazy - don't be afraid, we will explain.
Let's suppose we have a fairly small dataset of three days (two Mondays and a single Tuesday):
When imported, data for every hour is considered separately and average on every hour. Additionally, Autofill distinguishes the data by the day of week.
How does this work in real life?
Let's say, we have imported the above displayed stats into CakeHR system and launched autofill to fill in the shift for a week, starting Monday.
Autofill will go through the provided data to find all Mondays in the dataset. Then, when filling the data for period of 1 hour, between 00:00 - 01:00, it will check all these periods in all Mondays to figure out the average workload. Based on the resulting figure Autofill shall decide if and how to allocate workforce to this period.
This occurs for every hour of every day. In orange below is the data that Autofill will consider as a basis for workload allocation: