Skip to main content

Version 9.1.252 (7 September 2026)

AutoDoc

Ensure the admin only receives emails for active employees (#154866)

Problem

  • Admin received a reminder for an outstanding document for a terminated employee

 

Solution

  • Ensure the user and the admin are both active 

 


Performance Management

Added recompile to PM query (#155012)

Problem

  • SQL Server was reusing a cached execution plan that was poor for some parameter values, causing parameter sniffing performance issues.

 

Solution

  • Added OPTION (RECOMPILE) to the main query so SQL Server builds an execution plan per execution using the current parameters.

 

Resolved spyscroll on Contract with Nav and content sections (#154486)

Problem

  • The ScrollSpy used a fixed 310 px offset, causing navigation items near the middle of the content pane to be highlighted instead of the section displayed at the top.

 

Solution

  • Changed ScrollSpy to track sections at the top of the pane using a 100 px tolerance. When the pane reaches the bottom, it switches to a bottom fallback so the final section can still be highlighted. Also added a new utility class to keep contained and split for easy debugging and reference

 

Changed historical graph year order and fixed the graph when 100% rating (#154846)

Problem

  • Historical Score Graph with full rating hides score at the top

 

Solution

  • Ensure rating is not hidden when rating is 100% 
  • Change the Order of Historical Score Graphs 

 

Additional fixes in calendar TypeScript to address the month selector not working. Ensure previous calendar functionality still functions (#154485)

Problem

  • Previous fixes to calendar controls worked, but caused incorrect behaviour on the month picker, and focus was diverted when clicking on the year picker. 

 

Solution

  • Reworked the calendar input to ensure that all calendar controls function (paging arrow, month dropdown, year scroller, date selection). Ensured that the calendar displays docked to the relevant input.

 

Fixed inconsistent date formatting on review year setup phase dates (#154466)

Problem

  • When editing performance year period phase dates, depending on user culture, the formatting can be inconsistent between right after change and on load / reload.

 

Solution

  • Ensure that the date inputs are correctly formatted to ISO for save operations and to user culture for display purposes.

 

Resolved issue where paging to next date on calendar input caused other calendar inputs to focus (#154485)

Problem

  • When more than 1 calendar input exists on a modal, paging to the next month causes other input to be focused and its calendar to be opened. MDB focus trap moves focus to the first input and opens that picker. 

 

Solution

  • Added a guard to prevent focus transfer and ensure that the calendar stays docked to the correct input.

 


Communication Portal

Resolved styling on portal header (#155024)

Problem

  • Left-aligned the unread message count label and the “MARK ALL AS READ” button

 

Solution

  • Added a change to styling to align context flex start

 

Removed border radius from button (#154525)

Problem

  • When the form is being synced to save on the client, it accesses the control .data(), now this only accesses those values it was rendered with or created, but if a value is updated on an existing item within the other file, it sets the .dataset.{} value, which is not read

 

Solution

  • Added change to access .dataset properties
  • And corrected and ensured that the same variables are used for btn-primary and btn-secondary

 

Added backdrop shadows for comms portal and system message (#154521)

Problem

  • When opening the Communication Portal modal, the background behind the modal is not greyed out.
  • When opening a System Message on the Communication Portal, the Communication Portal modal is also not greyed out.

 

Solution

  • Added a backdrop to the comms portal 
  • Added backdrop to System message modal centered and changed the z-index of the different backdrops

 

Resolved DateTime differences (#154595)

Problem

  • When the banner dates are saved, they where configure on the client timezone and saved accordingly, but all other calculations are assumed that it saved in UTC

 

Solution

  • Added a fix to convert back to UTC when saving and, when showing, convert again from UTC

 

Set default width starting point of banners (#154511)

Problem

  • Gantt chart overlaps with the banner list

 

Solution

  • Added a change to increase the default width

 

Added client-side validation for system alert dates (#154902)

Problem

  • A recent change was added where validation within the controller restricted certain values and threw a snack error message, but a suggestion was requested to add client-side validation to display a span text

 

Solution

  • Add jQuery client-side validation that matches to show the span error message

 

Added change to active search users (#134821)

Problem

  • Terminated users could be searched

 

Solution

  • Added a change to the Users view to only return active appointment users

 

Implemented suggestion to move carousel buttons (#153514)

Problem

 

Solution

  • Added CSS to move the prev and next of the carousel to the bottom right

 

Resolved Load more on recipients (#153972)

Problem

  • Load more does not work correctly as the start increases, but in the query it does a skip of start * size. Requested to add a navigate back before search 

 

Solution

  • Resolved the load more to not try to append load with previous results - just load the next page size so only increase number
  • Added navigation back

 

Resolved Audience being created without dates (#153519)

Problem

  • Could save an alert without a valid start and end date selected

 

Solution

  • Added a check within the controller to ensure values are selected

 

Implement standalone Communication portal page for the mobile app (#154022)

Problem

  • The communication portal is a modal and thus cannot be opened in a webview on the mobile app.

 

Solution

  • Open the communication portal in a standalone page that the mobile app can open

 


Data Warehouse

Resolved errors where the records were not inserted in the correct order for jpHRProcessRequestData and jpHRProcessRequestPivotData (#154850)

Problem

  • The records were not inserted in the correct order for jpHRProcessRequestData and jpHRProcessRequestPivotData

 

Solution

  • Resolved errors where the records were not inserted in the correct order for jpHRProcessRequestData and jpHRProcessRequestPivotData within the Insert Staging Steps

 

Resolved an issue with jpReportingLines where the latest records were not refreshed (#154796)

Problem

  • The latest jpReportingLines did not refresh within the DWH

 

Solution

  • Resolved an error within the insert step for jpReportingLines to ensure that the latest records are inserted

 

Added field PersonInPosition within jpJobPositions (#153622)

Problem

  • Field PersonInPosition needs to be added within jpJobPositions

 

Solution

  • Added field PersonInPosition within jpJobPositions

 


Imports

Import Sage profile images (#148015)

New functionality:

  • This change adds a PowerShell process that imports employee profile photos from Sage into Signify.
  • It can run automatically every day through Windows Task Scheduler.
  • Developers can also run it manually to preview which employees and photos will be processed before starting an import.
  • How it works
    • Retrieves employee photos from Sage.
    • Filters the results by the configured company and company rule.
    • Selects the latest photo for each employee.
    • Safely ignores identical duplicate Sage records.
    • Stops when duplicate records contain conflicting photos.
    • Uploads photos to Signify in small batches.
    • Records successes and failures in timestamped log files.
    • Returns a failure exit code when a scheduled import does not complete successfully

 

Correction to import of custom fields (#154641)

Problem

  • Import fails when new users and existing users are imported that have custom fields

 

Solution

  • This change makes improvements to the `ImportUsersCommandHandler` in the Account service, focusing on better error reporting and ensuring proper entity detachment during user import operations.

 


People Management

Fixing tables not loading after using the breadcrumb back button (#153690)

Problem

  • After using the Back button, the relevant tab is displayed, but its data is not refreshed or displayed.

 

Solution

  • Updated the page onload event to make the correct data call and update the correct table. Additionally, updated the URL when switching tabs so that a page reload uses the current tab instead of the previously selected tab.

 

Correct schema selection for table relationships, only show recycle bin when user has delete profile permission, prevent deletion of useractions (#151416)

Problem

  • Recycle bin shown when user does not have delete profile permission; UserAction table records also deleted for user. 

 

Solution

  • Correct schema selection for table relationships, only show recycle bin when user has delete profile permission, prevent deletion of useractions

 

Make Delete and Merge Profile permissions disabled by default (#151415)

Problem

  • Merge and Delete module permissions should be disabled by default

 

Solution

  • Add migration to make Delete and Merge Profile permissions disabled by default

 


Report Builder

Add a " No results found" message on data source field search (#154857)

Problem

  • On Report Builder data sources, when no results are returned for the field name search, all sources are shown with no indication as to why

 

Solution

  • Added small span text to indicate no results were found

 


Notifications

Fallback to from email of default ruleset when current ruleset's user own smtp setting is off (#154837)

Problem

  • From email of the current ruleset is displayed even though the user's own SMTP setting is off. 

 

Solution

  • Fallback to the From email of the default ruleset when the current ruleset user's own SMTP setting is off.
  • This brings it in line with the email template page default From email that is displayed.

 


API

Add endpoint to terminate user (#153656)

Problem

  • There is no endpoint to terminate a user.

 

Solution

  • Add an endpoint and function that takes Username, terminationDate(in format yyyy-MM-dd) and terminationReason(takes a string and matches it with the termination reasons for that ruleset in JobProfiler.TerminationReasons) and terminates the user.

 


Organisational Structure

Resolved delete tooltip not showing (#153241)

Problem

  • The delete icon was missing the class in which it was identified to register the tooltip

 

Solution

  • Added the missing class

 


Master Data

Resolved Single Global Admin can not access master data (#153620)

Problem

  • When a single admin is given, a user can not see the master data

 

Solution

  • Added a check to ensure that if the user has the single role admin and the manage master data permission, they can see all

 


Job Profiler

Fix ListUserJobProfileInherentRequirements EvidenceQuery alias (#154786)

Problem

  • The SQL selects from an alias that was not set

 

Solution

  • Ensure the alias is correct