side menu

2026.2

Here is the list of changes that you can explore right now by activating the BRIX trial version.

After March 15, 2026, 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.

Business processes

TEAM-36698 Added the ability to configure launching a subprocess simultaneously with task creation in the following elements:

  • Task;
  • Create App Item;
  • Update App Item;
  • Send Document/App Item;
  • Approval;
  • Approval by route;
  • Register Document;
  • Sign.

A new Start Process tab has been added to these blocks. Here, you can select a subprocess, configure on whose behalf it will be launched, and define conditions for interrupting the subprocess.

Launching such a process does not pause the execution of the parent process.

Use this feature to get direct access to task data without additional script processing. For example, you can launch a subprocess to send notifications about task creation or to store task data.

Modules

TEAM-9723 Added validation when attempting to delete a parameter in module settings. If the parameter is used in a module settings form or in a Script-type action form, an error will be displayed with a warning that the parameter is in use.

Calendar

TEAM-40028 Event participants can now edit and delete an event if its author is not an active user or is marked as deleted.

This resolves cases where, for example, a recurring event without an end date was created by a blocked user. Previously, such events could not be modified or deleted.

Data Types

TEAM-4449 For the Category field (one), a new display option is available that shows all values at once, allowing users to select the required one. This option can be enabled in the settings of the property added to a form.

Tables

TEAM-11412 When placing a Table field on a form, you can now configure table event tracking and bind client-side scripts to these events.

Within such scripts, you can access updated table values and use them, for example, to calculate values in other table fields.

If a Table field is added to a form, a new Table Events tab will appear in its settings, allowing you to create scripts for the following events:

  • cell value change;
  • end of cell editing;
  • row deletion;
  • row reordering.

Widgets

TEAM-36203 A new Render option has been added to widget system settings. It supports conditional display and hiding of a widget.

If:

  • Hide is set — the widget is not rendered at all. For custom widgets, the initialization function is not called;
  • the value changes from Show to Hide — the widget is destroyed, and the destroy function is triggered for custom widgets.

Use the Render option when:

  • input data for the widget is not yet available;
  • you need to optimize interface load time;
  • you want to prevent hidden elements from being inspected via browser developer tools.

This differs from the Visibility option, which also controls display but works differently:

  • if set to Hide — the widget is rendered but hidden via CSS/HTML;
  • when switching from Show to Hide — a CSS style is applied to hide the root element, but the widget remains on the page.

Visibility and Render are independent and can be used separately or together (bind them to different variables when combined).

Example:

You can render a widget only after input data is loaded by binding Render to a variable that becomes true once data is received. Then use Visibility (bound to a Yes/No Switch) to toggle display during usage.

Document management

  1. TEAM-35718 Changes to restoring and deleting file versions:
  • using Set as current no longer creates a new version. The restored version moves to the top and becomes current without changing its number (previously a copy was created with a new number);
  • when deleting a previous version, version numbers are now recalculated automatically.TEAM-39024 Optimized archiving of approval and review sheets — the process is now faster.
  1. TEAM-40299 Improved user experience when approving documents with attribute signing:
  • removed duplicate wording in the signing dialog (“Sign” → “Decision”);
  • exported approval files no longer include empty comments.
  1. TEAM-41151 Improved handling of PDF files:
  • added support for opening password-protected PDFs;
  • fixed display of dynamic PDFs generated from templates (previously could appear unfilled).
  1. TEAM-41570 Improved navigation between file versions: when switching from a previous version to the current one, the current version now opens directly in view mode.
  1. TEAM-41681 Improved handling of previous file versions:
  • such versions are now labeled Outdated;
  • a link to the current version is always available.

Table approval routes

TEAM-38342 User substitution is now supported in table-based approval routes. Approval tasks are reassigned to substitutes and returned once the substitution period ends.

Live Chats workspace

  1. TEAM-25545 Operators can now use search within a session to find previous messages and reference them in conversations. Search is available:
  • in the side panel of the request page within the Live Chat Messages widget);
  • above the current chat.
  1. TEAM-32806 Added a new business process block: Receive Message in Live Chat. It tracks incoming messages in sessions linked to an app item. For example, an operator has processed a request and is waiting for feedback. As soon as the customer replies, the related sessions are automatically closed and the request is assigned a final status. The customer can respond through any of the communication channels previously used to interact with the operator: messenger, email, or LiveChat.
    The Receive Message in Live Chat block receives the request as a context variable, identifies the sessions associated with that request, and begins waiting for an incoming message. Once feedback is received, the block completes its execution and the process continues according to the defined logic.
  1. TEAM-41444 Extended capabilities of the event handler in the Live Chats domain (custom modules). It can now track system messages for session status changes: Assigned to bot, Assigned to operator, In queue, In spam, Closed.

Email workspace

TEAM-34623 You can now resize the email composition window using the icon in the top-right corner.

Telephony

  1. TEAM-40743 For the Asterisk module, you can now define which app item opens on an incoming call.

Search can now be performed using any String field (not just phone number), allowing identification by contract number or unique code.

To configure:

  • select the field in Link field;
  • specify the incoming call identifier passed from Asterisk.
  1. TEAM-41747 Added ICE transport policy and ICE servers fields in CTI panel settings to improve connection stability.

User authentication

TEAM-37461 Added the ability to delete user data created via OAuth2 in custom modules using createWithAuthData().

If incorrect data is present:

  • remove it via removeOAuth2Data();
  • add correct data via addOAuth2Data().

TS SDK and API

  1. TEAM-1256 Added UI.notify function to display notifications at the top of the page.

Example:

async function info(): Promise<void> {
UI.notify('Information', NotificationType.Info);
}
async function warn(): Promise<void> {
UI.notify('Warning', NotificationType.Warning);
}
async function error(): Promise<void> {
UI.notify('Error', NotificationType.Error);
}
async function success(): Promise<void> {
UI.notify('Success!', NotificationType.Success);
}

  1. TEAM-35793 Added the ability to define substitution rules using TSSDK methods in EQL format.

Example:

/**
* # Substitution rule object.
*
* To create a rule, use method `System.replacements.rules.create`.
* After entering data, save the rule by calling method [[ReplacementRuleItem.save]].
* ```typescript
* // Create a substitution rule for an employee
* const rule = System.replacements.rules.create();
*
* rule.data.__name = 'Rule';
* rule.data.absent = Context.data.__createdBy;
* rule.data.replacement = Context.data.substitution;
* rule.data.filter = {
*   query: `[__name] = ${Context.data.taskName} or [dueDate] < @p1`,
*   params: { p1: new Datetime('2025-10-01T10:10:10') },
* };
*
* await rule.save();
*

Bugs fixed

  1. TEAM-27292 An error occurred when attempting to delete an app item of type Event.
  2. TEAM-31001 In the calendar, canceled events were not shown as crossed out. Now events are displayed as crossed out in any final status.
  3. TEAM-33292 If the Calendar workspace was not opened on the day a recurring event started, the event counter next to the workspace name in the left menu was not displayed.
  4. TEAM-40251 If a required field was added to a custom widget settings form, validation was not performed when saving settings. Users could save settings without filling in the required field.
  5. TEAM-24027 An error occurred in a widget when changing the value of an input Full name field if it was linked to a page property. The widget input value did not update until the user moved the cursor away from any field. Now the value updates in real time regardless of cursor position.
  6. TEAM-24439 The fetchAll method did not account for property value changes during script execution. The method behavior has been corrected.
  7. TEAM-38933 In client-side scripts, the result of the fetchAll method was not assigned to a variable.
  8. TEAM-40711 An error occurred when saving access settings if a property and target object were selected but no access rights were specified.
  9. TEAM-41278 If a time value from context was assigned to a Time-type app variable and retrieved via API, it was saved with date 2008-01-01 instead of 1970-01-01.

#BreakingChangeAlert

  1. TEAM-41280 If widget fields were bound to the form context, then the widget settings were saved and reopened, the field bindings were reset.
  2. TEAM-37583 After creating a registration office in workspace settings, it was not displayed in the records table of the Document Categorization workspace. After refreshing the page, the table itself was not displayed.
  3. TEAM-38165 The Full-Text Search page was incorrectly displayed in the Administration workspace, although it is only available in On-Premises deployments.
  4. TEAM-39720 If the Datetime() function was used in the output file name field in the Generate from Template block, an invalid format error occurred.
  5. TEAM-40103 If the counter type was changed from workspace to app without modifying its settings, a new version of the counter rule was created. Now switching the type does not create a new version.
  6. TEAM-40897 The Compare Versions button was not displayed in the Document Versions widget on a custom form of a Document-type app.
  7. TEAM-41056 If an App-type field referencing a hierarchical folder was added to a form, folder filters were not displayed when clicking the search icon.
  8. TEAM-41072 If a Files field and a script button using System.templater.parseSpreadsheet() were added to a form, an error occurred when using a file uploaded by the user. The method behavior has been corrected.
  9. TEAM-41087 An error occurred when attempting to sign an .xlsx document: “No data found for signing: file”.
  10. TEAM-41148 If a signing button used a script with uploadSign(), an error “Buffer is not defined” occurred after selecting a document and clicking Sign. The method behavior has been corrected.
  11. TEAM-41194 The Compare button was available for file formats that do not support comparison (e.g., .jpg), causing an error when clicked. Now it is only available for supported formats.
  12. TEAM-41420 It was not possible to select a different provider in the document signing window instead of the default one.
  13. TEAM-41699 A typo was fixed and the title in the file view form was localized: “<File Name (Version Number)>”.
  14. TEAM-41920 An error occurred when opening any folder (Incoming, Outgoing, Internal) in the Document Categorization workspace.
  15. TEAM-38780 If a user was mentioned on the previous file version page, a broken link appeared in their #Activity stream, preventing navigation to that version.
  16. TEAM-11288 A blank block with related tasks was displayed in tasks assigned to external users. This block is now hidden on the external portal task form.
  17. TEAM-14122 If a Button widget was used to start a process of creating a linked task, the task was not displayed in the linked tasks panel of the item page.
  18. TEAM-35106 It was not possible to mark checklist items as completed in a task because the option was inactive.
  19. TEAM-37630 If a subprocess was triggered when creating a new app item, its first task did not open automatically for the creator.
  20. TEAM-37822 When running multiple subprocess instances, the App-type variable used to link to the parent process was not preserved.
  21. TEAM-39950 In the Business Process Activity block settings in a business process, parameter values set via script were not displayed until the settings were reopened.
  22. TEAM-41367 Selected process start date and time were not saved.
  23. TEAM-41689 If a process was configured to run once but also had a recurrence set, it only ran once. Recurrence was not applied.
  24. TEAM-42089 An error occurred when launching a process from app item 1 that created app item 2 and a related task. The task was incorrectly displayed in item 1 instead of item 2.

#BreakingChangeAlert

  1. TEAM-39789 If a user imported from Active Directory was blocked, they became active again after synchronization.
  2. TEAM-40117 If a table in a workspace app had sorting or grouping configured, these settings were not preserved after export/import to another company.
  3. TEAM-40648 Table column alignment set to center was not applied; values were displayed left-aligned.
  4. TEAM-39979 When executing a POST API request with an empty data field, an “invalid argument” error was returned.

#BreakingChangeAlert

  1. TEAM-41113 In the View Approval Routes widget, approver rows, statuses, and comment fields were misaligned. The layout has been corrected.
  2. TEAM-41231 The Export Workspace and Update Workspace options were incorrectly available in system workspace settings.
  3. TEAM-41303 Incorrect file size display for deleted files over 100,000 items, and an error when retrieving sizes over 300,000 items.
  4. TEAM-39719 In the mobile app, files could not be uploaded from Android devices.
  5. TEAM-18087 In the Email workspace, returning from an email reset the list to the top. Now the scroll position is preserved.
  6. TEAM-39533 Fixed an issue where actions for missed calls (add note, create CRM task, create calendar event, launch process) were not displayed in the Telephony workspace. Actions are now available for new missed calls if the user has access to the Calls app.
  7. TEAM-41461 In the Live Chats workspace, email attachments were hidden if the message text spanned multiple lines. This issue has been fixed.
  8. TEAM-41574 In the mobile version (iPhone), it was not possible to process email requests in Live Chats. Long press now opens the action menu.
  9. TEAM-37659 In the Projects workspace, importing a project without start/end dates defaulted them to 01.01.0001. Now the fields remain empty.
  10. TEAM-39981 In the Projects workspace, phase task dates could be manually set but were later overridden. Now manual date entry is disabled for phase tasks.
  11. TEAM-40022 Fixed an issue where access settings for a project folder in the Files workspace were reset after editing the project.
  12. TEAM-40926 Fixed incorrect positioning of the context menu for tasks in long lists in the Projects workspace.
  13. TEAM-41557 Fixed the settings menu opening in the Project Register page.
  14. TEAM-41639 Fixed an error when creating records in the Project Register caused by a leftover obsolete field.
  15. TEAM-40047 A watermark with an electronic signature was not displayed in the Document Preview widget on custom task forms.
  16. TEAM-41212 If a document under approval had its file replaced, the approval sheet moved to archive and parallel tasks were not completed correctly. Now tasks complete properly.
  17. TEAM-41184 When enableEventDynamicFiltration was enabled with a custom worker pool, event handlers were still executed using the default pool.