Skip to main content

Version 9.1.171 (21 July 2025)

HR Processes

Consecutive step approver update (#126525)

Problem

  • When a user who is the Approver for two consecutive steps clicks to approve the first step, the second step should be automatically approved.
  • Therefore, the button for the second step should be disabled and not show a hand cursor to reflect this behaviour.

 
Solution

  • Adding a new list that tracks the usernames of previous individuals who have been requested to review an HR Process.
  • If this user is already in the list (They were requested to review multiple times), give the second or third or nth Approve button for this user a disabled appearance/functionality.


Learning Management

Problem

Solution

  • Avoid adding empty redirect URLs to the query string because it causes the query string to have duplicates.
  • Duplicates create an invalid resulting URL.

Cycling between Cycles does not display appropriate Training Interventions (#133590)

Problem

  • Cycle selection is not updating the training interventions on the marksheet

 

Solution

  • Extended the ListMarkSetupAsync method in ILearningManagementQueries and LearningManagementQueries to accept an optional cycleId parameter, allowing filtering by cycle.
  • Updated LearningManagementServiceV1 to use the new parameter when retrieving mark training interventions.

 

Unable to save Marks on Marksheet (#133653)

Problem

  • No marks are displayed with the new cycle navigation when saving the marks

 

Solution

  • Updated ILearningManagementQueries to include an optional cycleId parameter in ListStudentMarksAsync, enabling filtering of student marks by cycle.
  • Modified the implementation in LearningManagementQueries to incorporate this new parameter in the SQL query.

 


Notifications

Tenant Subscription emails (#133709)

Problem

  • The Tenant overdue / expiry emails are not getting sent out. It fails with the error "_An invalid character was found in the mail header: '"'.
  • The issue is that the Calculated / CC recipient is stored in the email to be sent table as "CustomToEmailCC": "will.madg@gmail.com", which then fails when trying to add that as an email address. 

Solution

  • Corrected the assignment of custom notification fields by using the element.Value.ToString()instead of the element.
  • ToString(), ensuring the correct values are extracted.
  • Added continue statements after each assignment to improve loop efficiency.

Sections 2 and 3 are not displaying on the Edit Help Page (#133175)

Problem

  • The feedback label was linked to the button, making it clickable.
  • The edit functionality had no save button visible, and even after being visible, it did not work for inserting 
  • Wording for the headers was outdated 

Solution

  • Label: Removed the for "btn-feedback" tag
  • Edit functionality: Adjusted JS logic to show the relevant controls for the different stages and added logic to account for newly inserted records for UpsertUserGuideConfiguration by first saving the inserted records and then triggering the methods with their materialised IDs
  • Also, replaced the forced not null statements with proper accounting for null values


Report Builder

Curl-Request - when valueStrings is null, it should return as null instead of "" (#133581)
Problem
  • When generating the report builder curl file, if the ValueString are empty, it fails on the GRPC side

Solution
  • Parse in NULL instead of an empty string

 

Report results API (#130102)
Problem
 
  • When clients require API integration to retrieve data similar to what they see in the report of report build we need to build custom APIs for each request.
 
Solution
 
  • Create an API to retrieve the report builder results for any Report Builder report via a single API

 


Data Warehouse

Stats from DWH (#132930)
Problem
  • The Login Stats need to be added within the DWH 
Solution
  • Added the UserLoginStats datasource to the V9 Datawarehouse Package
Years of service report (#133024)
Problem
  • Field YearsOfService is required as requested by the client

Solution

  • Added new field YearsOfService within Appointments
Add settings to PackageSettings to disable modules (#133513)
Problem
  • V8 and V9 require their own FullRefresh column within PackageSettings

Solution
  • Added new fields V8FullRefresh and V9FullRefresh within PackageSettings

Imports

Exception Errors (#133141)

Problem

  • A new change was added to log more detailed information about certain data failures, but this is not an error, and therefore, this is shown as errors on the import with a high count

Solution

  • Add a new import type table of warnings, to log there instead of warnings, as it is not considered an import error
  • Added new Command to Log Import Warnings, updated Payroll command to log warnings when needed, added migration to create the table

[V9 to V8 Images][End User][Profile Images] Images not being displayed across modules (#132909)

Problem

  • The generation of the user image file name is per ruleset, and to timely to complete for the 140 rulesets on production.
  • If any user cannot be found, the process fails. 

Solution

  • Refactored UpdateAllUserProfileImageFileNames to accept multiple ruleset IDs instead of a single one.
  • Updated the gRPC and proto definitions accordingly across all affected services.
  • Improved error handling and logging for batch updates.


Performance Management

Handle special characters on dashboard (#132067)

Problem

  • When special characters are entered or returned, such as &, it will be shown instead of the & character

Solution

  • Add a case to convert text and check for any special characters
  • Improved and split out to a new component for sanitised text for spa pages

Moderated agreement not shown as moderated on dashboard (#132770)
Problem
  • When moderation has been sent for quality assurance, no in-progress indication is shown on the dashboard

Solution
  • Add a new check that, when sent to Quality Assurance, shows Moderation In Progress

 


New Development - Performance Management

Show fewer people on the Other People to Evaluate Section (#132590)
Problem
  • When you need to evaluate others on Performance Management, the area displays:

image.png

 
Solution
  • Show the first 5 people with a “Click to view more…” option
  • When clicking, open the Evaluation page

 

Show anonymous ratings to the employee (#132553)
New requirement
We want staff members to see the scores as well. Essentially, what managers see, we want staff to see. 
 
Suggestion
On the Anonymous setting, add another sub-setting:

image.png

Show the comments and ratings anonymously (Manager and Employee will see the ratings and comments submitted)

 


New Development - SigniChat

[Ruleset Setup][Integrations][Chat Bots] Add helper text for Main Dashboard Bot Code (#116457)

 

 

 


New Development - Event Scheduling

Event Scheduling: Mark Attendance (Phase 2) (#129927)