This scheme uses the blocks of time worked ONLY to calculate the amount to charge
for crew. Overtime rates only determined by the number of hours worked, NOT when those hours were worked.
Basically it divided the shifts into blocks – so the first 8 hours can be charged at one rate, the next 4 hours are charged at a different rate and the third and fourth blocks of hours are charged at different rates.
So looking at the script – scroll down to the Procedure GetCrewPrice;
const
TimeBlock1 = 8; //hours
TimeBlock2 = 4; //hours
TimeBlock3 = 4; //hours
TimeBlock4 = 8; //hours
Saturday = 6; // Day 6
Sunday = 7; // Day 7
SaturdayMultiplier = 1.5; // used for Saturdays
SundayMultiplier = 1.75; // used for Sundays
HolidaysMultiplier = 2; // used for Holidays
// our GetEasterDay function has 3 options for working out the Easter Sunday
EASTER_JULIAN = 1;
EASTER_ORTHODOX = 2;
EASTER_WESTERN = 3;
BaseRateMultiplier = 1;
TimeBlock1Multiplier = 1;
TimeBlock2Multiplier = 1.25;
TimeBlock3Multiplier = 1.50;
TimeBlock4Multiplier = 2.00;
TimeAndHalfMultiplier = 1.5;
DoubleTimeMultiplier = 2;
This defines how long each block is so
Timeblock1=8; – This sets the first block of hours to 8 hours
TimeBlock2 = 4; - This sets the number of hours after the first time block – so in this case hours 8 to 12 of the shift
These figures set how much to charge for each of those blocks
TimeBlock1Multiplier = 1 – this sets the charge to be 1x the hourly rate in the first block hours
TimeBlock2Multiplier = 1.25; - This sets the payrate for any hours in the second block to be charged at 1.25 the hourly rate.
So for example – if you charge all hours the same you could change all the timeblock multipliers to 1 which would mean however long they worked they would get the same hourly rate.