Home      Ask a Question      My Stuff      Help   
  
Scripting - Shift Differentials
Question
ID
185
Category
<Unassigned>
Date Created
1/22/2008 3:41:59 PM
Date Updated
4/13/2015 12:56:52 PM
Can we do a script for a Swing or Grave shift with a time frame say 6:00pm through 10:00 pm then add to their default payrate by a extra percentage/dollar amount for the hours they worked during those times?
Answer
==TimeWorks==

Yes. The most standard would be to first create a split for the hours you want to designate as Swing, Grave, etc.. Next you want to designate the pay rates for the period. For example:

split (6:00pm);
split (10:00pm);

if ((department = "400") and touches (6:00pm, 10:30pm))
{
category = "Swing";
payrate = payrate + .50;
}

This splits the beginning (6:00pm) and end (10:00pm) times for that period.

It then says that if the employee is in department 400 (just a generic example) and any time he is clocked in between 6:00pm and 10:30pm it will flag it on the time card category "Swing" and give him the payrate + $.50.

You can also map it to say a different payrate field in Employee Setup:

split (6:00pm);
split (10:00pm);

if ((department = "400") and touches (6:00pm, 10:30pm))
{
category = "Swing";
payrate = payrate1;
}

So with the last line in the above article we change it from "payrate + .50" to "payrate1" which references "Alt PayRate 1" in Employee Setup.

Note. If you are planning to have multiple shifts set up and you have the "OutPunchCompletion" setting on under the 'Miscellaneous Settings" the script will not work correctly if employees log in and out of different departments that overlap the shifts/splits daily.

Because the system does not recognize the "OutPunchCompletion" punch when they switch departments as a real/valid punch it will not apply the script/split to it. Just like the disadvantage of the "Auto Lunch" feature cannot be used or missing punch counts not being shown on the left side clock activity screen.

==TimeWorks Plus==

For TimeWorks Plus we can use the same example and there would be slight differences with the scripting and where scripts are to be placed.

This is for adding the differential to the current rate:

- Under the SplitScript Processing Rule:

split (6:00pm);
split (10:00pm);

- Under the PayRateScript Processing Rule:

if ((employee.department = "400") and touches (6:00pm, 10:30pm))
{
category = "Swing";
payrate = payrate + .50;
}

This is for assigning the different rate from a different pay rate field in Employee Setup:

- Under the SplitScript Processing Rule:

split (6:00pm);
split (10:00pm);

- Under the PayRateScript Processing Rule:

if ((employee.department = "400") and touches (6:00pm, 10:30pm))
{
category = "Swing";
payrate = employee.payrate1;
}



Back to Search Results