Version 9.1.192 (4 November 2025) Dashboards Main Dashboard: Disabled Widgets not Available to Enable (#138926) Problem The widgets which were set to inactive do not show up on the manage widgets page. This makes it impossible for managers to activate a widget again. Solution Passed null for the active property to ensure all widgets show; this allows admin users to toggle inactive widgets back to active. Please Note: - This logic does not affect the main dashboard frontend; only active widgets are displayed there. [Main Dashboard][Custom Dashboard]: When 1 button is specified the system does not span the full width (#138308) Problem When 1 button is specified, the system does not span the full width. Solution Ensure that 1 button does span the full width and 2 buttons share the width equally. Job Management An error occured during an import (#137904) Problem On some cases, data received from Sage has empty appointment data in which the code logic handles this as a new appointment. To do this, it terminates the previous position  Solution Implement a pre-import step to try and update the user appointment details from an active appointment Exports [Imports][Admin User][Export Errors] When error log is exported, wrong file is downloaded (#137754) Issue 1: Problem When navigating, the location is set to the URL being auctioned instead of the href value Solution Implement a fix to correct the href Issue 2: Problem Development that was implemented to automatically download once an export has been made was only implemented on imports, as well as the query that always only took the last export file, regardless of selection Solution Extend SignalR to include a new message with an action URL that will be called upon receipt. [Exports] Import error and Validation reports generated twice (#138132) Problem An event handler is attached to the document button click event, but not detached first, which causes multiple triggers  Solution Remove the event handler before adding a new one Data Warehouse Create raw data data source for logins (#138394) Issue 1: Problem Fields ReasonForCalibration and 360EvaluationScore are required within DWH Solution Added field ReasonForCalibration within pdmContracts, pdmContractPeriods and pdmContractSurveys Added field 360EvaluationScore within pdmContractSurveys Added field OverallFinalRatingScore within pdmContracts Issue 2: Problem Some fields are not required within accUserLogins, as it only needs to return the raw data Solution Removed unnecessary fields from accUserLogins that are not raw data related Report Builder: Join the People and Learning Management Datasources (#138311) Problem New DataSourceJoins are required between People - and Learning Management Solution Added new DataSourceJoins between People - and Learning Management Training Matrix - Refresh (#138477) Problem All the data within the lmEmployeeTrainingRequirementsMatrix would be truncated due to the Date Filter that was added within the Insert Query Step  Solution Adjusted Delete to only delete records within the lmEmployeeTrainingRequirementsMatrix if it exists within the Staging table New Scorecard Status Report | Unapproved Score (#138289) Problem The field FinalScoreBeforeApproval returned the results without taking PerformanceMaxRating into consideration Solution Adjusted field FinalScoreBeforeApproval to include PerformanceMaxRating  Performance Management [PM] [Review Setup] [Templates] Unable to import templates when VB and LB sections are enabled (#137921) Problem With the new sections being able to be imported for templates, when a client has a different translation for that section name, it throws an exception as the backend could not map get the correct enum value as it was not parsed in the validation checks Solution Add a change to map back from the translation to the correct enum section to be handled and updated correctly in the backend User get logged out (#138398) Problem The system’s lock and idle warning logic caused repeated warning modals and incorrect lock behaviour. Clicking “Continue” did not properly refresh the lock, and navigating into or away from a resource could leave it incorrectly locked or unlocked. These issues were caused by mixing lock acquisition, idle checks, and timers, leading to stale state being used and cleanup logic interfering with new sessions.  Solution Separate the idle warning logic from lock acquisition so the warning only appears when the lock is truly near expiry, and ensure clicking “Continue” refreshes the lock without resetting it. Unlock the resource on navigation or unmount only if the lock is actively held and not already being released, preventing conflicts with new sessions. Maintain a single source of truth for the lock state so timers always operate on up-to-date information. This ensures predictable locking, proper idle warnings, and safe unlocking when leaving a resource. [PM] [Review Setup] Sanitise Name and Description text fields (#137277) Problem Input text is not sanitised when adding special characters, and the encoding is displayed  Solution Make use of the newly implemented control  [PM] [Dashboard] Mapping descriptions shown for all periods if only one has been enabled (#137916) Problem When a mapping item has been configured for only a certain period, when there is none for another period, it shows no rating, as a check is done if there are only mappings and not mapping specific to that contract period Solution Add a  change to the method to determine the mapping to extend and return if there was a mapping identified  [PM] [Agreement] [Action Plans] Action Plan items from deleted contracts displayed when you copy from a previous year (#138337) Problem Action plan items of deleted contracts get retrieved to be listed for copy selection Solution Add a check to the query to exclude deleted contracts [PM] [Agreement] [Action plan] Cannot tag an Action plan item in a message to the person (#138144) Problem When clicking the tag message for the communication chat, the action plan item is not being displayed Solution Correct the value being retrieved and sent through [PM] [Review Setup] [Templates] Unable to import templates when VB and LB sections are enabled (#137921) Problem New validation was implemented to allow key components and stretch targets, and validation was done for valid sections, but preview sections were not included hence why it threw the error Solution Add section names for validation check Year dropdown is not populated on the moderation screen (#138651) Problem The retrieval of active review years for Moderation takes too long Solution Add missing filters for PM Materialised People Group users Imports Missing Employee and Leave Approval Issue (#138345) Problem Payspace pull fails when users without reporting lines exist for the users with the same username being pulled from Payspace Solution Updated manager data selection logic to safely handle null ReportingLines and ManagerUsername values, ensuring exported manager lists are never null and usernames default to empty strings if missing. Change V9 PM 360 Evaluation Scores Import To Use Alternate Calculation (#138498) Problem The scores shown on PM for value surveys that were imported from Employee Evaluations differ to the scores when viewed on the 360 Manager / Employee Reports. This is because 2 separate calculations are done, which return two different answers. Solution Change the 360 Survey scores SP to do the same calculation as is done on the 360 Manager / Employee Report  HR Processes [HR Process][End User][Search] Unable to search for multi-word phrase (#137367) Problem When searching multiple words a space is inserted in which when sent through the query is not encoded which throws the words after the space away Solution Encode the search term before sending through Ruleset Management Help File Migration (#134427) Problem Migrate large user guides from production to be deployed to all clients. Solution Introduces a PowerShell script for exporting user guide upsert statements and adds a new Entity Framework migration for seeding user guide data in the Account service. These changes support improved management and deployment of user guide content.