1. Home
  2. Blog
  3. Release Notes - March 2025

Release Notes – March 2025

1. ALL REGIONS 

Enhancements 

[#71562] Enhancement: Void finance documents by statuses 

Updates of which finance document statuses can be Voided. This aligns Agresso and non-Agresso behaviour. 

Drafts cannot be voided anymore. Delete action is dedicated to this. 
Approved and Invoice statuses can be now Voided in both types of offices. 

[#64714] FE: Enhancement to the Agresso Sync Schedule Page 

We’ve made several improvements to the Agresso Sync Schedule page to simplify your workflow and improve usability. The Edit button now features a pencil icon, and we’ve introduced a new Sync button—visible only to authorized team members—for quick actions.  

Additionally, two new filters have been added: one to choose the Instance (US, UK, or EU) and another to filter by Type (Profile or Ledger). Extra spacing between the filters and the report further enhances readability. These updates provide a cleaner, more intuitive experience for managing sync schedules. 

[#71128] FE: Max run time box misaligned 

We’ve corrected a layout issue on the Agresso Sync Schedule page where the Max Run Time box was misaligned. With this update, the box now lines up perfectly with other elements, offering a cleaner and more organized view for managing sync schedules. 

[#71657] Add Alternative Cost Centre to Time Report & Pending Approval Export 

We’ve updated the Time Report and Pending Approval Export to include additional cost centre details for better visibility. A new column labeled “User Cost Centre” has been added, which reflects the default branch assigned to each user. Additionally, an “Alternative Cost Centre” column has been introduced to display any alternative cost centre associated with the user. These new columns appear right after the User ID column in both reports, making it easier to reference cost centre information when reviewing timesheet data. 

[#71707] FE: Preset the “Our Company” in the Address Book 

We’ve made a small but useful update to the Address Book in the Office tab to improve usability. The “Category” filter will now automatically be set to “Our Company” by default, as this is what most users typically need. However, if you need to view other categories, you can still manually change the filter as needed. This update helps streamline the process by reducing the number of clicks required to find the most relevant information. 

[#71134] BE: Slow Dropdown: Client API 

We’ve made significant improvements to the speed of the Client (Office) Dropdown, reducing the time it takes to load. Previously, selecting an option could take several seconds due to slow DNS resolution and how data was processed. To address this, we optimized the domain configuration for better DNS performance and restructured how attributes are retrieved in the system, allowing for more efficient data loading. As a result, the dropdown now responds much faster, providing a smoother and more efficient user experience. 

[#72012] Finance Reports V2 > Add Product column 

Product column has been added in the Finance Summary Report V2 and Finance Detail Report V2. 

[#68958], [#63206] [#70973][#70974] PROJECT LIST > New Columns: Brand Code, Product, Magnitude code, TASKS and OTHER 

14 new columns needed for Magnitude reporting but also for advanced Project Management have been added into the Project List. Those columns are Brand Unique Code, Product, Product Unique Code, Magnitude Code, Magnitude Description, Created At, Brief, Tags, Agresso Project Owner, Job Finance Type, Percentage Complete, Open Tasks, Closed Tasks, Assets.  
 
This adds to another 16 finance and scheduler-related columns that have been added the sprint before. 
 

[#72501] Add a Default Duration= 1 Day when applying a “Predecessor” 

A default duration of one day will be applied to a Timeline Item when a dependency is created via the “Predecessor” shortcut column. This will ensure dates will automatically reflow from the top item in the dependency chain. The start date for the default duration will be taken from the Timelines “Start” date as specified in the Timeline Settings if not date is attributed to the “Successor” item. 

FIXES 

[#71240] Address book > User import: Timesheet start date sets to current date 

An inconsistent date field behaviour causing troubles with the User Import in the Address book has been fixed. This issue affected Timesheet Start Date column. 

[#71802] Bug: Bookings with less than 1 hour/day have days calculation wrong 

Bookings that are set to less than 1 hour per day had wrong calculation of total hours after drag’n’drop, or resize actions in Scheduler. This has been fixed. 

[#63162] Bug: Asset Library: The Release Status not be updated after editing 

Fixed an issue where the Release Status was not updating after editing an item. The selected values, including the Release Status, now update correctly when the Update button is clicked. 

[#63165] Bug: The Mine: Asset detail does not trigger when I refreshed the page. 

Fixed an issue where the asset detail was not triggering after refreshing the page. The same search result and asset detail now load correctly upon refresh. 

[#67701] UI Bug: Joblist: Need to click twice to change the list view 

Fixed an issue where the Show List/Grid View button required two clicks to switch the view mode. The button now reflects the correct view state and switches on the first click. 

[#70728] Bug: Profitability Report doesn’t pull data for multi-offices 

We extended ability to export data from other offices (multi-offices) than user’s primary office in the V1 Profitability Report. This wasn’t possible before.  

[#71107] Bug: Report Widget (Bar and Pie) – ‘Intervals’ not working 

An issue with Report widget in the Portals has been fixed. This occurred when ‘Interval’ value vas set but the chart preview didn’t load. 

[#71928] Bug: System default rate card forced for non-agresso offices 

An issue where Pulse Ratecard wasn’t not offered in the list of Ratecards in the Project Wizard has been fixed. This happened when more than one office was set in the Admin > Ratecards > ‘Edit Ratecard Settings’ > Office Mapping field. 

[#72006] FE Error: Removing / Adding Work Category 

We’ve fixed an issue where an error message would sometimes appear when adding or removing a Work Category in Project Amendments. While the error did not prevent the amendment from being processed, it created confusion for users. The underlying issue was identified and resolved to ensure that making changes to Work Category now works smoothly without triggering unnecessary error messages. This update improves the overall user experience by eliminating misleading errors and ensuring a seamless amendment process. 

[#72444] Fix: Remove Constraints when dependency applied from the Predecessor column 

We’ve fixed an issue where when a dependency between two Timeline Items (Items A and B) from the “Predecessor” column is created it was applying a constraint “Starts no earlier than”. This has been updated so it now applied a constraint “None”. 

3. TECH DEBT  

[#64717] Move Purchase Orders Sync to V2 

We’ve upgraded the Purchase Orders sync to use the new v2 sync structure, improving performance and maintainability. This update replaces the previous v1 script, ensuring the sync process is more efficient and aligned with the latest system architecture. The sync now runs via a dedicated CLI command, allowing for profile-based execution while enforcing permissions to ensure only valid profiles can request syncs. Additionally, the sync button in the UI has been updated to use the new v2 Ajax route, and outdated v1 cron jobs have been removed. These improvements make the Purchase Orders sync more reliable and easier to manage while maintaining seamless integration with Agresso. 

[#70293] NR: js error- UncaughtError-Unhandled Promise Rejection 

We’ve fixed an issue that was causing a JavaScript error related to an Unhandled Promise Rejection. This error could occasionally appear in the system, potentially disrupting functionality or displaying unexpected messages.  

[#72242] NR: Exception ‘Illuminate\Database\QueryException’ with message ‘SQLSTATE[42S22]: Column not found 

We’ve fixed an issue that was causing an SQL error when filtering projects in the Timesheet Report. The error occurred due to an incorrect column reference in the database query, which resulted in the report failing to load under certain conditions. This has now been corrected, ensuring that applying and refreshing filters works smoothly without errors. Users can now filter projects and refresh the page without encountering issues. 

[#71704] NR: Uncaught exception ‘TypeError’ with message ‘App\Services\TeamManagement\TeamManagementNotificationService::inviteUser(): Argument #1 ($user) must be of type App\Models\User, null given, 

We’ve fixed an issue in the Resource Planner that caused an error when updating a booking. The problem occurred when the system attempted to send an invitation but failed due to missing user information. This resulted in a fatal error, preventing the update from completing properly. The fix ensures that the system now correctly validates user data before attempting to send an invitation, allowing bookings to be updated smoothly without errors. 

[#72310] Uncaught exception ‘SimpleSAML_Error_Exception’ with message ‘Invalid authentication source: ${loginMethod.auth_source}’ 

We’ve fixed an issue that was causing SSO login failures for some users. The error occurred when attempting to log in via Corporate SSO, where an invalid authentication source was being referenced. This prevented users from accessing their accounts through SSO. The issue has now been resolved, ensuring that the correct authentication source is used, allowing users to log in seamlessly without encountering errors.