# HR Module

## What the HR module does

The HR module adds holiday and overtime management to NCompass. Staff request annual leave and overtime from inside NCompass, see their entitlement and booking history, and get warned about clashes before they submit. Managers and HR staff work through approval queues, record absences on behalf of staff, and watch the picture on dashboards and a team calendar.

The module has two areas, both under the top-level *HR* menu:

- **Holidays** - annual leave and absence: requests, approvals, entitlements, absence types, blackout dates, conflict rules, time off in lieu.
- **Overtime** - overtime requests, recording the time actually worked, approvals and the overtime report.

Day-to-day screens live under *HR &gt; Holidays* and *HR &gt; Overtime*; the rule and entitlement administration screens live under *Administration &gt; HR*. Bank holidays are separate - they are maintained under *Administration &gt; Bank Holidays*, are not part of the HR licence, and feed the working-day calculations.

## Licensing and access

The module is enabled by the `HR Module Installed` licence setting. Without it the HR menu does not appear at all.

Each screen is controlled by the usual NCompass security functions, under *HR Absence System* in Security Roles. Two defaults are worth knowing when access "mysteriously" differs between the two areas:

- The **holiday** approval queues are available to tier-2 users by default, but the **overtime** approval queues are denied by default - they must be explicitly granted in Security Roles, even for administrators.
- The holiday Manager and HR approval queues additionally require the person's own salesperson record to carry the **Manager** or **HR** role. Someone with the security function but not the role is refused with a message about the missing role - that is not a Security Roles problem.

## Roles

Every person in the HR module is a salesperson record, and the HR roles are set on the salesperson's **HR** tab (see Configuration &amp; Staff Setup):

- **Staff** - included in the HR module. Anyone without this flag does not appear anywhere in HR - not in pickers, queues or calendars.
- **Manager** - approves requests from the staff who report to them.
- **HR** - gives final approval, sees all staff, and manages entitlements, absence types and time off in lieu. HR can also approve a request directly if a manager is unavailable.

Which employee a screen shows is driven by the workstation's default salesperson. The `Allow User To Change Employee Selection` setting (default No) keeps the employee selection locked to that person, so each member of staff should have their own login tied to their own salesperson record.

## The approval workflow

Requests follow the same two-stage pattern in both areas:

**Staff member submits &gt; Manager approves &gt; HR approves**

- A request goes to the staff member's manager - either of the two **Reports To** managers on their record can action it.
- For holidays, which stages are actually required depends on the absence type: annual leave needs both, sickness needs none (it is effectively approved as soon as it is recorded), and some types need only the manager.
- A decline at either stage ends the request; declining always requires a note, which the staff member sees.
- Overtime has an extra stage: after approval the staff member records the time actually worked, and if it exceeds what was requested the manager must re-approve before HR signs off.

## Email notifications

The module sends plain emails (using each salesperson's email address) at these points:

- Request submitted (holiday or overtime) - to the staff member's manager(s).
- Manager decision (holiday or overtime) - to the staff member.
- HR decision (holiday) - to the staff member.
- Actual overtime recorded - to HR; and if re-approval is needed, to the manager(s).

Nothing is emailed when a request is cancelled.

## Not yet available

The original release notes for this module describe some capabilities that are not yet in the product. Support will be asked about these by customers reading older material:

- Calendar integration - leave requests do not create Outlook/calendar entries (no "REQUESTED - PENDING APPROVAL" / "CONFIRMED" entries).
- Automatic HR notification when sickness is recorded, and sick-note receipt tracking.
- Holiday reporting - there are no leave balance, absence trend, upcoming leave or declined-request reports. The only HR report today is the Overtime report (see the Overtime page).
- Enforced minimum/maximum booking limits - the settings exist but requests are not validated against them.
- "At least X people must be present" conflict rules and per-person blackout dates.
- A configurable holiday year - the holiday year currently always runs 1 January to 31 December.