Skip to main content

Version 9.1.248 (17 August 2026)

Notifications

Update materialised birthday column to Alias 'Birthday', else query can't find the column (#153450)

Problem

  • Manager Birthdays and Work Anniversaries email template not firing on scheduled jobs 

 

Solution

  • Update the materialised birthday column to Alias 'Birthday', else query can't find the column

 

Implement end-of-service warning notifications for month and day period warnings (#138602)

Problem

  • The Line Manager is not warned on user is ending their service soon

 

Solution

  • Introduced new functionality to support manager notifications about subordinates' upcoming end of service, both for short-term (days) and longer-term (months) periods.
  • It adds new event and recipient codes, extends the data model and queries, and updates the notification service to deliver these new types of notifications.
  • Additionally, it introduces a bi-weekly schedule type and improves code structure by refactoring repeated logic.

 


Performance Management

Fixing mdb script reference (#153492)

Problem

  • Models do not open because the MDB script reference is incorrect. 

 

Solution

  • Fixed the MDB script reference. Modals open as expected again.

 

Resolved issue where Overall Final Score label mappings were not showing (#153405)

Problem

  • Score label mappings for Overall Final Score were not showing

 

Solution

  • Fixed condition check that determines whether to display for overall final score

 


Job Management

Insert missing UserCompanyDates records during user import (#146950)

Problem

  • `ImportUserDatesAsync` (used by the JobProfiler user import) only ever `UPDATE`d existing `JobProfiler.UserCompanyDates` rows. Since the materialisation rework, `UserCompanyDates` is no longer created as part of the User aggregate, so newly imported users never got a `UserCompanyDates` row created for them — their start dates were silently dropped.

 

Solution

  • Added an `INSERT INTO JobProfiler.UserCompanyDates` step (before the existing `UPDATE`) that creates a row for any imported user matched by username who doesn't already have one for that ruleset, using the same create-vs-update semantics as `UserDomainService.UpdateUserCompanyDatesIfRequiredAsync`.
  • Replaced the row-by-row string-concatenated `INSERT` loop used to populate the `#UserDates` temp table with a `SqlBulkCopy`, matching the pattern already used elsewhere in `UserQueries.cs` (e.g. `ListUserOrgPathsAsync`). This also removes the manual string escaping that was needed for the old concatenation approach.

 


Communication Portal

Resolved archived items not shown when collapsed (#151781)

Problem

  • Archived items can not be seen when the system alert has elapsed

 

Solution

  • Add a change to the query that, when searching archived, ignores the dates of the system alert to be shown

 

Resolved flatpickr that caused errors on communication portal banners (#153083)

Problem

  • flatpickr injects a hidden type="number" minute input with step="5". If the banner datetime has a minute like 17, browser validation marks that hidden control invalid and blocks submission before the AJAX save handler runs.

 

Solution

  • Set minuteIncrement: 1, so all valid minute values 0-59 pass native validation

 


Data Warehouse

Added ID fields within lmEvent tables (#151434)

Problem

  • Field EventStatusID needs to be added within lmEventSchedules
  • Field AttendanceStateID needs to be added within lmEventScheduleSessions
  • Field BookingStatusID needs to be added within lmEventScheduleAttendees

 

Solution

  • Added the field EventStatusID within lmEventSchedules 
  • Added field AttendanceStateID within lmEventScheduleSessions
  • Added field BookingStatusID within lmEventScheduleAttendees

 

Updated Insert step for lmEventScheduleSessions_Staging_V9 (#153307)

Problem

  • Duplicate results are returned 
  • The #Source is not needed in Insert lmEventScheduleSessions_Staging_V9 

 

Solution

  • Added DISTINCT and removed #Source within Insert lmEventScheduleSessions_Staging_V9