List of the Release Notes v9 (2025)
- Version 9.1.139 (14 January 2025)
- Version 9.1.138 (13 January 2025)
- Version 9.1.137 (13 January 2025)
- Version 9.1.136 (13 January 2025)
- Version 9.1.135 (13 January 2025)
Version 9.1.139 (14 January 2025)
Performance Management
Rate Button not displaying (#125563)
Problem
Solution
- Fix contract state calculation to correctly determine when ratings in progress when Objectives completed and ratings partially done.
People Management
Employees Org Structure not syncing correctly from V9 to V8 (#125562)
Problem
Solution
People Management: Go to another does not work (#125569)
Problem
- When the summary tab is active on people management edit, the go to another does not work
Solution
- Change the selector to fall back to the default summary tab when no subtab is found that is active
Tenant Management
Tenant creation not completed (#124774)
Problem
- When creating a tenant and the logged-in user's username is the same as the tenant administrator's email address, the tenant creation fails.
Solution
- Remove the copy of the logged-in user when creating a new ruleset for the new tenant
Version 9.1.138 (13 January 2025)
People Management
Add Person AppointmentEndDate to MaterialisedUsers tables (#121349)
Problem
- Report builder materialised users fails
- When importing
- Notification users are not created
- Performance reporting lines are not updated
- Appointments are not updated for materialised users
- User data is lost when updating appointments or reporting line data
Solution
- The notification did not implement batch user materialisation and appointments
- Performance management implements batch reporting line materialisation
- Report builder correct code
- Implement updates of materialised data only if changes
- Add migrations to update data across services for report builder and notifications
The page is shown as blank after Saving on editing details (#124445)
Problem
- When saving or refreshing some subtabs on the people management profile, the tab content shows blank.
Solution
- Fixed the issue where only the parent tab, instead of the sub-tab, was always loaded when reloading the page,.
Content Management
Confirm the content server setting error (#125366)
Problem
- Cannot upload the employee data file
Solution
- Corrected the password of the production next cloud setup
Data Warehouse
Create a report to show the Tenant details (#116757)
A new report has been created to show the Tenant details
- Tenant Name
- Ruleset Name
- Ruleset Active
- Number of People - All
- Number of People - Active
- Module Name
- People Management
- Performance Management
- eLearning
- Career and Succession Planning
The value in each of the module’s columns can reflect the licenced employees for the module
Data Source items to be added to the Data Source list (#124057)
Add fields to HR Processes:
- Request Reference number
- Comment for each approver (currently, there is only one 'Comments' field)
- Request for more information Comments per approver
- Uploaded Files per request
- Requester details
Add fields to the DWH for the PowerBI reports (#124564)
Problem
- Required fields for a client's dashboard needs to be added to the V8 and V9 Data warehouse
Solution
- Added required fields for Netcampus within V8 and V9 Data warehouse
Version 9.1.137 (13 January 2025)
Performance Management
Set Value Survey score to be included when importing (#119743)
Problem
- When calibrating value surveys, if the value survey has been excluded the calibrated score is not included in the calculation because of the survey being excluded.
- Can then only be set from the front end.
Solution
- Ensure when calibrating value surveys that it is included (Excluded = false).
[Interpolation] Reset the modal after entering the actual value (#121040)
- The rating modal was not reset after entering the actual value.
- Ensure modal is reset after entering value and opening modal again.
Nextcloud error pages is displayed when I click the Subordinates button (#124594)
Problem
- On environments where there are separate path bases the subordinate view URL is incorrectly calculated as
"https://kubernetesdev.signifyhr.co.za/Spa/master/performanceManagement/Dashboard"
instead of
"https://kubernetesdev.signifyhr.co.za/master/Spa/performanceManagement/Dashboard" - It works if there is no pathbase eg local and uat and live
"https://live.signifyhr.co.za/Spa/performanceManagement/Dashboard"
Solution
- Changed the URL generation so it correctly prepends the path base Eg 'master' before the entirety of the generated URL.
People Management
Person who is terminated on today's date should still be able to log in until midnight (#124279)
Problem
- A person who has been terminated, cannot log in on the termination date
Solution
- Change the log-out date to midnight
[Profile Summary]: Only underline on Hover (#124268)
Problem
- Only underline on Hover
Solution
- Add underline on hover.
[Profile Summary]: The Summary section does not get Docked/Pinned to the top (#124385)
Problem
- The Summary section does not get Docked/Pinned to the top
Solution
- Dock the Summary section when a user scrolls on the page
Issues with mobile phone numbers (#124248)
Problem
- There should not be a space between the numbers.
Solution
- Trim the contact numbers on the ListUsersExport call
Ruleset Management
Error on creation of ruleset (#124289)
Problem
- The support user is created before the ruleset creation completes on account and the ruleset created is consumed on the job profiler service.
- This causes the ruleset creation process to fail.
- The ruleset-created email is sent even when the ruleset fails to create
Solution
- Remove all the event consumers RulesetCreated
- Move work done by the consumers to a gRPC endpoint per service
- Create a new event CreateRulesetEvent with consumer CreateRulesetEventConsumer that is published after the ruleset has been created on the account service
- The new consumer calls each service to use gRPC to create the ruleset on the service
- Only once all the services have been created in the system and support users have been created
- As a final step, the notification is sent that the ruleset has been created
- The consumer has been constructed for retry only running the request that has not been completed again
Add functionality to retry the creation process of a ruleset which failed to create (#110754)
Problem
- Currently, if a ruleset fails to create, you are stuck, there is no way for you to retry it.
- This applies only to failed rulesets, and not rulesets still in the process of creating/copying.
Solution
- Add an option to retry the creation/copy process. When clicked, send the RulesetCreatedEventConsumer message to the failed services.
Tenant creation not completed (#124774)
Problem
- When creating a tenant and the logged-in user's username is the same as the tenant administrator's email address, the tenant creation fails.
Solution
- Remove the copy of the logged-in user when creating a new ruleset for the new tenant
Imports
Signify Employee data import API (#122932)
- When adding a payroll connector
-
- Move the payroll connector provider to the top of the modal
- Add a new provider Powershell
- When the provider type is Powershell
- Change the display of the screen and show the following fields
- Name - Textbox
- Powershell Script- Text Area
- The text area is pre-populated with a PowerShell script for import from Signify's APIs. This script servers as the base to be customised from
- Import Enabled- Toggle
- When the user saves the page the script is run without staging the data
- When the PowerShell script can run through and return data in the format to be stagged the script is valid
- Otherwise through an error
- Change the display of the screen and show the following fields
- When the manual processing button is clicked then the Powershell script will run and stage
- When more than one Powershell script is added then all the data will be stagged and processed as a single import only keeping the latest record per user should a user be returned in multiple Powershell scripts
- Each provider's connectors will be processed together and will not include other providers
- This means Payspace connectors will be grouped and Powershell connectors will be grouped and processed as a batch separately.
- Move the payroll connector provider to the top of the modal
- Create a new command and handler- PowershellImportCommand
-
- The handler retrieves all the PowerShell connectors for active rulesets
- All the connectors for a specific ruleset must be processed as a batch
- The users from multiple connectors will be stagged and imported as a single import
- Should a user be returned by multiple connectors only the latest user according to appointment data should be imported
- Log all steps in the handler as an import occurring and display the status on Notifications| Imports
- Security when running a PowerShell script
-
- Consider the implementation of custom run space when running the import
- The handler should be able to be run manually for a single ruleset or per schedule for all rulesets
-
- Reuse the current payroll connector job to also process PowerShell connectors
Create SQL notification for support
Notifications
Schedule Setup: The user can set the Once-Off custom schedule to time already passed (#96569)
Problem
- The user is still able to type in a time that has already passed.
Solution
- Added validation to test if the time is valid, if not it will be set to the minimum time
Report Builder
Date fields not shown in preferred language user is set at (#122731)
Problem
- Date fields not converted to user culture and language.
Solution
- Ensure date fields are converted to user culture and language.
Add different font sizes (#123391)
- Have three options for font size: Normal, Small, Extra Small.
- This must just be in the result set panel, including the headings
- It looks like the standard font size is:
-
- Make the Small size:
-
- Make the Extra Small size:
Add 'Show Condensed Results' (#123390)
- Have an option to “Show condensed results”.
- By default, it must be selected.
- When selected, all fields and values must show the first 15 characters with a … (if it is longer than 15 characters).
- When hovering over the value, it must show the complete text/field name.
- This must preferably be done through a JavaScript function that will not cause a reload of the page, but rather change it immediately.
Error when clicking View Full Report button (#124518)
Problem
- An error occurs when clicking the View Full Report button
Solution
- Fixed the issue causing the crash
Data Warehouse
V10 PM Dashboards add Not Started value to the graphs (#123886)
- Add the “Not Started” value to the following two graphs:
- Note: Not Started means the person do not have a contract created for the Review period.
People Groups
Tooltip on Org path displays "Undefined" (#124529)
Problem
- Tooltip on the org path displayed 'Undefined'
Solution
- Ensure that the tooltip displays the full org path correctly.
Incorrect heading for the Org path column (#124530)
Problem
- Incorrect heading for the Org path column
Solution
- Ensure the correct heading is displayed on the table for the org path column
Group cache not being busted when new employees are appointed/imported (#124457)
Problem
- It appears that the People Groups cache is not being busted when you have appointed or imported new employees.
- This means that you cannot see these new employees on the People Management dashboard.
Solution
- Properly clear people group cache and materialised people groups
The active people group set by the user on V9 is not activated as an active subgroup on V8 when clicking on the V8 module menu item (#124215)
Problem
- The active people group is not set as the active subgroup when opening the V8 page in V9
Solution
- Retrieve the active people group ID from the query string
- Select the people group from the user's assigned subgroups
- If not available then the preferred subgroup should be loaded
Main Dashboard
Performance Management Dashboard Widget not showing correct data (#125269)
Problem
- It seems the score and information are not displayed correctly for the user because they have two contracts.
Solution
- Changing the query that populates the dashboard to order the contracts if multiple exits by the display order of the review year.
- This will then allow the dashboard to display the latest data according to this ordering and secondly the start date of the cycle.
- The dashboard will also only display the latest review period for the contract details within the year.
Version 9.1.136 (13 January 2025)
Performance Management
Able to capture contract although period closed (#123871)
Problem
- When a phase is already closed, the dial can be used to view the contract, but the actions (Eg. creating a KPI) are still active.
Solution
- Lock the agreement if the phases are not active.
PM V9 Action plan copy from previous does not work as expected (#124270)
Problem
4 Action plan-related fixes on this PR.
-
This label was updated, it does not reflect Review Periods but rather the Review Setups
-
There was some confusion as to how the Copy Action Plans From Previous should work, the consensus between me, Bertie and Lee-Ann is that you can only copy from your previous review years. You cannot use this to copy APs from an earlier Review Period within the same setup (This should happen with the CreateContractFromPrevious fix 4)
Changed the query for the review years to exclude the year for the current contract. -
The Copy Action Plans From Previous was not copying all the information, only Name and Description. Including now all AP fields on the copy.
-
When doing CreateContractPeriodFromPrevious it must also copy any Action Plans that exist on that contract period. (which it did not do)
Solution
- Updated the translation to correct the label to show Review Setup
- Changed the query for the review years to exclude the year for the current contract.
- Modified the Action Plan handlers and queries to select all the additional information and to also copy that when creating the item. Had to fix an update here and there
- Added a new portion to the CreateContractPeriodFromPrevious handler to check if there are any action plans on the source and then copied that to the new contract. Tries to copy the Ad-hoc items as well as those assigned to specific KPIs.
Cannot Copy from previous (#124269)
Problem
- The CopyFromPrevious / CopyFromTemplate functionality breaks when creating for an employee on a review setup that has leadership behaviours enabled.
- This is because only managers get the section added to their contracts, but the copy from then tries to add the default library items to the employee's contract.
- This breaks because the LB section does not exist to add it to.
Solution
- Do a check to not add the LB items if the employee is not a lIne manager.
- The preceding Create Contract step will not have created the ContractPeriodSections LB section if the employee is not a line manager.
Import the 360 Survey Scores into Performance Management (#112612)
- Add a dropdown with all the Evaluation Periods (V8)
- Evaluation Period
- Required field
- Master Data Table to be added with the 360 Evaluation Periods from v8
- Evaluation Period
- Add a dropdown with the Import Actions
- I want to import
- Options
- ONLY new scores
- When selected, show helper text
- Import new evaluation scores from [selected evaluation period]. Leave existing scores as is.
- When selected, show helper text
- New scores and override existing scores (from evaluations)
- When selected, show helper text
- Import new evaluation scores from [selected evaluation period]. Existing scores will be overridden.
- Business Rule:
- When the setting is inactive and the Manager cannot revise, exclude this option
- When selected, show helper text
- ONLY new scores
- Options
- I want to import
- Integration Tab on Ruleset Setup
- Review Year Review Survey Import
- When selected, the scores should import according to the option selected via the API
- Import from last sync / import date
- Also add a daily sync
- Only run when a Review Setup has a Review Survey
- Review Year Review Survey Import
People Management
Error on New People Group Save (#124474)
Problem
- People group HiLo sequence did not match the Id value in the table that caused a duplicate trying to be created for the same Id
Solution
- Add a script to sync the sequence with the table
The page is shown as blank after Saving on editing details (#124445)
Auto-generate employee number (#122694)
- Add a setting that will automatically generate an employee number for a new user on the system. Allow the admin to set the starting value in the range.
- Also, allow the administrator to set prefix and suffix values for the employee number.
Report Builder
Evaluation questions (#123006)
Problem
- Report contain duplicate records.
Solution
- Added a "Select Distinct" filter for the reports
Imports
Import Error (#124391)
Problem
- The allow anonymous tag has been removed which causes the daily syncs to fail.
Solution
Translations
Investigate changing translation keys from key-based to file-based (#119512)
- Translation calls need to be improved, it is used extensively throughout the system
- Investigate to cache the translations with a different key strategy - perhaps we store the entire translation file (JSON object) within a single key
Version 9.1.135 (13 January 2025)
Performance Management
Rating button not displaying (#124149)
Problem
Solution
- Fix the check that determines the contract state on the dashboard.
Improve the performance of queries throughout the system by providing a materialised PeoplegroupUsers table per service (#122980)
Problem
- Improve the performance of queries throughout the system by providing a materialised PeoplegroupUsers table per service
Solution
- You can only exclude users from this custom people group
- It is auto-populated when adding a user either from the front end or via the user import
- For all services, the following must be confirmed
- When adding or terminating a user the user must be automatically added/removed from the people group
- Editing appointments on the front end
- Adding a new user on the front end
- Importing users
- When the people group is used in the service the data is auto-populated
- When adding or terminating a user the user must be automatically added/removed from the people group
- Performance management
- Performance dashboard and the loading of subordinates
- Target Audience Page
- Report Builder
- When drawing a report for a specific people group
- People Management
- Dashboard
- Active, future and terminated should still show correctly
- Dashboard
- Both the Redis cached people groups are removed and the data for the people groups in MaterialisedPeopleGroupUsers are removed
- The MaterialisedPeopleGroupUsers must be materialised when next used in the service e.g PM, People Management, Report Builder
Create master data for evaluation periods pulled from V8 (#112612)
-
- Add a dropdown with all the Evaluation Periods (V8)
- Evaluation Period
- Required field
- Master Data Table to be added with the 360 Evaluation Periods from v8
- Evaluation Period
- Add a dropdown with the Import Actions
- I want to import
- Options
- ONLY new scores
- When selected, show helper text
- Import new evaluation scores from [selected evaluation period]. Leave existing scores as is.
- When selected, show helper text
- New scores and override existing scores (from evaluations)
- When selected, show helper text
- Import new evaluation scores from [selected evaluation period]. Existing scores will be overridden.
- Business Rule:
- When the setting is inactive and the Manager cannot revise, exclude this option
On the Review Years | Review Setup | Review Period | Review Survey
- When the setting is inactive and the Manager cannot revise, exclude this option
- When selected, show helper text
- ONLY new scores
- Options
- I want to import
- Integration Tab on Ruleset Setup
- Review Year Review Survey Import
- When selected, the scores should be imported according to the chosen option via the API
- Import from last sync/import date
- Also, add a daily sync
- Only run when a Review Setup has a Review Survey
- Review Year Review Survey Import
- Add a dropdown with all the Evaluation Periods (V8)
Import PM Scores to V8 SCP (#112597)
- On V8
- When opening the Profile
- Use the API to import the Overall Final Score
- Overall Final Score = Review Period 1, 2 etc has been approved and Review Survey has value / is excluded
- Use the API to import the Overall Final Score
- When opening the Profile
- Materialised view - use table
- PM - Update score to materialised view every 2 hours
- PM Year to use
- The PM Year is irrelevant because only the latest approved Overall Final Score will be used
- Add Import to Integrations tab
- Talent Profile - Latest PM Score Import
Change the Ignore Phase End Date rule (#123374)
The label should be changed to:
IGNORE PHASE DATES
The business rules that should be applied when this setting is enabled:
- The Start Date and End Dates should be ignored
- This will mean that the users can start the phase before the date is reached and they can continue after the date is reached
- Thus, the phase will never be locked
Learning Management
Notifications not sent out (#123776)
Problem
- Notifications are not sent as soon as mark setup is marked as published and send notifications are enabled
Solution
- Add
sendNotifications
call inMarksheet.tsx
when the mark is published and locked. Also, the marks will now be saved before sending the notification
Cannot save marks for a second class (#123870)
Problem
- Some users are missing from materialized users causing the save not to work
Solution
- Increase the retry interval for message processing to 60s for consumer events
- Add migration to sync the MaterializedUsers table again
Add a loading indicator when exporting the list of recipients (#123802)
Problem
- No loading indicator when exporting the list of users that will not receive a notification on the attendance register
Solution
- Add loading indicators on Ajax calls in the attendance notification modal
Data Warehouse
Organisational path - Incorrect (#124143)
Problem
The issue was these 2 users' Appointments were edited last May according to the source data. The data warehouse data for these specific 2 users was not updated with the latest Org data. For Appointments, the data warehouse fetched the data that had been updated for the past 72 hours. I am not sure if the Datawarehouse at that time did not update the Appointment data or if there is perhaps an issue on the data source where the Edited Data did not update correctly, due to this being updated manually on the source DB with support query.
Solution
Adjust the Appointments DWH package to refresh all the appointments daily. This is now possible due to the massive performance improvements that were made within the DWH. This will ensure that the DWH does have all the latest appointments daily going on forward.
'Null' values should return an empty string (#123389)
- The Datawarehouse returned 'blank' if the nvarchar returned NULL values
- Adjusted the V9 DWH to return NULL if the nvarchar column value is NULL
Dashboards: Scores not showing on graphs (#123887)
Problem
- The final rating score field needs to be added within Contract Periods for V9 DWH to implement the dashboard changes
Solution
- Added Final rating score field within Contract Periods
Tenant Management
Email Template Adjustments for Tenant Management (#123472)
Problem
- Spaces between text in the template are too large.
Solution
- Fixed the templates by reducing the spaces between paragraphs
Red Pill Changing to Grey on Manage Person Screen and Organizational Structure Screen (#123795)
Problem
- The licence expiry warning message is grey on people management and org structure.
Solution
- Fixed global styling issue where it conflicts with pill styling
Spelling of Licence (#123827)
Problem
- Incorrect spelling mistake
Solution
- Corrected the spelling from License to Licence
People Management
The system does not Auto-Confirm the User with a valid Email address (#118978)
Problem
- The system does not Auto-Confirm the User with a valid Email address
Solution
- If a user's email is provided, the email will be auto-confirmed. If not provided initially, it will confirm the email if the user is updated with one. The email will also be unconfirmed if it is removed.
The curser does not change when hovering on the People Group selection (#121876)
Problem
- The Curser does not change when hovering over the People Group selection
Solution
- Changes styling to show a pointer when hovering over the people group dropdown
Add a Summary Menu Item (#122957)
Problem
- As a person with access to a person’s profile, I want to have a menu item for the summary
Solution
- Added a summary tab to the user profile
Organisational Structure
Delete modal heading displays incorrectly when Name contains ampersand (#122269)
Problem
- Org Structure delete modal heading displays incorrectly when Name contains ampersand
Solution
- Added fix to show name in heading correctly if it contains special characters
SigniChat
Buttons to be moved away from the bottom border of the Group Chat setup box (#123357)
Problem
- The save group button is near the bottom border.
Solution
- Increased the margin of the footer of the create group modal
Auto Doc
Styling on Delete Template modal to be aligned with mock-up on CR (#104629)
Problem
- On the delete template modal, the name of the template should be replaced by Template and the name of the template to be deleted shown in quotation marks and in bold
Solution
- Fixed the styling of the delete template modal
[Auto Doc][Admin User][Templates] Asterisk to be placed alongside Delete Reason text box label (#102815)
Problem
- Delete modals reason field that is required does not show asterisks.
Solution
- Implemented correct class on the global component to fix issues everywhere
Ruleset Management
Tooltip to be adjusted (#104399)
Problem
- When the creation of a ruleset fails, the 'could not create ruleset' label contains a list of services which could not be set up.
- Please could we insert a space between the 2 words in the name of the Services?
Solution
- Added spaces between the words
Error when trying to save External Link with name with 225 characters (#104617)
Problem
- Error when trying to save External Link with name with 225 characters
Solution
- Increased the length of the external link name to 500 characters.
The Kudos icon is not available on the Change Icons list (#113037)
Problem
- The Curser does not change when hovering over the People Group selection
Solution
- Changes styling to show a pointer when hovering over the people group dropdown
Competency Analysis
Do not display text in Bold (#121394)
Problem
- When a user hovers on the Competency Title the system displays the pop-up text in Bold
Solution
- Changed the tooltip to normal text.
Language
Incorrect product name displayed for Career Conversations (#113009)
Problem
- When on the language page the Career Conversation translation did not work.
Solution
- Saw that some of the translations were missing, so I added the missing values
Notifications
Confirmation message on Create of new Schedule to be corrected (#101309)
Problem
- The confirmation message on Create of new Schedule to be corrected
Solution
- Fixed the confirmation message when saving a schedule
Event Deactivation Reason text box label asterisk to be displayed in red instead of grey (#102805)
Problem
- When deactivating a notification event, the reason field label asterisk (*) needs to be displayed in red.
Solution
- Changed the deactivation reason asterisk to red.
The user can set the Once-Off custom schedule to time already passed (#96569)
Problem
- Able to set a custom once-off schedule to a time today that has already passed.
Solution
- When once-off schedule type is selected, remove time slots that has passed already.
Events: 'Can be scheduled' indicator to be shown on the Notification Events list (#85834)
Problem
- Please consider indicating on the Notification Events page which events can be scheduled.
Solution
- Added a "Can Schedule" column to the notification events list to indicate whether that event can be scheduled or not