Skip to main content

Calendars and shift times

Stage two tells the system what a working day is. Until it knows that, no punch can be judged and no absence can be counted.

Five screens, and one distinction that trips up every client at least once: the calendar and the roster are not the same thing.

The order​

  1. Time Template. The clock times. Everything else picks from this.
  2. Calendar. Which days of the year the company works, and what a day costs in policy terms.
  3. Calender Date Template. The year's dates, so you are not keying 365 rows.
  4. Public Holiday. The gazetted days, against the calendar.
  5. Shift Pattern. The repeating cycle a crew works.
  6. Shift Roster. Which people run which pattern, from which date.

Time Template, first​

A Time Template is one named stretch of clock time: a From Time and a To Time, with a name like General Shift, A Shift, B Shift, Night Shift, Half Day Saturday.

It also carries the properties of that stretch of time. Whether it is a weekend. Whether it is flexible, which is how an office that cares about hours worked rather than the hour of arrival is handled. And the conditions and policy decisions that say what the system should conclude from an arrival inside or outside it.

Key every distinct working time the company has, and no more. A manufacturer running three shifts with a general office time and a short Saturday needs five templates, not fifty. They are reused by both the calendar and the shift patterns, so getting the small set right here saves work twice.

Calendar​

A Calendar is a year of days for one working arrangement. Its working time lines say, for each date or each run of dates, whether it is a working day, a weekend or a holiday, and which Time Template applies.

The calendar also has a Policy tab, and this is the part people do not expect. The calendar is where the rewards attached to attendance are set: whether an attendance allowance is paid and at what amount, whether a perfect attendance allowance is paid and at what amount, and which wage type each of those is paid as. It is also where the sandwich rule lives, which is the rule about a working day caught between two days off.

So a calendar answers two questions at once: which days does the company work, and what does a day of attendance or absence mean in money and policy terms.

Most clients need more than one. A factory on six days and an office on five are two calendars. Which calendar a given person follows is named on his Employee Policy Profile, not on the calendar itself.

Note the wage type fields: if the client wants an attendance allowance, the wage type for it has to exist before you can finish the calendar. That is a dependency running backwards from stage two into stage five, and the clean way to handle it is to set up the calendar's days now and come back for the policy tab after the wage types exist.

Calender Date Template​

Keying a year of dates by hand is a day's work and a day's worth of mistakes. Calender Date Template holds the shape of a year, its months and years and the financial day, month and year each date belongs to, and the calendar is built from it.

Set this up once per client. You will use it every January.

Public Holiday​

Public Holiday is one document per calendar, with a line per holiday: the date and what it is called. Eid, Independence Day, Quaid-e-Azam Day, and whatever else the client observes.

It is a separate screen from the calendar because the holidays change every year while the working pattern does not, and because in Pakistan half of them are not known until a month beforehand. Add them as they are announced.

Why the calendar and the roster are two different screens​

This is the question every client asks, and it deserves a straight answer.

The calendar is about the company. It says: on the fourteenth of August this company does not work. On a normal Tuesday this company works the general shift. A working day with a day off either side counts as a sandwich. A full month of attendance earns an allowance. None of that mentions a person. It is true of the company, or of one working arrangement within the company, and it is the same for the five hundredth employee as for the first.

The roster is about people. It says: Asif Mehmood works A Shift on the third of March and is off on the fourth. That is a statement about one man on one real date, and it cannot be made on the calendar because the calendar has no names on it.

They answer different halves of the same question. To judge whether a man was late you need both: the calendar to know that the day was a working day at all, and the roster to know which shift he was supposed to be on.

A client with one shift and no rotation still needs a calendar. He may genuinely not need a roster, and attendance will work without one.

Shift Pattern​

A Shift Pattern is the repeating cycle, not the dates. It has a Cycle Length in days, and one line per day of the cycle: the day's offset within the cycle, the Time Template that day is worked on, and whether it is an off day.

Four days on and two off is a six day cycle with four worked lines and two off lines. A standard Monday to Friday office is a seven day cycle with five worked and two off. A three shift rotation where a crew does a week of mornings, a week of evenings and a week of nights is a twenty one day cycle.

The pattern also carries a required headcount per day, for a client that needs to know a shift is short before the shift starts.

Build the pattern once. You do not build one per crew.

Shift Roster​

A Shift Roster hangs one pattern on real people and real dates. The header names the pattern, a Date From, a Date To and a Cycle Start Date. The lines are the employees it applies to.

The Cycle Start Date is the clever part and the part worth explaining to the client. It is the day the pattern's first line lands on. Two crews rotating against each other are two rosters on the same pattern with different cycle start dates: crew A anchored to the first of the month, crew B anchored a week later. You never copy the pattern per crew, and you never need a pattern per crew.

Three rules the screen enforces:

  • A Date To before the Date From is refused.
  • A roster with no employees on it is refused.
  • The same person twice on one roster is refused.

A person on no roster, or a date outside every roster he is on, has no shift for that day, and the attendance chain treats that as blank rather than as an error. That is why a client with no rosters at all still gets sensible attendance, and also why a client who thinks he has rostered everybody can quietly have a gap.

What reads this stage​

  • The attendance chain reads the roster to know which shift a person was due on, and the calendar to know whether the day was worked at all.
  • Attendance Policy reads the shift's times to decide whether an arrival was late and by how much.
  • Payroll Attendance turns all of that into pay days and deduction days.
  • Employee Policy Profile is where a person is tied to one calendar.
  • Leave Group decides how a holiday or a weekend inside a leave spell is counted.

If something looks wrong​

  • "The Time Template list is empty on the calendar" - the templates exist but are not released. The calendar only offers finished ones.
  • "Everybody shows absent for the whole month" - the calendar has no working day lines for those dates.
  • "Nobody shows late, ever" - the people are on no roster, so there is no due time to compare an arrival against.
  • "The attendance allowance is not being paid" - the wage type is not named on the calendar's policy tab, or the wage type itself does not exist.
  • "The two crews are working the same shift" - both rosters have the same cycle start date. That date is what staggers them.