Here is the list of changes that you can explore right now by activating the BRIX trial version.
After November 11, 2024, all changes will become available to our clients in their active companies. Please note, the list may be expanded after the release.
To enhance the update process and increase your awareness about significant changes, we are introducing the new #BreakingChangeAlert tag. This tag will be used to mark critical changes that could impact the operation of your system. Please pay special attention to any updates marked with this tag, as they may require additional actions on your part to adapt or adjust your current configuration.
Tasks
TEAM-30613 When opening a completed task via Tasks > All Tasks, users without administrator permissions now see the locked form of the task as it looked when it was executed. Previously, the process monitor was opened instead, giving access to information on all tasks and process context, including the ability to change data.
Calendar
TEAM-27125 Now you can bind the business calendar to a user so that tasks are assigned and executed only during the user’s working hours. If the calendar is not bound, the tasks are assigned according to the default schedule. Only one calendar can be bound to one user.
Calendar binding is available in Administration > Users > +User (invitation window). A drop-down list was added for selecting a calendar.
Also added a modal window for managing calendars:
- For user: available to view the current calendar and scheduled changes.
- For administrator: the ability to change the current calendar, add and edit planned changes with an indication of the effective date.
Performance metrics
TEAM-30900 Implemented unconditional performance metrics export into Prometheus external storage. Now when the global.monitoring.lowcode.metricExportEnabled
setting is enabled in values-elma365.yaml
, metrics are exported even if data collection for a performance report is disabled. This allows you to get real-time BRIX system performance metrics for analysis in Grafana without enabling internal report.
Access permissions
TEAM-21894 Implemented the ability to configure access rights for nested properties of the App type fields. Administrators now have more flexibility in managing access to items. For example, agency staff can see only the loan products that are available to them based on the access settings for linked apps. The allowCollectionFieldPermissions
feature flag is used to activate the ability to configure access rights for nested properties.
TS SDK
- TEAM-29932 The new
company
field has been added to theSystem
global object in scripts to provide access to the company’s information:
System.company.code
is used in scripts to obtain a unique company identifier that remains constant and is not affected by the alias changes.System.company.url
provides the base URL of the company, which is useful when forming links or performing queries in the correct company context.System.company.getLanguages()
provides a list of available languages in the system, which helps in implementing localization and multi-language support.
This update allows scripts to retrieve important company identifiers, which is crucial for implementing multitenant solutions. New properties in System.company
provide a secure and convenient way to retrieve company information without having to pass this data in request headers.
- TEAM-25859 Added the
setName()
method to TSSDK to change folder name in the folder hierarchy via scripts. It is now possible to programmatically change the folder name, which was not possible before.
Document management
- TEAM-30222 Added a preloader that is displayed when the Signing button is clicked in the Sign block. Now, if certificates take time to load, users see a loading indicator, which eliminates the feeling of the system 'hanging'.
- TEAM-29760 In the settings related to document archiving and approval, the approach to selecting fields for approval sheets and lists of informed users has been changed. Inclusion of fields is now used instead of their exclusion. Users manually specify only the displayed fields, which gives full control over the contents of the sheets and prevents new fields from being added automatically without configuration.
- TEAM-26235 Now, if office format documents (.doc, .xlsx, etc.) cannot be displayed on the system due to lack of office module licenses (such as OnlyOffice) or unsupported format, the user is shown a notification prompting them to download the file for viewing on their computer. The function is activated when office modules are disabled or the file cannot be converted to .pdf, which helps users to immediately realize that the document is only available for downloading.
- TEAM-19116 When importing and exporting apps, workspaces, solutions, and configurations, the step to check variables in document templates has been added. If variable inconsistencies are found in the template, the administrator will see a warning. This avoids errors in templating and variable mapping.
- Added thumbnail display for .webp files in file storage. Now when uploading an image in this format, users will see the image preview.
- TEAM-2752 Added the ability to paste files from clipboard into the File type field. Users can now directly paste files (including screenshots) using copy and paste, similar to attaching screenshots in the activity stream via Ctrl+V.
Supported file types:
- Images: .apng, .avif, .bmp, .gif, .jpg/jpeg, .png, .svg, .tif/tiff, .webp.
- Documents: .epub, .doc, .docx, .pdf, .rtf, .xls, .xlsx, .ppt, .pptx, .ods, .odp, .odt, .vsd, .xml, .csv, .txt.
- Archives: .gz, .rar, .7z, .bz, .bz2, .arc, .tar, .zip.
- Audio files: .cda, .aac, .mid/midi, .mp3, .oga, .wav, .weba.
- Other: .json, .xul.
Please note that in Mozilla Firefox, inserting multiple files at once is not supported within the browser: only the first file from the clipboard is inserted.
- TEAM-30401 Added the ability to create shortcuts to existing app items in the Files workspace. Users can now select a specific item for adding a shortcut or create a new item, if it is allowed by the access settings.
Projects
- In the Gantt Chart widget settings, the Display task numbers option for calendar plan has been added. This makes it easier to work with projects with many tasks and complex hierarchy.
- The numbering is displayed only on the Gantt Chart and does not affect Project plan items and Project tasks.
- It is configured in the Form Builder in the widget settings via the Display task numbers option (disabled by default).
- Numbering is not taken into account during export and import, as the system automatically assigns numbers during import according to its own rules.
The configuration is saved for each project separately, making it easier to navigate through the tasks in the Gantt chart.
- TEAM-18740 Added ability to hide completed tasks in the Gantt Chart widget. This allows you to display only current tasks and reduce the amount of information on the screen.
- TEAM-30813 Added the ability to move tasks on the Gantt chart to the nearest day, regardless of the scale selected (week, month, year). This allows you to accurately place tasks on the correct day on the timeline, without automatically rounding to the beginning or end of the week, month, or year.
- TEAM-30683 A new scaling level, Quarter, has been added to the Gantt Chart widget. Users can now scale the view by quarter, which adds additional flexibility when planning projects.
Service
- TEAM-3295 Added sound notification settings block for operators in Administration > Live Chats Settings. Now you can select sounds for notifications about new sessions and new messages.
- TEAM-29908 Added global setting to enable or disable manual reassignment of sessions to operators with the Offline status.
- TEAM-30773 Fixed validation in Livechat for authorization fields (phone, name, email). Now:
- Numbers, brackets, +, - and automatic country selection are allowed for phone.
- English letters, numbers, @, _, ., +, - are allowed for email, special characters are forbidden.
- TEAM-30882 Updated the component for uploading files to sessions, added an upload progress bar, making the process more user-friendly.
Activity stream
- TEAM-6618 Added the ability to merge activity streams from multiple apps in the Object-based activity stream widget. You can now specify multiple linked activity streams in the settings to combine messages from different linked apps. This allows, for example, the Requests app activity stream to display messages from related Tasks and Subtasks apps. Backward compatibility with current settings is kept.
- Now, if there are unread messages, when opening an object, only they and their associated comments are displayed. Sorting by date will be kept. Added buttons for loading additional messages:
- Show more: loads 10 more unread messages.
- Show All Messages: displays the entire activity stream if there are less than 10 or no unread messages.
When there are no unread messages, the activity stream is fully displayed.
This behavior applies only on the object page and does not affect the Activity stream widget in the app item page.
Widgets
TEAM-28358 Added the ability to customize sidebar styles in the Modal Window widget. Now the HTML sidebar styles parameter is available in the widget settings, which allows you to customize the width and design of the sidebar for each application separately.
Table data type
TEAM-18231 Added sorting for columns of the Date/Time type in tables.
Iframe support
TEAM-28998 Implemented the ability to open BRIX within an iframe on third-party domains with authentication support. Apps from external systems can now be integrated via iframe, providing authorization by one-time JWT token and secure data transfer between domains.
Bugs fixed
- TEAM-28907 Fixed an issue with task reassignment for the Create App Item and Edit App Item blocks. Now for tasks that create or modify objects, the option to enable the setting of reassignment to another executor has been added.
Previously, users with normal permissions could not reassign the task to other employees if they didn’t have permissions to create or edit an item. Now:
- Users can reassign tasks in the block if the Reassign setting is activated.
- If a user doesn’t have enough permissions to perform a task, they will receive a notification about it instead of seeing an error.
By default, the reassignment setting is disabled and requires activation when setting up the blocks. #BreakingChangeAlert
- TEAM-29405 Corrected work of TSSDK methods for the working day schedule.
The operation of the getGeneralSettings
and saveGeneralSettings
methods in the System.productionSchedule
object has been updated.
The getGeneralSettings
method now returns the workday schedule with additional breaks.
- Added a new field
additionalBreakTimes
, where all breaks except the main lunch break are recorded. - Now the structure looks like this:
export interface ProductionScheduleGeneralSettings {
daySchedule: {
workingTime: TimeFromAndTo;
lunchTime: TimeFromAndTo;
additionalBreakTimes: TimeFromAndTo[];
};
weekends: {
monday: boolean;
tuesday: boolean;
wednesday: boolean;
thursday: boolean;
friday: boolean;
saturday: boolean;
sunday: boolean;
};
}
The saveGeneralSettings
method saves work schedule settings, including additional breaks.
The methods now only work with the standard workday mode, ignoring custom settings. #BreakingChangeAlert
- TEAM-29407 Fixed an issue with time differences when using
TDatetime
, where local computer timezone was affecting the time value when creating TDatetime objects, causing discrepancies between client and server scripts.
- Creating a
TDatetime
based on aDate
object is now not recommended, as it caused time differences depending on the user’s local timezone. TDatetime
constructors have been updated and extended to correctly create objects without usingDate
.
Correct TDatetime
creation examples:
- Create new Datetime(2024, 9 , 1, 0, 0, 0, 0, 0, 0, 0) from transferred arguments.
- Create new Datetime(1727082196) from unix transferred in milliseconds.
- Create new Datetime('2024-09-13T10:10:10') from the transferred string.
- An empty initialization creates the current time: new Datetime().
Result:
- All
TDatetime
objects are now created according to the timezone configured for the scenario. - Fixed time discrepancies when using different timezones on the client and server.
Important: The timezone for all new TDatetime
objects will match the timezone of the script where it is executed. #BreakingChangeAlert
- TEAM-3016 Fixed an issue that caused a template to be saved immediately when expanding the list of workspaces and apps in Administration > Document Templates. Now the workspaces and apps list opens correctly and the template can be added to the desired app.
- TEAM-5318 Fixed an issue in Files > Users that caused sorting by name to not work correctly. Previously, items were swapped but not sorted alphabetically. Now the list is sorted correctly by the displayed username.
- TEAM-16312 Fixed an issue in the mobile application with automatic authorization reset for users in the On-Premises edition. The client had to re-enter login and password several times a day, which disrupted the stable operation of the application. The problem was observed when using authorization via Active Directory on iOS devices. There were no such failures on Android. Fixed the behavior of the mobile application for the On-Premises edition. Now authorization is saved correctly, and re-login is not required every time the application is restarted.
- TEAM-17055 Fixed the display of the group chat icon in Live Chats. Before the fix, when adding a group chat, a session was created with the first customer’s avatar icon. After the fix, when adding a group chat, the system icon of the group chat is set.
- TEAM-20532 In the printed form settings, when the With electronic signature information option was enabled, the template was not updated and the electronic signature information was missing when printing. This issue has been fixed and the electronic signature information is displayed in the printed form.
- TEAM-21483 Fixed an issue in the app signature settings. The issue was occurring with the Configure fields manually option. It was selected even if the settings window was closed without saving changes. Now, if the signature settings are closed without saving, the correct Exclude system default fields option is displayed when reopened.
- TEAM-23965 Fixed an issue where very long attribute values like Full Name and Link could be displayed incorrectly in the session sidebar, e.g., out of frame.
- TEAM-24632 Fixed an issue in Messages > Chats where loading could get stuck in an infinite loop when quickly scrolling up in a chat with a long message history.
- TEAM-25267 Sometimes when refreshing the page where the widget builder was open, a message appeared that the widget was locked by the current user. This issue has been fixed, now the lock is released immediately when the page is closed or refreshed.
- TEAM-28076 Fixed an issue in Apps > Items that caused the automatic status update of an item after starting a business process to not be displayed visually for some customers. Now when an item is moved to a new status via a business process, the update is displayed correctly without having to manually refresh the page.
- TEAM-28248 Fixed data display in the Chart widget when filtering by creation date. Now, when selecting a date range via calendar, full day data is displayed without the need for manual entry. Previously, when using a calendar, filtering was applied based on the time of selection, which resulted in incomplete results.
- TEAM-28529 Fixed an issue with mandatory fields in the Interface designer. Now when a field is no longer mandatory, the "Mandatory Field" warning is also hidden correctly. Previously, the warning message remained visible even after the fields were no longer mandatory, which could mislead users.
- TEAM-29486 In the System Apps > External Users workspace, it was previously discovered that the item name was not formed correctly when the Generate name from template option was selected. The title remained as <No title> even though the template was configured using app variables. Also, when the Key Variable option was selected, the title was always generated based on the full name, ignoring the selected template. This behavior has been fixed.
- TEAM-29549 Fixed an issue in Modules > Business process actions. Previously there was a problem with data transfer via dynamic bindings for context fields of File and App type in modules. The error occurred when executing an action in a business process activity and caused the process to terminate. Now files and apps are correctly passed through dynamic bindings to CustomActivity without errors.
- TEAM-29909 Fixed an issue that occurred when reassigning a task with a Date/Time variable filled in via
new Datetime()
. Now the reassignment works correctly when using variables of the Date/Time type in the task due date. - TEAM-29930 Fixed display of 1-day task on the Gantt chart in the Project Plan widget. Previously, a task with the same start and end dates was displayed incorrectly, as the colored section was not filled in for the whole day. Now such tasks are correctly displayed as full items on the timeline.
- TEAM-29992 Fixed behavior of notifications when canceling document registration. Previously, if a task with an executor as a user group was configured in a business process, and the registration activity was used inside the swimlane, then when the registration was canceled, all users from this group were displayed in the notification. Now only the user who actually canceled the registration is displayed in the notification.
- TEAM-30020 Fixed incorrect display of a drop-down list in
PhoneCountryComponent
. Previously, when selecting a country in the company settings, the drop-down list was displayed with zero width, making it invisible. Now the list is displayed correctly with phone codes and flag icons. Also fixed an issue where the country code field was editable. A manually entered value was not affecting the controller’s returned data, but this behavior is now fixed.
- TEAM-30089 Fixed an issue in Projects > Gantt Chart that caused the progress of phase tasks to not recalculate when dragging tasks between phase and root levels.
- TEAM-30126 Fixed an issue in the Projects workspace. Eliminated duplicate messages for overdue tasks. Users are now sent one general notification with separation by project name, and details hidden under a spoiler. If the project manager is also the executor of an overdue task, they receive the notification only as the manager, avoiding duplication.
- TEAM-30166 Fixed an issue that caused event handler fields to not load correctly when adding a new event in custom module settings. Now when you go to a tab and click the add button, all fields are displayed correctly and without delay.
- TEAM-30238 In the performance report, each module event handler is now displayed separately due to the addition of a unique identifier. Previously, all handlers of one module were grouped into one line, which made it difficult to diagnose their impact on the system. Now the following format for each handler is used:
{module_uid}/{handler_uid}/{handler_name}
This allows you to track and analyze the performance of each handler in the report in detail.
- TEAM-30324 Fixed an issue with signature settings when exporting or importing solutions. When updating a solution in the target company, the signature settings were completely cleared: all the groups specified earlier disappeared. Now, when updating a solution, the signature settings are saved correctly. Only those organizational units that do not exist in the target company are excluded.
- In the user profile settings, when selecting a time zone, city names consisting of two words were displayed with an underscore instead of a space. Also, the list itself looked complicated, as it included items like “UTC”, “GMT”, and even “UCT”. Now the names of cities are written correctly with a space, and the list is optimized for a more convenient and neat display.
- TEAM-30494 Fixed an issue when a user navigated through menu sections, all collapsed dividers were automatically expanded. They now retain their state and remain closed when navigating.
- TEAM-30510 When executing scripts in worker-gateways, network errors were occasionally encountered when communicating with the worker-gateway, resulting in process execution failures. Errors like “ECONNREFUSED” and 502, 503, 504 statuses caused scripts to abort and require manual restart. Now retry-policy is implemented: in case of such errors, requests are automatically repeated several times, which significantly increases the stability and reliability of process execution.
- TEAM-30611 Fixed an issue where the event-bus service was not distributing subscriptions correctly when the number of pods was changed, causing conflicts and lost events. The re-subscription process is now configured to eliminate conflicts and ensure even distribution of subscriptions.
- TEAM-30615 Fixed an issue where attempting to copy the property code in a form context using Ctrl+C, the copying failed if the File List widget was present on the form. Now Ctrl+C copies the property code correctly, and the Alt+D and Alt+F hotkeys only work in the Files workspace.
- TEAM-30706 The following issue was found and fixed in the Projects workspace: when using the search bar to search by name, after opening the page of the found item, the search automatically switched to search by task. When closing the page, the string remained in the task search mode, and the user had to refresh the page to return to search by name.
- TEAM-30712 In the Projects workspace, tasks with the process type were not displayed on the critical path earlier, which could lead to errors in building the schedule. Now, tasks with the process type are correctly displayed on the critical path along with normal tasks, phase tasks, and milestones.
- TEAM-30727 In document templates, incorrect link generation occurred previously when using the HYPERLINK function in Excel templates. Instead of displaying the hyperlink correctly, an error string was generated. Now the HYPERLINK method works correctly: you can insert hyperlinks with text representation or display the link as a URL.
- TEAM-30729 An issue was found in the Messages > Channels workspace when displaying channel widgets on the page. If you placed two widgets for different channels on the page, both widgets displayed the content of the same channel (lower in order), despite the correct display in the Messages workspace. The issue has been fixed: now widgets display information of their channels correctly.
- TEAM-30794 When setting up archiving for Event type apps, a field without a name was displayed. This issue has been fixed: now all fields in the archiving settings are displayed correctly and have their own names.
- TEAM-30880 An issue was identified with phone number input in fields with strict validation enabled. The validation would incorrectly trigger, even if the entered number was correct. After the fix, validation is processed correctly for the initial input of the phone number and no more errors occur when changing the phone type.
- TEAM-30976 Fixed the following issue in the Projects workspace: when saving custom settings for the Project Plan widget (Gantt chart), the width of the columns was narrowed to a minimum. Custom width changes were not saved when reopening the project.
- TEAM-31117 Fixed an issue in the Projects workspace where a project manager without administrator permissions could not publish a calendar with a large number of tasks (more than 2000).
- TEAM-31134 In the CRM workspace, tasks created in the system (such as calls, webinars, or meetings) were duplicated on the kanban board when going to the All tab in the system’s Tasks workspace. This issue has been fixed.
- TEAM-31195 When using the
hasPermission
method for files, the script would terminate with a 500 error. The problem occurred in both client and server scripts, making it impossible to use file access checking correctly. This issue has been fixed. - TEAM-31202 Fixed an issue in template-mapper that caused the service to crash with a panic when trying to restart processes on the server after a node change in Kubernetes. This resulted in inability to correctly execute processes related to template generation and other action blocks.
- TEAM-31255 Fixed an issue in version 2024.8 that resulted in incorrect handling of contracts from scripts, namely, modified data from source apps were not returned to contract items. The fix has been added to version 2024.8 and subsequent releases.