Annual Leave

mark.thompson@oneadvanced.com Updated by mark.thompson@oneadvanced.com

Overview

CBM can now automatically manages a staff member's annual leave entitlement directly from their System User Employment Contract, and automatically deducts booked leave when an annual leave booking is entered in the diary. This gives you a view of leave accrued, leave booked, and leave remaining, without manual tracking.

Setting up Annual Leave on the Employment Contract

The calculation of Annual leave is controlled by the 'Calculate Annual Leave for Contract' field on each System User Employment Contract.

  • When this is 'No', all annual leave fields and the 'Holiday' tab are hidden, and no entitlement is calculated
  • When this flag is 'yes' the 'Holiday' tab/section becomes available along with the entitlement unit, accrued annual leave, default holiday year, standard working week hours, and leave carry-over fields on the Details Tab
    • 'Entitlement Unit — leave' can be tracked in either **Days** or **Hours**. Selecting the unit determines which entitlement fields are shown (e.g. standard annual leave entitlement days/hours). The unit becomes mandatory once the accrual flag is enabled. [0-cite-3](#0-cite-3)
    • 'Leave Carry-Over' — if 'Allow Leave Carry Over' is set to 'Yes', you must enter a maximum carry-over value. The system shows 'Max Carry Over Days' for day-based contracts and 'Max Carry Over Hours' for hour-based contracts
    • 'Do Not Use Provider Standard Annual Leave Entitlement' will be set to 'No' and can no be changed if the Provider linked to the Responsible Team does not have any Annual Leave Entitlement recorded for it. If the Provider does have Annual Leave Entitlement recorded this can be set to 'Yes' and will set the 'FTE Standard Annual Leave Entitlement (Hours)', 'FTE Standard Working Week (Hours)' and 'FTE Standard Annual Leave Entitlement (Days) fields.'

How Annual Leave Entitlement is Calculated

A scheduled background job (`CalculateAnnualLeave`) periodically (standard is overnight each night) processes eligible contracts and generates leave entitlement records.

A contract is picked up by the job when it is 'Active' or 'Suspended*', has the 'Calculate Annual Leave for Contract' set to 'Yes, has an Entitlement Unit, a Default Holiday Year, contracted hours per week, and a next-entitlement date (the first day of the Default Holiday Year) that is today or in the past.

The system generates one 'Entitlement' record per holiday year from the contract start date up to the current date, based on the Contracts Default Holiday Year, Year:

  • For a full holiday year, entitlement = the standard yearly entitlement scaled by the contracted days/hours per week
  • For a partial year (e.g. a contract that starts mid-year), entitlement is pro-rated by the number of days worked in that year out of 365
    • For a Zero Hour Contract a new indictor will be added in a future release to the Employment Contract Types and then any contracts using this will have Entitlement Calculated based on the hours they have worked (rather than the contracted hours per week as this will be zero)
  • Each created record carries a **Leave Booked** and **Leave Remaining** amount, a start/end date for the period, the unit, and a record type. After creation, records are linked and the contract's **Accrued Annual Leave** is updated with the calculated totals
  • Leave record types that appear in the 'Holiday Tab' for a contract include
    • Entitlement
    • Entitlement Adjustment
    • Annual Leave (a booking deduction)
    • Manual Change

Recalculation

If contract details change, a recalculation trigger is raised and processed. There are two options for this:

  • Partial (adjusts only the affected portion of the current year)
  • Full (reverses the previous year's entitlement with an adjustment record and recreates it). This keeps the balance correct after mid-year changes.
  • Provider Triggered - this will become available in a future release, allowing all Employee Contracts for a Provide to be recalculated based on a Provider Level change of entitlement

The Holiday Tab / Annual Leave Records

The Holiday Tab (shown only when accrual is enabled) contains the leave entitlement records generated for the contract. Each record stores the leave booked, leave remaining, start/end dates and unit.

You can also make a Manual Change record. When creating one, the system pre-fills the unit from the contract, sets the record type to Manual Change, and applies minimum/maximum limits to the leave booked value (up to 100 days or 2400 hours). Editing the leave booked value requires the appropriate edit permission.

Manual changes and deletions automatically trigger a re-link so the contract's accrued balance stays accurate.

Booking Annual Leave from the Diary

When staff annual leave is entered in the diary, a scheduled job (`ProcessDiaryBookingsAnnualLeave`) automatically converts it into a leave deduction against the contract.

Only bookings whose booking type is flagged as 'Annual Leave' 'Yes' (and classed as an internal non-care booking) that have not yet been holiday-calculated are picked up.

For each such booking, the system:

  1. Finds the entitlement period that contains the booking's start date; if none exists, no deduction is made.
  2. Calculates the leave amount consumed, based on the entitlement unit.
  3. Creates a new 'Annual Leave' record with a negative Leave Booked value (a deduction), linked to the diary booking, and updates the contract's 'Accrued Annual Leave'

Holiday Duration Override

When creating an annual leave booking, the 'Holiday' tab in the diary booking draw shows the calculated 'Holiday Duration' and lets you tick 'Override' to enter a custom holiday duration. This override tab only appears for annual leave booking types.

Validation rules on the override:

  • Only annual leave booking types may have a holiday duration
  • If Override is ticked, a value must be entered
  • The override must be less than the booking's own duration
  • If an annual leave booking is later deleted or changed, the associated leave records are removed/recalculated so the balance corrects itself

What this means for you

  • Set 'Calculate Annual Leave for Contract' to yes, enter an **Entitlement Unit**, and a **Default Holiday Year** on each required staff contract to enable automatic tracking
  • Entitlement builds up automatically per holiday year, pro-rated for partial years.
  • Booking annual leave in the diary automatically deducts from the balance, with support for half-days and manual duration overrides
  • The 'Holiday' tab gives a running record of entitlement, bookings, adjustments and any manual changes
  • Do not use for Zero Hour Contracts at this point, please wait until the August Release

Was this article useful?

Contact