Here is the list of changes that you can explore right now by activating the BRIX trial version.
After June 16, 2025, all changes will become available to our clients in their active companies. Please note, the list may grow after the release.
Please pay special attention to any updates with the #BreakingChangeAlert tag. They might require you to take extra steps to adapt or adjust your current configuration.
Widgets
TEAM-25311 The Button widget now has a Disabled option. When enabled, the button will appear on the form but will not be click-able by users. Additionally, you can configure dynamic button activity by setting a condition under which the user will be allowed to perform the button’s action.
Apps
- TEAM-33631 Unified visibility settings have been implemented for action buttons:
- on the app page, including bulk actions for items;
- inside item pages.
Visibility can be configured based on user groups using the Show for option in the button settings. Action execution permissions are still governed by the group-level access rights.
Important notes:
- Visibility settings take into account user substitutions;
- For the app to work correctly in another company, user groups specified in the button settings must be included in the export package;
- If the groups are missing in the import package, they will be removed from the button’s configuration.
- TEAM-33814 You can now permanently delete fields from the app context. Before deletion, the system allows you to export the data stored in the field via the application form settings.
Users and groups
- TEAM-34939 If phone number authentication is enabled in the company settings, users can now accept an invitation to the company using a one-time SMS code, without setting a password. The password can be set later via the password recovery process.
To enable this feature, a specific feature flag must be activated. Please contact tech support to do this.
- TEAM-35453 To improve the user experience, fast data loading has been added to the Administration > Groups page. Now, when the page is opened, only 10 groups from each workspace are shown by default. To load more records or nested groups, click Load more.
Export and import of structures
- TEAM-27249 Versioning support has been added for both applications and workspaces. Versions are created whenever the component settings are modified, imported, or updated. Versioning becomes available after enabling the
allowVersionsSnapshots
feature flag.
Separate versions are maintained for:
- App versions: when editing configuration settings such as: Form settings, Item name, Hierarchical folder, Status field, Numerator, Signature settings, Archiving settings, and Print form.
- Page versions: when editing general page settings via the App Settings or Workspace Settings window.
The version history is available in the component settings under Version History. For apps, there are separate tabs: App and Page.
Available actions:
- Restore a previous version. Useful if errors occur after import and you need to roll back to an earlier state;
- Compare content of previous and current versions in JSON format;
- Export a version as an .e365 file.
- TEAM-35116 To improve the export/import process, the package .json format file has been updated. Previously, the file was serialized into a single line, which caused false change detections and conflicts during import. The file is now formatted correctly for better readability and comparison.
Business processes
TEAM-34855 You can now track bulk actions performed by users on business process instances. A new page, Bulk operations, has been added in Administration.
The page displays a list of operations triggered from the Process Monitor or Error Monitor pages. The table includes the operation name and type, its status, author, and start/end dates. Users can search for specific actions using filter parameters.
Document management
TEAM-21506 When uploading multiple files into a Files field, the system now displays the total file size and upload progress. Uploaded files are listed and can be removed individually by clicking the trash bin icon.
Projects
- TEAM-7434 A Show constraints option has been added in the Gantt chart editing mode. This feature can be used when planning project tasks. Once enabled, the Gantt chart displays task constraints, indicating when a task must start or be completed.
- TEAM-35932 When working in the Projects workspace, the system now verifies whether the Projects solution is licensed in your company. If not, the user will see a notification, for example, when trying to create a new project type.
Service
TEAM-25533 An extended inbox mode is now available for service live chats connected to an email address. This feature is released in a preview version and must be enabled via the allowExtendedInboxMode
feature flag. It will become generally available in future versions of the system. In extended mode, session messages retain the email subject and recipient. Operators can reply to individual messages, forming an email thread.
When replying, a full-featured email composer opens, where users can specify primary, CC, and BCC recipients, attach files, and format the message using a rich text editor.
Telephony
- TEAM-34125 When receiving multiple incoming calls for the same user, the system now displays separate collapsed call pages at the bottom of the screen. The user can open a page to answer, decline, or transfer the call.
- TEAM-34405 Calls, both incoming or outgoing, can now be transferred to another user via a button in the call page. This option is available if the telephony provider integration supports call transfer functionality.
- TEAM-36561 The call page now shows all matching contacts found in the system by the detected phone number. Users can select a contact from the list, open their profile, and link the call to a specific item.
- CRM
TEAM-35520 The BRIX mobile app now supports table and kanban views for Tasks > CRM Tasks. The table view includes filter tabs: Overdue, Current, Completed, and All. - TEAM-35521 A new view, Task List, has been added to Tasks > CRM Tasks. It displays tasks with assigned users scheduled for specific times during the day, week, or month.
TS SDK and API
- TEAM-31234 Starting with version 2025.5, access to internal fields of system structures in scripts is restricted. As a result, the following methods have been removed:
(System as any).factory
andgetFactory
. These methods previously allowed access to internal structure fields and are no longer supported. - TEAM-32120 Execution schemes for server-side scripts are now cached, significantly improving script performance. In On-Premises deployments with large configurations (e.g., over 1,000 app items or process instances), this change can reduce script execution time by up to 90%.
- TEAM-35789 Changes have been made to the method used for summing values in Money-type variables::
- The add() method is now deprecated due to revealed issues;
- A new method has been introduced to ensure accuracy and currency consistency: addm(money: TMoney<C | 'XXX'>): TMoney<C>:
// Before executing the operation, the method checks whether the currencies match to avoid rounding errors.
// If the currencies differ, the operation is not performed, and an error is returned.
// Example:
```typescript
const a = new Money(100.25, EUR);
const b = new Money(200.75, EUR);
const result = a.addm(b); // 301.00 EUR
```
@throws Error — If currencies differ.
// Known problems when using the deprecated add() method:
- Loss of precision when working with fractional values.
- Potential rounding errors, for example, when summing:
```typescript
new Money(0.0, EUR)
.add(new Money(49941947.50, 'EUR'))
.add(new Money(70472042.00, 'EUR'))
.add(new Money(24552195.08, 'EUR'))
.add(new Money(19034739.10, 'EUR'))
.add(new Money(17737647.61, 'EUR'))
```
// Result: `181 738 571,27`, Expected result: `181 738 571,29`.
// Learn more in official documentation at https://brix365.com/en/help/platform/js-imprecise-calculations.html.
#BreakingChangeAlert
4. TEAM-29457 A new method has been added for bulk downloading of .cms files with a user’s attached signature from an app item: createCMSFile
.
Use example:
// Request the app item from a field in the context
const app = await Context.data.app?.fetch();
const signHistory = await app?.getSignHistory();
// For attributes, use SignType.Attributes
const entity = signHistory?.find(s => s.type === SignType.File);
if (!entity) {
throw new Error('File signature not found');
}
const signID = entity.signs[0].__id;
const sign = await System.signs.entitySigns.search().where(q => q.__id.eq(signID)).first();
if (!sign) {
throw new Error('Signature with this ID does not exist');
}
const file = await sign.createCMSFile();
if (!file) {
Context.data.res = 'no file'
return
}
const url = await file.getDownloadUrl();
// Save the download URL to a context variable; it matches the file retrieved from the signature archive
Context.data.res = url
- TEAM-35167 Improved methods for working with tasks in a project's Gantt schedule. It is no longer necessary to explicitly specify the task order number in the
__gantt_order
field if the value is not provided, the next available number will be assigned automatically. Additionally, the_description
field is now editable and can be updated via scripts.
Bugs fixed
- TEAM-35876 If an external user page was added using the
addUser()
method without specifying a password, the user could not complete registration on the portal via the invitation link. The email would show a message saying that a user with this email address was already registered. This issue has been fixed. Now, when following the invitation link, the user can set a password and register on the external portal. - TEAM-36045 Fixed an error when importing external portal users from Active Directory (AD) using the
orgunit
service, which led to incorrect user creation in BRIX. - TEAM-33024 Improved the registration process on the external portal via an SMS code. A resend timeout was added, and the user notification was updated.
- TEAM-34806 Fixed an error that occurred when trying to save lead pipeline stage settings if the stage had an action to send an email.
- TEAM-35432 Fixed an issue in the user profile settings that prevented email connection when the Other option was selected in the Service field.
- TEAM-36127 Improved telephony settings. Now, only one BRIX user can be linked to a phone number added to a telephony provider.
- TEAM-35516 Enhanced the Call Log widget. Users can now click on a row in the table to open the associated Calls app item.
- TEAM-33623 The debug mode in the interface designer worked inconsistently when launched for system app forms. The issue has been fixed.
- TEAM-34987 Fixed an issue that occurred when configuring forms for the system app External Directories. If a user navigated to the Context tab and clicked on the Phone or Profile picture fields, the interface designer window would freeze.
- TEAM-35082 Improved permission settings for app items using the App property option. Now, when assigning access rights via a nested App-type field, both direct and reverse links between app items are taken into account.
- TEAM-12509 In the BRIX mobile app, an issue was identified when a user navigated to Properties from the file's context menu in the Files workspace. The problem has been resolved. This option is no longer shown in the menu; users can access properties from the file preview page.
- TEAM-19631 For stage tasks in a project plan, the completion progress is now displayed. Progress updates depending on the overall readiness of the tasks in the stage.
- TEAM-23013 The Gantt chart did not display correctly in the project page. Only a list of tasks was shown. The issue has been fixed.
- TEAM-24016 When creating a Process type project task, the field for selecting the business process was not validated. Users could leave it empty and still save the item. This has been fixed.
- TEAM-30759 In the Project Plans widget, the responsible person was not shown in the table. The issue has been fixed. The specified user now appears in the field.
- TEAM-31948 Fixed an issue where an operator in the Live Chats workspace could not send .json files during a client session. Files are now send correctly.
- TEAM-35102 Fixed an issue in app signature settings where it was not possible to select multiple users or groups in the Users with signing rights field. Elements in the field are now added and saved correctly.
- TEAM-35575 When importing contracts in complex solutions with many dependencies, an error occurred: "Cannot update solution", "desc=kontract not found". This behavior has been fixed, and the import now completes successfully.
- TEAM-35721 File signing using the Kontur provider did not work. Since connection parameters were updated on the provider’s side, the Kontur CA Integration module has been adapted to support the current Web API.
- TEAM-35740 In the Buttons widget on a Document-type app form, the icon for uploading a new file version was not displayed. This issue has been fixed.
- TEAM-36501 Fixed an issue where file shortcuts created in the Files worksapce were not shown in the file list.
- TEAM-33570 Improved the layout of options in the LiveChat settings window in Administration > Live Chats. The Chat background option is now shown in the Appearance block.
- TEAM-35853 After updating solutions in a company, a new process version was not applied if task forms had been updated. The issue was resolved by adjusting the processing order: now the widget service is processed before the processor service during import.
- TEAM-35979 When a task was escalated and the deadline was set using a variable or script, the completion time was incorrectly determined. The Completed field would show the task creation date. This issue has been fixed.
- TEAM-12262 Fixed data display issues in the Dynamic List widget when it was configured to connect with a table. Now, data entered in the dynamic list is saved in the linked table and vice versa. To update the data, table properties must be mapped to each other.
- TEAM-32536 Improved behavior of tables on app forms. Now, an event set to trigger on value change only fires after the user finishes editing the cell.
- TEAM-32827 If a process was launched with multiple items using a bulk action from the app page, not all selected items were passed to the process instance. The issue has been fixed. Bulk process start now works correctly.
- TEAM-33515 To simplify working with app item subscribers, a new method
.setSubscribers(users)
was added. It accepts an array of users and completely overrides the__subscribers
field in the database. This can be used, for example, to clear or reset subscribers. - TEAM-34028 Users from nested groups retained access rights granted at the parent group level even after the nested relationship was removed. The issue has been fixed.
- TEAM-35239 Fixed access to API method operations. Requests are now allowed only for users with an issued token.
- TEAM-36272 Fixed an issue where a project task could not be opened from the Gantt chart if the Control field was empty. Tasks now open correctly.
- TEAM-23587 Improved user experience during the file signing process from tasks. If no signature provider integrations are set up in the company, a notification will now appear during task execution.
- TEAM-34919 In the Download and Edit Button widget, the print button is now hidden by default. It can be enabled in the widget settings.
- TEAM-35556 Expanded file format conversion for preview when no office suite is enabled. Now the system supports previewing formats such as .xlsx, .xls, .xltx, .xlt, .doc, .txt, .rtf, .dot, and .dotx.
- TEAM-35780 Added support for saving task progress when importing a calendar plan from third-party services.
- TEAM-35891 Previously, to complete a calendar plan import using an .mpp or .xml file, it was necessary to fill in the Assigned to field in the conflict resolution window. This field is now optional, and import can continue after resolving the conflict.
Found a typo? Select it and press Ctrl+Enter to send us feedback