Introduction of the #BreakingChangeAlert tag
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.
Processes
TEAM-12541 A new "read-only" mode for administrators has been added in the process designer. It allows them to view the settings and layout of the process without the ability to edit it. This mode is activated upon request and prevents accidental modifications in critical processes. #BreakingChangeAlert
TEAM-26232 In this platform update, a feature has been added that allows for enlarging the process map window in the monitor or on the task page. Users can now open the map in full-screen mode, which greatly simplifies the analysis and navigation of complex business processes. #BreakingChangeAlert
TEAM-10589 Improved readability of business process maps. Now, the background of connector names in process diagrams is semi-transparent, which facilitates visual perception of the map.
Reports
TEAM-27874 A new feature has been added to the Report app type that allows users to flexibly configure the display of columns and filters. A Settings button has been added to the report page, with the option to select Table Settings. Users can specify which columns to display, which to use for filtering, and which field to use for sorting. The list of available columns is set by the administrator when creating the report, and users can adapt their display according to their own needs. #BreakingChangeAlert
TEAM-28134 Reports now have the option to add columns with links to app items. Users can activate this feature by checking the Link to app item box when creating or editing a report. This allows each column associated with the __name
field to display a clickable link to directly access the app item from the report. This feature is only available for reports whose data sources are of the App type. #BreakingChangeAlert
CRM
TEAM-25985 Added the ability to hide Kanban statuses in the sales pipeline depending on the user's role. Now it is possible to:
- designate statuses visible only to managers, for example, for distributing tasks among performers.
- manage several types of sales within the same pipeine with both common and individual statuses. This allows all users to see a fully populated Kanban board without gaps, enhancing visual perception and ease of use.
Scripts
TEAM-12807 The error handling of the getWorkingTime()
method has been improved. Now, if parameters are passed to the method where from
is later than to
, the script does not crash with an error. Instead, the difference between the dates is calculated regardless of the order. If from
is greater than to
, the method correctly returns the difference from the greater to the lesser.
TEAM-16205 The script editor has added the Blob
interface and the blob()
method.
- The Blob interface is a universal wrapper for the standard type https://developer.mozilla.org/ru/docs/Web/API/Blob on both client and server;
- The
blob()
method inFetchResponse
for obtaining a response in the form of binary data.
TEAM-26574 The OrgunitField
in the Permission
structure no longer has to be present in the json item
. This avoids SQL query errors when the field is absent in the json
.
For example, previously, when adding access fields to process instances such as "__createdBy", "__currentPerformers", "__subscribers"
, and the new field "__viewers"
(with the "omitempty"
flag), the system required all these fields to be present. Now, fields that may not be in each instance do not cause a query error.
TEAM-27334 Added the body
field in the fetch
request response that contains the result stream of the request.
Example of stream handling:
async function test() {
const res = await fetch("http://my-api.com/list");
const reader = res.body.getReader();
Context.data.debug = '';
// Read the stream
while (true) {
const { done, value } = await reader.read();
if (done) {
break;
}
Context.data.debug += value
}
}
The new field is available in both client and server scripts.
Mobile app
TEAM-3204 Added the ability to share files from mobile devices to the BRIX mobile app, starting with version 1.4.8. Users can now send files from messengers such as Telegram directly into the BRIX app.
Widgets
TEAM-24615 In the widget builder settings, you can now configure how to display the widget when it is added to the template of another widget. The following display modes are available:
- fully (default);
- fully, but without calling the initialization function;
- display only the title;
- a separate widget for the builder mode.
This feature is useful for reusable widgets, especially those distributed in BRIX Store solutions. Developers can now more flexibly manage widget display in builder mode, avoiding rendering and initialization issues.
EQL
TEAM-26240 In the EQL control, it is now possible to set parameters using the "@" symbol.
Example: [__createdBy]=@Author
. When setting such a query, additional fields for filtering appear. This feature can be useful for use in saved filters.
Contracts
TEAM-18302 Improvements to Contracts:
- The title in the source settings window has been changed from Contract Settings to Source Settings.
- When all sources are deleted, the correct label No sources for the contract is displayed.
- If there is an incomplete mapping of source fields to the contract fields and the recovery form is closed, a confirmation window is displayed with a message about the incomplete mapping.
- Sources with incomplete field mapping are saved and displayed in source settings with an error.
TEAM-27251 In the field mapping window of source and contract, to the titles of the Contract and App columns, the names of the contract and the app have been added respectively, separated by a dash.
Projects
TEAM-24489 Now, when changing the responsible party in a project task, a notification is sent to the task activity stream.
TEAM-27157 Added color indicators for unstarted processes in the Gantt chart.
ECM
TEAM-25769 New access settings have been added to the hierarchical directory, allowing non-administrators to edit folders. It is now possible to separately configure rights for creating, viewing, and editing folders for specified employees.
TEAM-25835 Added the ability to change the names of standard buttons in the signing activity. Works similarly to changing button names in the Task block in the process designer. If names are set for connectors in the diagram, they are used as button texts on the page. Otherwise, default values are used.
Service
TEAM-26374 Changed system behavior when opening the Live Chats workspace. Now, when navigating to the workspace, the top app or page automatically opens.
Users
TEAM-4548 Added the ability to view and clear occupied positions before sending invitations or saving changes.
TEAM-6705 Implemented the ability to customize the menu for users, saving time searching for the needed workspace. The administrator enables the Allow users to configure the menu feature in Administration > Company Settings. Users can customize their menu by clicking the wrench icon in the sidebar, changing the order of workspaces, and managing their visibility. The Default setting allows resetting individual settings and applying global administrator settings.
Activation of the feature flag enableCustomMenu
is required.
Data management
TEAM-20611 Implemented the ability to work with deleted context variables in apps, business processes, and widgets. Administrators can view, restore, or delete these variables using the Show deleted variables flag. This enhances data control and helps maintain data integrity, preventing errors due to incorrect deletion.
Activity stream
TEAM-27260 Pinned the tabs Chats, Activity Stream, Favorites in the Messages workspace, so they remain visible when scrolling through the list of chats or objects.
TEAM-27263 The context menu item Show in the activity stream list has been renamed to Show in object list to more accurately reflect the action's purpose.
Bugs fixed
1. TEAM-22473 Fixed the names of chart types in the Chart widget. Previously, the types Advanced Pie and Multiple Pies did not accurately reflect their actual appearance. They are now correctly labeled as Advanced Doughnut and Multiple Doughnuts, accurately reflecting their structure. #BreakingChangeAlert
2. TEAM-24382 Fixed action logging for tasks in the Security Audit widget. Previously, the creation, updating, and completion of tasks were not recorded. Now, all actions with tasks are correctly displayed in the widget, ensuring full transparency of operations. #BreakingChangeAlert
3. TEAM-27793 Fixed an error with transferring a temporary file in a process initiated via API. Previously, despite successful process execution, the File type variable appeared visually empty and displayed as "00000000-0000-0000-0000-000000000000" in the API. Now, files are correctly passed into the context of the launched process, ensuring their availability and use within the process. #BreakingChangeAlert
4. TEAM-27573 A bug was identified related to the json()
method for new unsaved app items. If you used the undocumented json()
method for app items in scripts, as shown below, note that the behavior for the __createdBy
field has changed.
const item = Namespace.app.my_app_1.create();
Context.data.test = JSON.stringify((<any>item).json());
Previously, an empty value in this field was an empty array [], but this is incorrect as the field is singular. Now the empty value will be null. #BreakingChangeAlert
5. TEAM-27358 When sending a large body in an API Method, its content will never be encoded in base64. This behavior was unstable and led to development issues. Now, when working with the body of a request in the API Method script, you can always treat it as the original request. #BreakingChangeAlert
6. TEAM-10053 Fixed an error in the app with incorrect display of nested properties on the process transition button. Previously, fields intended for editing nested properties were concatenated with a delimiter. Now, they are displayed correctly.
7. TEAM-18105 Fixed an issue with displaying the name of a form after copying in processes. Previously, instead of the user-specified name, the form's identifier was displayed. Now the name correctly reflects the user's choice.
8. TEAM-19258 Fixed a debugging issue in processes that prevented adding multiple items. Previously, when selecting an item with a long name, the input field expanded, hiding the magnifying glass icon and blocking the addition of more items. Now, the magnifying glass icon remains accessible, and users can add multiple items without restrictions.
9. TEAM-23951 Fixed an issue in the Tasks workspace where, despite the Not required setting in the Control field, users received control tasks for subtasks.
10. TEAM-24474 Fixed an error in the changeDueDate
method, where the comment specified when changing the task completion date was not displayed in the process activity stream.
11. TEAM-25013 Fixed an error in the count()
method when using the_searchInstances
function. Previously, the count() method incorrectly returned a number of process instances that differed from the actual count calculated through .all().length
.
12. TEAM-25258 Fixed an issue with transmitting values to a table from custom activities in business processes. Previously, when using activities in business processes, data was not correctly transmitted to tables despite the proper filling of the context and identical table fields.
13. TEAM-26329 Fixed an issue with incorrect attribution of changes in items after using the Edit app Item activity in business processes. Now, the user is correctly displayed as the author of the changes, not the system.
14. TEAM-26933 Previously, clicking the Help button on the process diagram would navigate on the current browser tab, now the help opens in a new tab.
15. TEAM-27230 Fixed an issue that allowed setting the task completion deadline to a past date. Now, the Complete by field includes a restriction: it is not possible to select a date earlier than the current day.
16. TEAM-27547 Fixed an error in report imports when data sources depend on other solutions. Previously, attempting to import reports without pre-installing dependent solutions resulted in a "collections for datasources: not found" error. Now, the system correctly handles dependencies between solutions, preventing such errors and ensuring successful report imports in any configuration.
17. TEAM-27931 Fixed an error in exporting business process maps in PNG format. Previously, the shapes representing elements on the process map did not appear in the final image. Now, the export is performed correctly, and all elements are visualized as expected.
18. TEAM-28131 Fixed an error that made deleted context variables accessible in business process reports. Now, when creating a report, it is not possible to select deleted context properties as columns, ensuring the accuracy and relevance of the displayed data.
19. TEAM-28466 Fixed an error in reports when using a column aggregated by a Money type field, which led to failures when accessing data through scripts. Previously, attempts to use aggregated money data in scripts resulted in errors related to data format handling.
20. TEAM-28469 Fixed an error in filtering report data in scripts. Previously, attempts to apply a filter to report data through a script resulted in internal errors, hindering the correct filling of the table.
21. TEAM-28005 Fixed an issue where operators were receiving a missed call notification even if one of the operators had already answered the call. Now, if an operator picks up, other operators will not see a missed call notification.
22. TEAM-24838 Added event handling for enabling/disabling a module.
23. TEAM-26340 Previously, methods for obtaining a process template schema did not return the code and namespace of variables of the App type. Now the response includes additional schema data: https://api.brix.com/en/public-api/guides/FieldData/
24. TEAM-26527 A bug was identified where after exporting and importing workspaces, the Imports
dependencies in the widget stopped working if the workspace code was changed during import. This led to errors indicating the absence of a workspace with the required code. The problem has been resolved.
25. TEAM-27560 A bug was identified related to passing links to app items in business process action methods via Imports
. When passing an array of users as a parameter, a TypeError
occurred, indicating an attempt to convert a cyclic structure to JSON. The problem has been fixed.
26. TEAM-27999 A bug was identified and fixed that occurred when creating an external portal from a template. The error manifested as "TypeError: Cannot read properties of undefined (reading 'portal')" both during initialization and at runtime of the portal's main page designer.
27. TEAM-20729 A bug related to the Show on condition setting for Yes/No Switch variables in widget builder was identified and fixed. When creating an app item and applying this setting, the Yes/No Switch variable was automatically set to No, which did not match the expected behavior. This led to the variable visually appearing as selected, although it remained empty in the app context.
28. TEAM-26261 A bug was identified and fixed related to the display of Input/Output columns in the context of a widget after enabling options to display the widget in the header with buttons on forms or in the sidebar in the low-code widget builder. Upon reopening the widget on the context tab, the Input/Output columns were not displayed, and the options for displaying the widget in the header and sidebar appeared as disabled and inactive, not allowing any changes.
29. TEAM-27514 A bug related to the display of restricted dates on Date fields was identified and fixed. Previously, restricted dates were not marked on the calendar, which could lead users to misunderstand which dates were available for selection.
30. TEAM-27670 A bug related to widget settings in the builder was identified and fixed. The problem was that after creating and binding a system function on the Settings tab, saving changes did not retain the selected method after exiting and re-entering the builder.
31. TEAM-27959 A bug related to ignoring validation errors when the flag Do not display widget with validation errors was enabled has been fixed. If the form setting was enabled, the app item was saved even when validation errors were present.
32. TEAM-25975 An error was identified when adding the library tabulator.min.js
to the Code widget, where a problem occurred due to the incorrect MIME type (application/octet-stream), leading to an execution error due to the activated strict MIME type checking.
33. TEAM-27372 An error was identified related to the incorrect update of the File Preview widget's content when changing the selected file. When selecting a new app item and clicking the file preview button, the widget displayed the previously selected file, not considering the new data. A redraw of the view widget has been implemented upon changes in the widget's input data.
34. TEAM-27780 A problem was identified with excessive buttons on the page with a document packet after completing the approval process and their placement on the task form. Users noticed the presence of the Form Settings button, which should not be displayed on this page. An error occurs when attempting to click Form Settings.
36. TEAM-27783 A problem with narrowing the version comparison window after refreshing the page in the Document type app was identified. The error has been fixed.
37. TEAM-27979 In the application for creating a signature in the Kontur provider for identification by SMS, a request for operation confirmation has been added to Kontur. Now, the SMS code for confirmation, which can be transmitted to the Kontur using tssdk, will be sent to the number specified in the Advanced non-qualified e-signature request block.
```javascript
const result = await signRequest.confirm(smsCode);
```
where:
- `smsCode` - SMS code as string
- `signRequest` - request for issuing the signature
After which the signature can be issued.
38. TEAM-28071 A bug was identified and fixed in the Approval block related to changing the type of swimlane from dynamic to static during process setup. The error appeared after a user modified the settings of the second swimlane and selected a user group.
39. TEAM-28145 The display of the Sign button on the user form has been corrected after it was removed in the designer and re-added.
40. TEAM-28354 File deletion handling has been added to the system file viewer widget linked to the widget's field.
41. TEAM-23251 The Plan archive field has been hidden from the user interface as it has been removed from the business logic of the workspace.
42. TEAM-24435 If the End date falls on a non-working day, the date is adjusted to the next working day inclusive. This behavior is consistent for both drag-and-drop and inline editing. The duration of the task in days is kept according to the working days within the range. This check only works in the Gantt chart widget; it is not present on the task creation and editing forms.
43. TEAM-26275 The milestone is considered in the overall progress of a stage task. If the milestone is not closed, the stage task will not be completed.
44. TEAM-26344 Previously, notifications about the completion of project tasks were not sent to the manager. This error has been corrected.
45. TEAM-26405 The Project tasks widget now functions correctly, filter values are applied to the widget and are saved; upon reopening the project view form, the saved filter is applied.
46. TEAM-27725 Errors in solution import on various platform versions have been corrected.
47. TEAM-27905 Errors in displaying individual interface elements in the Gantt chart have been corrected.
48. TEAM-27947 A bug was identified and fixed related to missing fields in electronic signature details. Users encountered issues where fields such as certSerialNumber
, commonName
, and organization
were not displayed correctly.
49. TEAM-28497 An error related to the execution of linked tasks in the Projects system workspace was identified and fixed. The error occurred after setting end-to-start task dependencies and then trying to complete one of the linked tasks. When the Done button was pressed on the task form, an error notification appeared, although the task was marked as completed.
50. TEAM-28798 An issue with increased load on MongoDB due to frequent queries to the feature_flags
collection in the elma365commerceVahter
database was identified. These queries, performed every 15 minutes, led to significant CPU load, impacting overall system performance. The error has been resolved.
51. TEAM-28807 An error was identified and corrected during the retrieval of signature data from an external e-signature provider. The problem occurred when calling the getDetails
method for the signed item internalCorrespondence
, despite the item being correctly signed.
52. TEAM-25233 An issue with missing notifications about the creation of events in the calendar was identified and corrected. Sometimes event participants did not receive notifications.
53. TEAM-25388 An error causing duplication of business process instances upon multiple click on the Start Process button was identified and eliminated. This issue was evident when using the process start form, which reopened with each button press, allowing the same process to be launched multiple times without proper control. To resolve this issue, the start button is now locked until the previous start request is completed and a notification of successful process start appears.
54. TEAM-26333 An error related to the incorrect saving of items in dependent apps was resolved. When attempting to create an item in one app through another app's form, the dependent item was saved even if the main item failed. Now, if the main item is not saved, the related items will also not be created, ensuring compliance with the logic of dependent fields and improving system stability.
55. TEAM-26867 An error related to the incorrect setting of access rights when creating new companies for the Projects app was corrected. The issue occurred during data migration, where access rights were not properly applied. Now, access rights are correctly set, and access to app items is restricted according to settings, ensuring proper access control and data protection.
56. TEAM-27162 An error was identified and corrected where messages from muted channels were not displayed in Favorites.
57. TEAM-27323 An issue was identified and corrected where the module icon was not displayed after importing a solution. The problem manifested as follows: after importing the solution and navigating to the module administration workspace, the module icon was replaced with a placeholder. To resolve the issue in existing Store solutions using .svg icons, it is necessary to manually re-upload the icon, re-export the module, or specify the icon format through editing the package using elma365pm
.
58. TEAM-27733 A problem with synchronizing group members from AD was identified when dealing with a large number of users and groups. When attempting to synchronize with an OU containing over 10,000 users and a large number of groups with more than 2,000 members, the list of group members remained empty, despite logs indicating successful synchronization. This issue has been resolved.
59. TEAM-27949 A bug was detected where an app with a button on the form that launches a process from another app could be exported without errors, despite warnings. This issue has been corrected.
60. TEAM-28018 An error was identified and corrected where email sending for password change and recovery was not working when a periodic password change policy was active. The problem led to users not receiving password change notifications and being unable to reset their password through the "forgot password" function, causing errors. Now, emails are sent correctly.
61. TEAM-28136 A bug was identified and corrected that caused the "get page: not found" error during configuration import. The issue occurred during the application import stage if the configuration contained a removed workspace.
62. TEAM-28308 A bug was identified and corrected related to the lack of access to a new page for users and incorrect determination of the executor after updating the workspace or solution. The problem occurred when adding a new page and an access group in the workspace, then updating the workspace in another instance of the system. Users added to the group after the update did not have access to the new page, and re-saving access settings did not help. The error has now been corrected.
63. TEAM-28552 An error was identified and corrected where solution updates were failing with the "forbidden without check" error. The problem occurred when attempting to update the solution after its initial import, where the first import status request led to an error. Following the correction, solution updates now proceed successfully without the error.