Skip to main content

Version 9.1.211 (2 March 2026)

People Management

Add handling to not do PG update with rowlock when no data to update (#144529)

Problem

Problem

Situation where if the current activity is on materialised PeopleGroupUsers, but there is no data in the table for the PGPG, then the rowlock causes performance issues. 

Solution

    Wrapped the table update with the row lock in an if to only run if there is data to update.

    Refactor People Management tab queries to increase performance (#144529)

    Problem

    Problem

    In some instances, the queries to fetch MyTeam / MyDepartment / MyCompany / PeopleGroupUsers times out or takes an excessive amount of time to complete. Investigated and found couple of areas that could be done better, one of them relates to the appointments which is addressed in seperate PR. Another big win item identified relates to reporting lines. 2 calls are made as subqueries to determine
      1) theThe number of subordinates for the user,user 2) whetherWhether the user is my manager. These are extremely inefficient however as for every row in the resultset the count is done from reporting lines / checked against my Line Manager. 

       Solution

      Solution

      Changed the 'My Manager' check by fetching the user's manager beforehand into a variable and then comparing the result userid against that variable. Moved the subordinate count outside of the main cte query by first selecting everything into a temp table and then calculating and updating the subordinate count after the fact as a batch update. Some minor changes onto reactReact for mapped key uniqueness.

       

      Correct people group materialisation clearance when the list of people group's users areis fetched (#143861)

      Problem

      Problem

      When V8 request the people group users from V9, and there aresome PGs that have been materialisedmaterialised, and some that have not been materialised, it causes the materialised people groups to be cleared. Only the unmaterialised PGs are to be returned. 

       Solution

      Solution

      Ensure only the calculated people groups are included when deleting the materialised people group users

       

      Hover on Profile picture displays incorrect tooltip text (#144474)

      Problem

      Problem

      Hover

      Hovering on Profilethe profile picture displays incorrect tooltip text 

       Solution

      Solution

      Fix incorrect casing used for the translation key, causing it not to find the correct value

      Extended compression type selection on User Edit Profile (#143713)

      Problem

        New change implemented in the account to not set the first selection, but not added withinthe  image resources Suggestion to clear tags after file change

         

        Solution

          Pass true value Add clear Keywords

           

          When a front-end user appointment fails to create, revert user creation (#144275)

          Problem

            Should a front-end user creation be successful, but the appointment fails, a message is shown for the user, but if the modal is closed and later tried to appoint/recreate, it says the user already exists.

             

            Solution

              Add change should the appointment creation fails, revert/delete the created user

               


              Event Scheduling

              Add sanity check in event scheduling date range query | Fix people group tabs (#141796)


              Job Management

              Fixed copying of reporting lines on the user summary page (#143977)

              Problem

              Problem

              The copy manager function for reporting lines on the user summary page is not working.

               Solution

              Solution

              Included the JS file with the function and added the needed hidden fields.

              Uploaded Evidence only appears on Inherent Requirements after a Hard Refresh (#144492)

               Problem

              (#144492)

              Problem

              When opening the modal a global let is set which is not reset

               Solution

              Solution

              Correct to pull the data-attribute directly

              An error appears when deleting Required Evidence Files (#144493)

               Problem

              (#144493)

              Problem

              Incorrect id attribute was retrieved to be passed for deletion 

               Solution

              Solution

              Correctly retrieve the id for the document deletion 

              Previous delete

              reason gets cached when deleting evidence documents (#144494) 

              Problem

              Problem

              When a user opens the modalmodal, it keeps previousthe previously entered value 

               Solution

              Solution

              Reset the value to the default when opened 

               


              Imports

              Implemented visual enhancements to User Imports (#144481)

              Problem

              Problem

              User Import triggers a few other imports, but no visual knowledge of that 

               Solution

              Solution

              Add an indent onto the types that isare included as part of the User Import

              Add change to sync in partial for last edited date (#139776)

              Problem

                When syncing data from V9 to V8, all data is pulled that is currently on V9, not just changed data. This caused the API calls to return very large datasets each time the APIs are called.

                 

                Solution

                V9

                  In each of the APIs below, implement an additional filter ChangeAfterDate
                    ChangeAfterDate is a nullable datetime field The ChangeAfterDate should be used to only return the data with an edited date after the date
                      When the date is null, then all data must be returned The edited date of the main table, along with the relational tables, should be considered, e.g.
                        Account.Users.EditedDate, Account.Genders.EditedDate etc. On the Ruleset | Integrations tab, split the push buttons into two
                          All Data
                            This will import all data from the start of time. All Data from the last change
                              This will only import the data from the date of the last successful import on V8. Keep as is Theme Import APIs
                                User Import People Group Import
                                  Use the People group table as well as the materialised log table to determine changes User people group permissions
                                    Use the link to the user and the roles' edited date Add a field in Jobprofiler.MaterialsedUsers.PeopleGroupChangedDate, which is populated when people groups are removed from a user
                                    User roles
                                      Check the edited date of the user role
                                      Add a field to the account.Users.RolesChangedDate, which is populated when roles are deleted from a user
                                      Reporting Lines
                                        Use Jobprofilers' reporting lines edited date to fetch the changed data
                                        Job structure
                                          Check the edited date of the JobProfile, Position and Org nodes as well as their linked master data, to determine a change
                                          Org structure
                                            Check the edited date of the Org nodes as well as their linked master data, to determine a change
                                            Appointment
                                              Use the edited date of the appointment
                                              Add a field in Jobprofiler.MaterialsedUsers.AppointmentChangedDate, which is populated when appointments are removed from a user
                                              When any appointment has changed for a user, return all appointments for the user

                                               

                                              V8

                                                Add a table sysSuccessfulSyncLog
                                                  This table only stores the import types, with the date they were last successful This table is then used to determine the date to include for ChangeAfterDate when the APIs are called Alternatively use sysProcesslog Display the import completion date stored on V9 after successful completion.

                                                   


                                                  Ruleset Management

                                                  Resolved event handler not being triggered on system menu click (#144569)

                                                  Problem

                                                  Problem

                                                  Off

                                                  The off method is calledcalled, which removes all the event handlers from that elementelement, so only the very last defined event is added 

                                                   Solution

                                                  Solution

                                                  Correctly remove the same event specified to be added

                                                   


                                                  Communication Portal

                                                  Implemented Communication Priority Master data item (#140896)

                                                   

                                                  Implemented Master Data Communication Category (#140897)

                                                   

                                                  Implemented import for Master Data (#140898)

                                                   

                                                  Added handling for external system message (#140899)

                                                   

                                                  Fix colour picker not setting subsequent colours picked on change (#140896)

                                                   

                                                  Resolved Icon picker not being able to search (#140897)

                                                   

                                                  Resolved Master data bugs (#136015)

                                                   

                                                  Fix master data api incorrect reference (#144484)

                                                   

                                                  Resolved bugs (#136015)

                                                   

                                                   

                                                   


                                                  Organisational Structure

                                                  Load org nodes on org structure page on demand (108648)

                                                   

                                                   


                                                  Content Management

                                                  Implemented new change to be able to delete a signing document (#143364)

                                                   


                                                  Tenant Management

                                                  Updated system close colour + filter fix (#144226)

                                                   


                                                  Identity and Authorisation

                                                  Implement Auditing on Identity service (#143433)