Skip to main content

Version 9.1.201 (15 December 2025)

Job Management

Add UserId to JobInherentConstraint entity (#142647)

Problem

  • Unable to set the status of a competency job's inherent requirement if another user already has the requirement on the same job profile 

Solution

  • Updated the uniqueness constraints for the `JobCompetencyInherentRequirements` table to include the `UserId` field.
  • This change ensures that records are uniquely identified by a combination of `RulesetId`, `UserId`, `InherentRequirementsId`, and `JobProfileId`, rather than just by `RulesetId`, `InherentRequirementsId`, and `JobProfileId`.
  • This will help prevent duplicate entries for different users and improve data integrity in scenarios where multiple users interact with the same job competency requirements. 


Changed check to hide job profiler tabs to rather a ruleset id deny list (#142649)

Problem

Need to change check to hide job profiler tabs based on a ruleset id deny list instead of just an on and off toggle.

Solution

Changed check to hide job profiler tabs to rather a ruleset id deny list.

Resolve Collapse that did not work (#140555)

Problem

  • When selecting an org node, and expanding the tree view, the collapse button did not do anything as no handler or event was attached.

Solution

  • Create an event to collapse the tree nodes

 

Fix label not floating when adding reporting line (#141695)

Problem

Reporting line input labels were not floating when adding managers to them. The label and the input text then overlapped.

 

Solution

Changed the input from "disabled" to "read only", added inline CSS to prevent background from covering label when focusing. Changing it to read only instead of disabled allows the user to focus the input, but still not manually type anything into it.

 

Learning Management

Make issue date editable on report cards (#142241)

Problem

  • Make the issue date editable on report cards. 

Solution

  • Make the issue date editable on report cards.

Profile Preview for Learning Displays "No Line Manager" for Users with Parent/Guardian Assigned (#142707)

Problem

  • Profile Preview for Learning Displays "No Line Manager" for Users with Parent/Guardian Assigned.

Solution

  • Profile preview for a learner now displays Primary P/G if assigned otherwise falls back to Secondary P/G otherwise defaults to No P/G assigned.

Enhance the attendance register and rectify the attendance history (#142606)

Problem

  • The attendance register does not accurately reflect students who were added to the class later.
  • Attendance history for students added to the class group after the initial register is recorded under the incorrect heading. 

Solution

  • An indicator text has been added beneath the student’s name, stating that attendance was not taken because the student was not part of the group at the time attendance was recorded.
  • A new ban icon has been introduced to indicate the dates and periods when the student has no recorded attendance.

Fixed Attendance Register Duplicate Record created for Learner (#142676)

Problem

  • Duplicate attendances are appearing for a learner for each absentee record.

 

Solution

  • Prevented duplicate attendances from appearing for a learner for each absentee record.

Ruleset Management

Prevent the search bar from refreshing the page (#141955)

Problem

  • The global search bar on the Ruleset Setup refreshes the page, which clears some of the text typed into the search bar.

Solution

  • Increased the debounce time to the standard 700ms to ensure user has ample time to type before the submit, which refreshes the page.

People Groups

Fix bug where people group users were not refreshed when people group id list empty (#139340)

Problem

  • Refreshing materialised people group users were refreshed from cached people groups only, resulting in the materialised people group users not being refreshed when not yet cached or cache busted.

Solution

  • Add a new flag, refresh All, which is used when all people groups are refreshed. If true and people group ids empty, it refreshed for people groups which are currently materialised. 

Performance Management

Show the file name and size when you edit the document (#139615)

Problem

  • Clear modal not clearing the changed input fields.

Solution

  • Correct the clearing of input values, Add change to view the file name and size once the edit document is clicked.

Resolved edit upload file (#142687)

Problem

  • Currently any file can be edited regardless of the level item.

Solution

  • Add change to only allow to edit a file when on level 3, contract or action plan item.

Rename Objective Settings word to only Objectives on PM Templates (#138767)

Problem

  • In PM templates a word reads as Objective settings, as request to change to Objectives

Solution

  • Rename the templates to Objectives

 

Resolved dropdown enabled when review setup not selected (#141788)

Problem

  • Change was made to add disabled and loading indicators to dropdown values, but when nothing has loaded nor selected review period selection is enabled even if review setup has not been selected

 

Solution

  • Add change check to see if review setup has been selected

 

Ensure selected review setup tab is maintained when navigating back to dashboard from contract (#140525)

Problem

  • When user is on a specific Review Setup tab or on a specific additional contract tab, when navigating to the contact and back to the dashboard the previous selection was lost and it did not set the correct tab as selected nor load the correct review year setup details.

 

Solution

  • Changed the tab type / identifier to be combination of the ReviewSetupId and User ContractId if applicable. When clicked store that to session. On load of dashboard read selected tab / review setup based on session value. On fresh visit reviewYearId is null then remove session value to reset to first year first tab. On year change reset session to revert to first tab,

 


People Management

Fix incorrect URL used within the user registration email when approval process is active (#142659)

Problem

  • When registering a user while logged in on another service (i.e., the request does not originate from the Identity service), the URL in the registration confirmation email is resolved incorrectly. Specifically, it omits the /auth segment. This issue only occurs when the registration approval workflow is enabled. If the user self-registers directly (approval off), the URL is generated correctly.

Solution

  • Simplify the URL generation by using the configured Issuer value, which already includes the /auth segment, instead of relying on HttpContext and LinkGenerator. This ensures that the confirmation link is correct regardless of which service initiates the registration request.

 

Adjust table column styles for better readability in the absentee list (#142678)

Problem

  • The lack of word-wrapping causes the URL to push the content outside the modal, making it unreadable.

 

Solution

  • Enable word-wrapping on the front end and ensure that the Start Date and End Date do not wrap.

 

User registration fixes (#142639, 142601, 142600, 142659)

Problem (142600,142659) 

  • Registration Request Short URL goes to error page | Verify email address email contains a broken link

 

Solution

  • Fix the url contained within the emails

 

Problem (142601)

  • Declined requests do not show the reason for decline status

 

Solution

  • Always display the latest registration outcome, even if there were no prior requests
  • 142639 Center align the status column on the history tab

 


Imports

Fix import schedules not executing consistently (#141825)

Problem

  • Schedules did not always execute consistently, especially for bigger intervals - larger than 4 hours.

Solution

  • Rather build a cron schedule from the schedule. + Add a section on the tools page which retrieves the cron schedules for the ruleset, so that we can verify if the jobs and triggers created correctly.

 


Data Warehouse

Added new tables accUserRegistrationRequests and accUserRegistrationFields within PeopleManagement_ETL(#138087)

Problem

  • New Datasource accUserRegistrationRequests and accUserRegistrationFields needs to be added to the Datawarehouse

Solution

  • Added new table UserRegistrationRequests within PeopleManagement_ETL - Added new table UserRegistrationFields within PeopleManagement_ETL
Implemented Performance Improvements within DataDictionary_ETL (#140865)

Problem

  • Performance Improvements are required within SSIS Package LearningManagement_ETL due to the growth of system data and DWH Package.

Solution

  • Removed the DELETE and Truncate Steps and replaced it with Update and Inserts for the below Data Sources: - ddDataSourceSetups - ddDataSourceCategories - ddDataSources - ddDataSourceFields

Implemented Performance Improvements within TenantManagement_ETL (#140865)

Problem

  • Performance Improvements are required within SSIS Package TenantManagement_ETL due to the growth of system data and DWH Package.

Solution

  • Removed the DELETE and Truncate Steps and replaced it with Update and Inserts for the below Data Sources: - accTenants - accRulesets
Implemented Performance Improvements within LearningManagement_ETL (#140865)

Problem

  • Performance Improvements are required within SSIS Package LearningManagement_ETL due to the growth of system data and DWH Package

Solution

  • Removed the DELETE and Truncate Steps and replaced it with Update and Inserts for the below Data Sources: - lmEmployeeTrainingRequirementsMatrix - lmEventSchedules - lmEventScheduleAttendees - lmEventScheduleSessions - lmEventSchedulingCosts - lmEventScheduleAttendeeCosts

Disabled "Execute LearningManagementReport_ETL" within ExecuteSequence.dtsx (#140865)

 Problem

  • Package "LearningManagementReport_ETL" is being triggered within ExecuteSequence which is not needed since this package is run with it's own SQL Job.

Solution

  • Disabled "Execute LearningManagementReport_ETL" within ExecuteSequence.dtsx

Implemented Performance Improvements within JobProfiler_ETL (#140865)

Problem

  • Performance Improvements are required within SSIS Package JobProfiler_ETL due to the growth of system data and DWH Package 

Solution

  • Removed the DELETE and Truncate Steps and replaced it with Update and Inserts for the below Data Sources: - jpAppointments - jpEmploymentHistories - jpJobCompetencies - jpJobProfiles - jpOrganisationalNodes - jpPositionCompetencies - jpReportingLines - jpJobPositions - jpHRProcesses - jpCompetencyLibrary - jpUserCompetencies - jpHRProcessRequestData - jpCompetencyProficiencyLevelMappings - jpSecondaryAppointments - jpHRProcessRequestPivotData - jpUserPermissions - jpJobInherentRequirements - jpJobCompetencyInherentRequirements - jpJobCompetencyInherentRequirementsEvidences 2. Implemented performance improvements within jpReportingLines

Updated C_03549_99999_monGenerateDWHDataIntegrityReport (#125159)

Problem

  • It returned results for missing data for pdmReviewYears and pdmReviewYearPeopleGroupsSetup which should not be the case.

 

Solution

  • Updated script C_03549_99999_monGenerateDWHDataIntegrityReport.sql to not check for "Pilot" ReviewYears data.


Content Management

Implemented correction on signing of document update (#135989)

Problem

  • When the user returns to the Document list tab, the Archive Icon and Action Required are not immediately updated. Only after the page is refreshed, are these updated.

Solution

  • Add change to return data back to the notification through message so that page can update the row without page reload/refresh.

 

Selected banner/avatar was creating duplicate in selection list (#141439)

Problem

  • When selecting and saving a banner/avatar, a duplicate of the image is placed into the list of banners/avatars to select from.

 

Solution

  • Removed the logic that saved the current banner/avatar into the element that is meant for newly uploaded banners/avatars.

 

Notifications

Resolved new chat button position being calculated  (#137794) 

Problem

  • When there is no discussions the modal footer becomes the body, and stays the footer should there be discussions, because of this the new button container is being positioned incorrectly and needs to be adjusted.

 

Solution

  • Add change to render within the correct container and position to be adjustable on different screen sizes.

 

Resolved Template propagation (#138284)

Problem

  • When a template gets propagated the first time the propagation field is set to false.

 

Solution

  • Correct the initial constructor to allow for the propagation field to create with.


 


Translations

Resolved translation focus after search (#139399)

Problem

  • When typing in global search, once the debounce timeout occurs it refreshes the content based on search results, once reloaded it focus the first input which causes where a users is busy typing but next part they are typing in the input.

 

Solution

  • Added correction to the global search script to not focus to first input should the input have a containing value.

Identity and Authorisation

Resolved placeholder values not being replaced on inserted values (#142643)

Problem

  • When the job profile disclaimer loads it needs to replace the inserted values.

 

Solution

  • Add change to replace based on input.
Use registration corrected styling and dark text (#142670)

Problem

  • Custom label and select 2 which does not default to bootstrap 5 styling on select 2, and dark text colour missing

 

Solution

  • Correct the styling for select 2 component, and then add missing dark themes.

 


Event Scheduling

Clear local people groups when changing who can book type to everyone (#142055)

Problem

  • Who Can Book" page does not clear content when moving between show on Calendar Options

 

Solution

  • Clear local people groups when changing who can book type to everyone