> ## Documentation Index
> Fetch the complete documentation index at: https://human-resource-docs.ha-consultancy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Scheduling & Roster

> Define shift patterns, assign employees to default shifts, and build the daily roster on a drag-and-drop Visual Roster Board with attendance tracking.

Plan who works which shift. Set up your standard shift patterns once (Day, Night, Split) and then assign employees to shifts in one of two ways: a default assignment for a date range, or per-day on the **Visual Roster Board** — a drag-and-drop calendar.

## What you can do

* Define **shift patterns** — start/end times, breaks, weekend days.
* Assign an employee to a **default shift** for a date range.
* Build the daily **roster** visually — drag employees onto days under the shift row.
* Record **clock-in / clock-out** events for attendance and overtime calculation.
* Move or remove roster entries with drag and drop.
* View the roster by **day, week, work week, or month**.

## Before you start

* Add the employees you want to schedule — see [Employee records](/features/employee-records).
* Set up your shift patterns first (Walkthrough 1 below); employees can only be assigned to shifts that exist.

## Walkthroughs

### Walkthrough 1 — Set up a shift pattern

Define how your company works a day — start time, breaks, weekend days — so you can assign people to it.

1. Search for **Shift Config List**. The list opens.
2. Click **New**. A blank shift card opens.
3. Fill in the header:
   * **Code** — a short identifier (e.g. `DAY`).
   * **Name** — what people will see (e.g. `Day Shift (9-5)`).
   * **Shift Working Hours** — total paid hours per day (e.g. `8`).
   * **Weekend Days** — comma-separated, e.g. `Saturday,Sunday`. These show as non-working on the roster.
   * **Workdays Count** — typical working days per week (e.g. `5`).
   * **Add to Roster** — tick if this shift should show up on the Visual Roster Board.
4. In the **Shift Config Lines** section below, add the daily time blocks. For a 9-to-5 with a one-hour lunch:
   * First row: From `09:00`, To `13:00`, Type `Work`.
   * Second row: From `13:00`, To `14:00`, Type `Break Time`.
   * Third row: From `14:00`, To `18:00`, Type `Work`.
5. Click **Back** or press **Esc**. Saved.

The shift is now ready. The work and break lines drive both the roster visualization and the hourly rate used for overtime.

<Tip>Split shifts (e.g. 9-13 plus 17-21) work — just add the relevant time blocks in order.</Tip>

***

### Walkthrough 2 — Put an employee on a default shift

For employees on a fixed shift, set it once with a date range. The roster picks it up automatically; you can still override individual days.

1. Open the employee's card.
2. On the ribbon, click **Shift**. The employee's shift list opens.
3. Click **New**.
4. Pick the shift from the dropdown.
5. Set the **From** and **To** dates. Use a far-future date if the assignment is open-ended.
6. Press **Esc** to save.

The roster will now show this employee on the chosen shift for every day in the range.

***

### Walkthrough 3 — Build a roster

Move people onto specific shifts day by day using the Visual Roster Board.

1. Search for **Visual Roster Board**. The board opens with the current month.
2. Change the view if you like — Day / Week / Work Week / Month — from the toolbar.
3. On the left sidebar, type to filter the employee list.
4. Click and drag an employee card onto the date cell, under the shift row you want.
5. Release. The assignment is saved instantly and shows in the calendar.

To **move** an assignment, drag it to a different date or to a different shift row. To **remove** one, right-click it and choose Delete.

***

### Walkthrough 4 — Record a clock-in or clock-out

Record an attendance punch. Employees usually do this from a mobile app or a wall-mounted clocking device; HR can also enter punches manually.

1. Search for **Employee Punch List**.
2. Click **New**.
3. Fill in:
   * **Employee** — pick from the lookup.
   * **Type** — `In` (clock-in) or `Off` (clock-out).
   * **Time** — defaults to now; adjust if back-filling.
4. Press **Esc** to save.

The punch is now part of the employee's attendance log and feeds into overtime calculation for the month.

## Related features

* [Leave management](/features/leave-management) — approved leave shows on the roster so you know who's away.
* [Payroll setup](/features/payroll-setup) — shift breakdowns drive the hourly rate used for overtime.
* [Master data](/features/master-data) — branches and departments help you filter the employee sidebar on a big roster.
