Release notes
For user-facing changes, refer to the What’s New page. For information on upgrading from previous versions, see the Atoti Limits Migration Notes
3.2.1
2024-08-23
Download the distribution files here
You can download the following zipped distribution files:
- UI source code
- UI build
- Source files to build the module
- Sample bookmarks
- Maven repository required to build the project and run the tests. The Atoti Server 6.0.12-sb3 Maven repository files can be downloaded from here.
Summary
This release includes artifacts for connecting with instances of Atoti Server on version 6.0.x
using Java 11,
in addition to the already supported 6.0.x-sb3
version using Java 17. There have been no other changes.
The artifact changes are as follows:
Old Name | New Name | Comment |
---|---|---|
lookup-post-processor-ap60 |
lookup-post-processor-ap60-sb3 |
The old artifact has been renamed and requires Java 17. |
N/A | lookup-post-processor-ap60 |
This new artifact is compatible with Java 11. |
limits-auto-config-ap60 |
limits-auto-config-ap60-sb3 |
The old artifact has been renamed and requires Java 17. |
N/A | limits-auto-config-ap60 |
This new artifact is compatible with Java 11. |
limits-atoti-server-60 |
limits-atoti-server-60-sb3 |
The old artifact has been renamed and requires Java 17. |
N/A | limits-atoti-server-60 |
This new artifact is compatible with Java 11. |
Known issues
Issue Key | Details |
---|---|
BAS-1330 | Deleting the last limit value deletes the limit structure. As a workaround, don’t delete all limits on a limit structure unless you are sure that the structure won’t be used again. Alternatively, if you do need to reuse the structure, you can create a limit on it using the endpoint /modules/limits-module/limits/rest/v2/limitDefinition/limits/save . The key of the limit structure will still be visible in the admin-ui. |
LIM-846 | Complex Scopes: Currently, a limit with an aggregated scope and a limit with a non-aggregated scope cannot be created on the same limit structure. As a workaround, create the limits on two separate structures. |
LIM-840 | Complex Scopes: Currently, limits can’t be defined with an aggregated scope location and another scope location. As a workaround, create two separate limits on two separate structures. |
LIM-813 | Managers can incorrectly upload Limit Structures through the REST endpoint. |
LIM-594 | Having email notifications enabled for breaches causes decreased limit evaluation performance. See Configuring the breach email on how to disable breach emails. |
LIM-357 | The Six Eyes workflow is currently not implemented. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query for Limits on calculated measures. |
Dependency versions
Component | Version |
---|---|
Atoti Server | 6.0.12-sb3 |
Atoti UI | 5.1.x |
Common Dependencies BOM | 2.0.0 (com.activeviam.apps) |
Common Parent POM | 2.0.0 (com.activeviam.apps) |
Data Connectors | 4.1.0-AP6.0-sb3 |
Java | JDK17 |
UI Components | 5.0.34 |
Added
Issue Key | Details |
---|---|
LIM-1299 | Added connector artifacts on Java 11. |
3.2.0
2024-04-19
Download the distribution files here
You can download the following zipped distribution files:
- UI source code
- UI build
- Source files to build the module
- Sample bookmarks
- Maven repository required to build the project and run the tests. The Atoti Server 6.0.12-sb3 Maven repository files can be downloaded from here.
Summary
- Atoti Server upgrade : Atoti Limits has been upgraded to Atoti Server 6.0.12-sb3.
- Spring Boot upgrade : We have upgraded Spring Boot to version 3.2.0, which uses Spring Framework 6.
- Common Parent POM and Common Dependencies BOM upgrade: The Common Parent POM and the Common Dependencies BOM have both been upgraded to version 2.0.0.
- Activiti upgrade : We have upgraded Activiti to version 8.1.0 to be compatible with Spring Boot 3.
- Added Custom Exception Handling on the UI : The Atoti Limits UI now parses custom exception responses in a consistent manner. See Adding Custom UI Exceptions for more details.
- UI Activation : An import of
react-query
is required when usinglimits-sdk
. See UI activation for more details.
Known issues
Issue Key | Details |
---|---|
BAS-1330 | Deleting the last limit value deletes the limit structure. As a workaround, don’t delete all limits on a limit structure unless you are sure that the structure won’t be used again. Alternatively, if you do need to reuse the structure, you can create a limit on it using the endpoint /modules/limits-module/limits/rest/v2/limitDefinition/limits/save . The key of the limit structure will still be visible in the admin-ui. |
LIM-846 | Complex Scopes: Currently, a limit with an aggregated scope and a limit with a non-aggregated scope cannot be created on the same limit structure. As a workaround, create the limits on two separate structures. |
LIM-840 | Complex Scopes: Currently, limits can’t be defined with an aggregated scope location and another scope location. As a workaround, create two separate limits on two separate structures. |
LIM-813 | Managers can incorrectly upload Limit Structures through the REST endpoint. |
LIM-594 | Having email notifications enabled for breaches causes decreased limit evaluation performance. See Configuring the breach email on how to disable breach emails. |
LIM-357 | The Six Eyes workflow is currently not implemented. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query for Limits on calculated measures. |
Dependency versions
Component | Version |
---|---|
Atoti Server | 6.0.12-sb3 |
Atoti UI | 5.1.x |
Common Dependencies BOM | 2.0.0 (com.activeviam.apps) |
Common Parent POM | 2.0.0 (com.activeviam.apps) |
Data Connectors | 4.1.0-AP6.0-sb3 |
Java | JDK17 |
UI Components | 5.0.34 |
Added
Issue Key | Details |
---|---|
LIM-899 | Upgraded to Atoti Server 6.0.12-sb3, including Spring Boot 3.2.0. |
LIM-967 | Upgraded deprecated Atoti Server classes in preparation for upgrade to Atoti Server 6.1. |
LIM-976 | Replaced the Scope measure with a Scope level and added a Scope (Full) level. |
LIM-986 | Updated the version of Atoti Server that Atoti Limits runs on to 6.0.10. |
LIM-990 | If the input.data.root.dir.path or csvSource.dataset properties are not set correctly, Atoti Limits automatically generates the correct file structure. |
LIM-1021 | Added generic catch in LimitAutoConfig for greater error handling. |
LIM-1027 | Added custom UI exception handling for ProblemDetail responses. |
LIM-1056 | Added the action property to the ProblemDetails error response. See Adding Custom UI Exceptions. |
LIM-1060 | Updated the version of Admin UI that Atoti Limits uses to 5.1.7. |
LIM-1080 | Added a new ILimitsRetrievalService interface and LimitsQueryPayload object |
LIM-1086 | Added the lombok-maven-plugin to ensure the decompilation of the source code matches the Lombok annotated classes. |
LIM-1089 | Added performance enhancements when loading structures and limits from files and when evaluating limits. |
LIM-1090 | Added Spotify code formatter plugin to Atoti Limits. |
LIM-1129 | Upgraded Data Connectors to version 4.1.0-AP6.0-sb3. |
UIACL-783 | Replaced the Ant Design table component with the “bas-table” in the Limits screens. |
Changed
Issue Key | Details |
---|---|
LIM-706 | Moved the roles setting from the UI’s LimitsSettings to the server settings in application.yml. |
LIM-795 | Precedence was moved from the LimitStructuresDTO to the LimitDTO . |
LIM-959 | The LimitsRetrievalUtil class has been converted into a Spring service and is now named LimitsRetrievalService . |
LIM-962 | Moved the limitsWorkflowParticipants and exceptionWorkflowParticipants settings from the UI’s LimitsSettings to the server settings in application.yml. |
LIM-989 | Polling Frequency and KPI Type are now represented as enums in the LimitsStructureDTO . |
LIM-997 | Removed the unused EvaluationTimestamp store and added documentation for the AsOfDate store. |
LIM-1007 | Centralized all HttpRequests in limits-activeviam and limits-stater modules to the WebClientService Spring service and migrated them to the RestClient API. |
LIM-1075 | Upgraded Atoti Server to 6.0.12-sb3. |
LIM-1084 | Migrated HttpClient invocations in limits-atoti-server/limits-atoti-server-60 modules and all test classes to RestClient API. |
UIACL-931 | React-query is now handled as a peer dependency. See UI activation for more details. |
Removed
Issue Key | Details |
---|---|
LIM-794 | Removed support for the legacy limits file. |
LIM-984 | Removed the obsolete “Exception Category” and “Exception Comment” fields from the limit structure store and cube and the obsolete “comment” field from the incident store. |
LIM-1038 | Removed unused declarations of classes, fields, methods and variables. |
Fixed
Issue Key | Details |
---|---|
LIM-921 | Fixed an error on discovery when an Atoti Server 6.0.x cube description contained the word “data” by using versioned REST services in the DiscoveriesManager, which is now a Spring component. |
LIM-988 | Fixed the incorrect logger in AsOfDateTuplePublisher . |
LIM-1018 | Fixed an issue where transactions were unnecessarily being started on the Incidents store in LimitsDatastoreService . |
LIM-1066 | Fixed an issue where uses were unable to approve/reject a limit if another limit in the same structure was rejected. |
LIM-1085 | Fixed an issue where limits defined with a time period that did not include the as-of-date were sometimes evaluated incorrectly from the UI. |
LIM-1087 | Fixed a file loading issue that would cause the UI to break due to missing a scope. |
LIM-1092 | Attempting to modify key fields now results in a meaningful HTTP 400 response instead of a generic 500 one. |
LIM-1125 | Fixed an issue where the starter jar didn’t start from the command line, by reverting to the CLASSIC loader implementation for Spring’s Nested Jar Support. |
3.1.0
2023-11-08
Download the distribution files here
You can download the following zipped distribution files:
- UI source code
- UI build
- Source files to build the module
- Sample bookmarks
- Maven repository required to build the project and run the tests. The Atoti Server 6.0.9 Maven repository files can be downloaded from here.
Summary
- Improved table filtering : Filters have been moved to the column headers and have been extended to more columns, including the Location and Scope of a limit.
- Status screen : The Breaches screen has been renamed Status. It has also been enhanced to allow you to view the utilization of passed limits if they are stored.
- Linked dashboards : A dashboard can be linked to a limit structure to let you view the utilization for a given limit. Viewing the utilization of an incident will apply scope and as of date filters to the dashboard.
- Added Utilization : The Utilization measure has been added to the Limits cube. This measure can be extended by clients.
- Custom User Workflow Actions Improvements : We have simplified the addition of custom user actions in workflows. Please see Adding Customizing Workflow Tasks.
- Upgraded Java version: We have upgraded the Java version used to compile Atoti Limits
to 17.
As a result, we have removed the sample Atoti Server 5.10 from our distribution, as it does not support Java 17. Atoti Limits is still compatible with this version. - Updated Atoti Server and Spring Boot dependency versions: Updated the version of Atoti Server that Atoti Limits runs on to 6.0.9 and Spring Boot version to 2.7.16.
- Spring Security upgrade : We have upgraded Spring Security to version 5.8.7 to resolve vulnerabilities and prepare for the upgrade to Spring Security 6.0 (via Spring Boot 3).
- Common Parent POM: The Atoti Limits module now inherits third-party plugin versions from the Common Parent POM version 1.2.0, in line with other solutions. Details can be found in the migration notes.
Known issues
Issue Key | Details |
---|---|
BAS-1330 | Deleting the last limit value deletes the limit structure. As a workaround, don’t delete all limits on a limit structure unless you are sure that the structure won’t be used again. Alternatively, if you do need to reuse the structure, you can create a limit on it using the endpoint /modules/limits-module/limits/rest/v2/limitDefinition/limits/save . The key of the limit structure will still be visible in the admin-ui. |
LIM-846 | Complex Scopes: Currently, a limit with an aggregated scope and a limit with a non-aggregated scope cannot be created on the same limit structure. As a workaround, create the limits on two separate structures. |
LIM-840 | Complex Scopes: Currently, limits can’t be defined with an aggregated scope location and another scope location. As a workaround, create two separate limits on two separate structures. |
LIM-813 | Managers can incorrectly upload Limit Structures through the REST endpoint. |
LIM-594 | Having email notifications enabled for breaches causes decreased limit evaluation performance. See Configuring the breach email on how to disable breach emails. |
LIM-357 | The Six Eyes workflow is currently not implemented. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query for Limits on calculated measures. |
Dependency versions
Component | Version |
---|---|
Atoti Server | 6.0.9 |
Atoti UI | 5.1.x |
Data Connectors | 4.0.1-AP6.0 |
Java | JDK17 |
UI Components | 5.0.27 |
warning
Unlike other solutions or modules, Atoti Limits requires Atoti UI version 5.1.2 or higher.
Added
Issue Key | Details |
---|---|
BAS-1514 | Updated the README.md files in the parent and starter modules. |
BAS-1537 | When attempting to auto-configure Atoti Limits we now only log the connection exception at debug level to avoid polluting the logs. |
LIM-823 | Added utilization dashboard ID field to the limit structure. This allows you to link a limit structure with a dashboard based on its ID in the content server. |
LIM-848 | Updated the version of Atoti Server that Atoti Limits runs on to 6.0.7 and Spring Boot version to 2.7.14 to patch CVE-2023-20883 and CVE-2023-33008. |
LIM-863 | Added the option to store passes when evaluating limits. |
LIM-870 | Added a utilization measure to the Limits cube. |
LIM-872 | Created read-only REST endpoints to get row entries for the Limits Status screen. |
LIM-879 | Created REST endpoints to update non-key fields of a limit structure. |
LIM-901 | Upgraded Java version used to compile Atoti Limits from 11 to 17. |
LIM-905 | Added an endpoint to query the distinct as of dates for limit evaluations. |
LIM-907 | Upgraded to Spring Security 5.8.7 to resolve CVEs and prepare for the upgrade to Spring Security 6.0 (via Spring Boot 3). |
LIM-908 | Added an endpoint to return if the user is storing passes when evaluating limits. |
LIM-910 | Improved support for custom user actions in workflows. |
LIM-911 | Added a hook for custom workflow keys to execute user actions. |
LIM-916 | Upgraded Spring Boot to version 2.7.16 by inheriting from the Common Parent POM version 1.2.0. |
LIM-923 | Workflows for limit evaluations now exist for distinct as-of-dates. |
LIM-943 | Updated the version of Atoti Server that Atoti Limits runs on to 6.0.9. |
LIM-946 | Updated the version of the solutions-tools-bom to 2.0-AS6.0 to support Java 17 and Atoti Server 6.0.9. |
LIM-956 | Added a new endpoint /inventory-structures/filter to reduce the amount of data sent to the limits inventory screen. |
UIACL-577 | Added the action to inspect the utilization from the Inventory and Status screens. |
UIACL-592 | Added ANTD built-in table filtering for the Limits screens. |
UIACL-623 | Renamed the Breaches screen to Status screen and added ability to fetch all passed limits. |
UIACL-671 | Enabled the workflow action button for authorized users only. |
UIACL-680 | Enabled sticky headers in the limits tables. |
UIACL-737 | Results are now cached for a minute inside the Status screen to prevent constant loading when browsing. |
Changed
Issue Key | Details |
---|---|
LIM-827 | Changed the limit type from String to an enumeration LimitType that allows only “OFFICIAL” and “TEMPORARY” values. |
LIM-912 | Renamed the LimitWorkflowActionDTO to WorkflowTaskActionDTO and updated it to improve custom workflow actions on the UI. |
LIM-934 | Updated the version of Atoti Server that Atoti Limits runs on to 6.0.9. |
UIACL-654 | Replaced limit column action buttons with icons and a tooltip. |
UIACL-659 | Re-arranged the Status screen columns. |
UIACL-690 | Renamed the Workflow section to Review Process and updated the labels within the limit structure viewer. |
UIACL-707 | Rows are no longer de-selected when changing client-side filters. |
UIACL-714 | When creating a limit structure, the breach when field is disabled when the kpi type is not selected. |
Removed
Issue Key | Details |
---|---|
UIACL-580 | Removed the “utilizationDashboards” limit setting. Utilization dashboards can be added to the limit structure directly in the UI instead. |
UIACL-640 | Removed server and cube columns from the Inventory screen. |
UIACL-685 | Removed the “exceptionAuditTrailNodeColors” limit setting. The “auditTrailNodeColors” should be used instead. |
Fixed
Issue Key | Details |
---|---|
BAS-1437 | Incident files on deleted limits no longer break the status screen on startup. |
BAS-1449 | Equivalent scope strings now generate the same Limit keys. |
BAS-1463 | UI evaluation now correctly evaluates servers where the server keys don’t equal the server name. |
LIM-740 | Evaluating a limit structure containing only expired limits or structures with no data results in an error. |
LIM-815 | Limit structures loaded without limits will now load successfully, limits loaded without limit structures and incidents loaded without limits will be skipped. |
LIM-854 | The Status screen now shows the value of the active temporary limit, instead of the official limit. |
LIM-856 | The value of the discovery-manager.polling-delay property is now used. |
LIM-857 | Connecting to Atoti Server version 5.x. generated useless logs. |
LIM-869 | An error occurred if the incident directory didn’t exist. |
LIM-894 | Limits of the same structure with mismatching scope levels will now be skipped on loading so they don’t break the limits management screen. |
LIM-913 | New limits can now be correctly created after deleting a complex scoped limit. |
LIM-914 | Incidents that fail workflow validation appear in the status screen. |
LIM-922 | Workflow action buttons are no longer visible for deleted limits. |
LIM-925 | The breach audit history endpoint no longer contains details about limit changes. |
LIM-926 | Fixed a bug which prevented editing limits when the order of scopes posted in the UI request was different to the order retrieved from the datastore. |
LIM-927 | Improved the exception handling on Limit evaluation. |
LIM-936 | Workflow action buttons are no longer returned if they are disabled. |
LIM-954 | Limits evaluated by managers are no longer visible in the status screen. |
LIM-955 | Explicit scope matches on limits are now not over-ruled by temporary limits. |
LIM-957 | Fixed the date-roll endpoint which was not correctly updating the as-of-date. |
UIACL-593 | The limits table was not displayed correctly when a limit structure didn’t contain any limits. |
UIACL-669 | The Select all checkbox now selects all rows across multiple pages. |
For Removal
Issue Key | Details |
---|---|
LIM-794 | Support for the Legacy Limits file will be removed in Atoti Limits version 4.0.0 |
3.0.0
2023-08-04
Download the distribution files here
You can download the following zipped distribution files:
- UI source code
- UI build
- Source files to build the module
- Sample bookmarks
- Maven repository required to build the project and run the tests. The Atoti Server 6.0.5 Maven repository files can be downloaded from here
Summary
- Enhanced audit trail: Enhanced the limit audit trail to include the before and after values when an edit has been performed.
- On-demand limit evaluations: Users can re-evaluate limits on-demand, at both the limit structure level and the limit level. See the On-demand limit evaluation section.
- UI Evaluation: Evaluating limit structures and re-evaluating limits can now be done in the UI.
- Restricted Scopes: The new
restrictedScopes
UI setting has been added, which lets you exclude certain scopes from appearing in the scope selector when adding a new limit. - Complex Scopes: Complex scopes have been added, providing more flexibility when scoping
limits. Note that some of the features are still BETA features.
See the Complex Scopes and the Known Issues for more details. - Updated Atoti Server and Spring Boot dependency versions: Updated the version of Atoti Server that Atoti Limits runs on to 6.0.5 and Spring Boot version to 2.7.11.
Known issues
Issue Key | Details |
---|---|
BAS-1330 | Deleting the last limit value deletes the limit structure. As a workaround, don’t delete all limits on a limit structure unless you are sure that the structure won’t be used again. Alternatively, if you do need to reuse the structure, you can create a limit on it using the endpoint /modules/limits-module/limits/rest/v2/limitDefinition/limits/save . The key of the limit structure will still be visible in the admin-ui. |
LIM-846 | Complex Scopes: Currently, a limit with an aggregated scope and a limit with a non-aggregated scope cannot be created on the same limit structure. As a workaround, create the limits on two separate structures. |
LIM-840 | Complex Scopes: Currently, limits can’t be defined with an aggregated scope location and another scope location. As a workaround, create two separate limits on two separate structures. |
LIM-815 | Limit structures loaded without any corresponding limits causes the load to fail. As a workaround, add a limit for the limit structure. |
LIM-813 | Managers can incorrectly upload Limit Structures through the REST endpoint. |
LIM-740 | Evaluating a limit structure that has only expired definitions or definitions with no data results in an error. |
LIM-594 | Having email notifications enabled for breaches causes decreased limit evaluation performance. See Configuring the breach email on how to disable breach emails. |
LIM-357 | The Six Eyes workflow is currently not implemented. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query for Limits on calculated measures. |
Dependency versions
Component | Version |
---|---|
Atoti Server | 6.0.5 |
Atoti UI | 5.1.x |
Data Connectors | 4.0.1-AP6.0 |
Java | JDK11 |
UI Components | 5.0.23 |
warning
Unlike other solutions or modules, Atoti Limits requires Atoti UI version 5.1.2 or higher.
Added
Issue Key | Details |
---|---|
BAS-1204 | Added support for “IN” filters in Scope. |
BAS-1369 | Added new UI setting restrictedScopes that allows scopes to be restricted when adding a new limit. |
LIM-557 | Updated Atoti Limits to use Atoti Server 6.0.5 |
LIM-613 | Old and new values are now included in the Audit log. |
LIM-784 | Added endpoints for on-demand limit evaluation. |
LIM-788 | Added support for not equal to scope statements. |
LIM-819 | The UI now reflects whether the Add button in the Inventory screen is enabled or disabled depending on user and limit structure privileges. |
UIACL-518 | Limit evaluations can now be triggered from the UI. |
Changed
Issue Key | Details |
---|---|
LIM-762 | An incident’s exception workflow is now triggered when loading incidents from a CSV file. |
Fixed
Issue Key | Details |
---|---|
BAS-1354 | Fixed bug where fields with characters that should have been escaped were not escaped on download. |
LIM-777 | Fixed bug where managers could incorrectly initiate edits. |
LIM-786 | Fixed bug where limit structures with multiple scopes were not created correctly on file upload through REST. |
LIM-810 | Fixed bug where file upload via REST failed when a Limit’s non-required key fields were not defined. |
LIM-816 | Fixed bug where a comma in a field resulted in improperly formatted CSV download. |
LIM-845 | Fixed bug where the limit structure’s comment was being passed through the workflow instead of the approval/rejection comment. |
2.0.1-ui-update-2
2023-08-01
Download the distribution files here
You can download the following zipped distribution files:
- UI source code
- UI build
note
No server-side changes were made. See the Atoti Limits 2.0.1 release notes below for the latest server-side distribution files.
Summary
This is a UI-only release that allows you to exclude values from the Limit Scope dropdown when creating limits.
warning
This version of Atoti Limits can only be used with Business Cubes that are on Atoti UI 5.1.x.
Added
Issue Key | Details |
---|---|
BAS-1369 | Exclude values from Scope dropdown. |
Known issues
Issue Key | Details |
---|---|
LIM-813 | Managers can incorrectly upload Limit Structures through the REST endpoint. |
LIM-786 | Limit structures with multiple scopes are not created correctly on file upload through REST". As a workaround, use the UI or the initial file upload to create limit structures with multiple scopes. |
BAS-1330 | Deleting the last limit value deletes the limit structure. As a workaround, don’t delete all limits on a limit structure unless you are sure that the structure won’t be used again. Alternatively, if you do need to reuse the structure, you can create a limit on it using the endpoint /modules/limits-module/limits/rest/v2/limitDefinition/limits/save . The key of the limit structure will still be visible in the admin-ui. |
LIM-777 | Managers can incorrectly edit limits. |
LIM-762 | The DLC does not initiate the workflow when incidents are loaded from a file on startup. As a workaround, old alert files can be deleted or moved to a folder that does not match the pattern alerts.definitions.file.path.matcher , which defaults to alert . |
LIM-740 | Evaluating a limit structure that has only expired definitions or definitions with no data results in an error. |
LIM-594 | Having email notifications enabled for breaches causes decreased limit evaluation performance. See Configuring the breach email on how to disable breach emails. |
LIM-357 | The Six Eyes workflow is currently not implemented. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query for Limits on calculated measures. |
Dependency versions
Component | Version |
---|---|
Atoti Server | 5.10.9 |
Atoti UI | 5.1.x |
Data Connectors | 2.2.2 |
Java | JDK11 |
UI Components | 5.0.22 |
2.0.1-ui-update-1
2023-06-16
Download the distribution files here
You can download the following zipped distribution files:
- UI source code
- UI build
note
No server-side changes were made. See the Atoti Limits 2.0.1 release notes below for the latest server-side distribution files.
Summary
This is a UI-only release that makes Atoti Limits compatible with Atoti UI version 5.1.0 or higher.
warning
This version of Atoti Limits can only be used with Business Cubes that are on Atoti UI 5.1.x.
Known issues
Issue Key | Details |
---|---|
LIM-813 | Managers can incorrectly upload Limit Structures through the REST endpoint. |
LIM-786 | Limit structures with multiple scopes are not created correctly on file upload through REST". As a workaround, use the UI or the initial file upload to create limit structures with multiple scopes. |
BAS-1330 | Deleting the last limit value deletes the limit structure. As a workaround, don’t delete all limits on a limit structure unless you are sure that the structure won’t be used again. Alternatively, if you do need to reuse the structure, you can create a limit on it using the endpoint /modules/limits-module/limits/rest/v2/limitDefinition/limits/save . The key of the limit structure will still be visible in the admin-ui. |
LIM-777 | Managers can incorrectly edit limits. |
LIM-762 | The DLC does not initiate the workflow when incidents are loaded from a file on startup. As a workaround, old alert files can be deleted or moved to a folder that does not match the pattern alerts.definitions.file.path.matcher , which defaults to alert . |
LIM-740 | Evaluating a limit structure that has only expired definitions or definitions with no data results in an error. |
LIM-594 | Having email notifications enabled for breaches causes decreased limit evaluation performance. See Configuring the breach email on how to disable breach emails. |
LIM-357 | The Six Eyes workflow is currently not implemented. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query for Limits on calculated measures. |
Dependency versions
Component | Version |
---|---|
Atoti Server | 5.10.9 |
Atoti UI | 5.1.x |
Data Connectors | 2.2.2 |
Java | JDK11 |
UI Components | 5.0.22 |
2.0.1
2023-06-07
Download the distribution files here
You can download the following zipped distribution files:
- Source files to build the module
- Maven repository required to build the project and run the tests. The Atoti Server 5.10.9 Maven repository files can be downloaded from here
note
No UI changes were made. See the Atoti Limits 2.0.1-ui-update-1 release notes below for the latest UI distribution files.
Summary
- Bug Fix: Limit keys generated for loaded data were not consistent with the ones created in the UI.
- Artifact Rename: The Atoti Limits parent pom artifact is now called
limits-parent
, whichlimits-activeviam
andlimits-starter
extend.
Known issues
Issue Key | Details |
---|---|
LIM-813 | Managers can incorrectly upload Limit Structures through the REST endpoint. |
LIM-786 | Limit structures with multiple scopes are not created correctly on file upload through REST". As a workaround, use the UI or the initial file upload to create limit structures with multiple scopes. |
BAS-1330 | Deleting the last limit value deletes the limit structure. As a workaround, don’t delete all limits on a limit structure unless you are sure that the structure won’t be used again. Alternatively, if you do need to reuse the structure, you can create a limit on it using the endpoint /modules/limits-module/limits/rest/v2/limitDefinition/limits/save . The key of the limit structure will still be visible in the admin-ui. |
LIM-777 | Managers can incorrectly edit limits. |
LIM-762 | The DLC does not initiate the workflow when incidents are loaded from a file on startup. As a workaround, old alert files can be deleted or moved to a folder that does not match the pattern alerts.definitions.file.path.matcher , which defaults to alert . |
LIM-740 | Evaluating a limit structure that has only expired definitions or definitions with no data results in an error. |
LIM-594 | Having email notifications enabled for breaches causes decreased limit evaluation performance. See Configuring the breach email on how to disable breach emails. |
LIM-357 | The Six Eyes workflow is currently not implemented. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query for Limits on calculated measures. |
Dependency versions
Component | Version |
---|---|
Accelerator-sdk | 5.0.21 |
Atoti Server | 5.10.9 |
Atoti UI | 5.0.23 |
Data Connectors | 2.2.2 |
Java | JDK11 |
Added
Changed
Fixed
Issue Key | Details |
---|---|
BAS-1344 | Inconsistent Limit Keys generated for loaded data and those created in the UI. |
2.0.0-ui-update-1
2023-05-31
Download the distribution files here
You can download the following zipped distribution files:
- UI source code
- UI build
note
No server-side changes were made. See the Atoti Limits 2.0.0 release notes below for the latest server-side distribution files.
Summary
- UI Performance Improvements: Creating limits for scopes for very large cardinalities (>10000) now works as expected.
Known issues
Issue Key | Details |
---|---|
LIM-813 | Managers can incorrectly upload Limit Structures through the REST endpoint. |
LIM-786 | Limit structures with multiple scopes are not created correctly on file upload through REST". As a workaround, use the UI or the initial file upload to create limit structures with multiple scopes. |
BAS-1330 | Deleting the last limit value deletes the limit structure. As a workaround, don’t delete all limits on a limit structure unless you are sure that the structure won’t be used again. Alternatively, if you do need to reuse the structure, you can create a limit on it using the endpoint /modules/limits-module/limits/rest/v2/limitDefinition/limits/save . The key of the limit structure will still be visible in the admin-ui. |
LIM-777 | Managers can incorrectly edit limits. |
LIM-762 | The DLC does not initiate the workflow when incidents are loaded from a file on startup. As a workaround, old alert files can be deleted or moved to a folder that does not match the pattern alerts.definitions.file.path.matcher , which defaults to alert . |
LIM-740 | Evaluating a limit structure that has only expired definitions or definitions with no data results in an error. |
LIM-594 | Having email notifications enabled for breaches causes decreased limit evaluation performance. See Configuring the breach email on how to disable breach emails. |
LIM-357 | The Six Eyes workflow is currently not implemented. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query for Limits on calculated measures. |
Dependency versions
Component | Version |
---|---|
Accelerator-sdk | 5.0.21 |
Atoti Server | 5.10.9 |
Atoti UI | 5.0.23 |
Data Connectors | 2.2.2 |
Java | JDK11 |
Fixed
Issue Key | Details |
---|---|
BAS-1336 | Limits the member dropdown to 1000 members for a given scope when creating a limit and performs a fetch on searching. |
2.0.0
2023-05-16
Download the distribution files here
You can download the following zipped distribution files:
- UI source code
- UI build
- Source files to build the module
- Sample bookmarks
- Maven repository required to build the project and run the tests. The Atoti Server 5.10.9 Maven repository files can be downloaded from here
Summary
- Temporary Limits: The ability to evaluate a temporary limit is now available.
- Redesigned UI: Limits Inventory and Breaches screen, Limits menu in top navigation bar.
- Updated REST endpoints : REST endpoints have been updated from v1 to v2, and all Limits REST
endpoints will be prefixed by
/limits/rest/v2/
Known issues
Issue Key | Details |
---|---|
LIM-786 | Limit structures with multiple scopes are not created correctly on file upload through REST". As a workaround, use the UI or the initial file upload to create limit structures with multiple scopes. |
BAS-1330 | Deleting the last limit value deletes the limit structure. As a workaround, don’t delete all limits on a limit structure unless you are sure that the structure won’t be used again. Alternatively, if you do need to reuse the structure, you can create a limit on it using the endpoint /modules/limits-module/limits/rest/v2/limitDefinition/limits/save . The key of the limit structure will still be visible in the admin-ui. |
LIM-777 | Managers can incorrectly edit limits. |
LIM-762 | The DLC does not initiate the workflow when incidents are loaded from a file on startup. As a workaround, old alert files can be deleted or moved to a folder that does not match the pattern alerts.definitions.file.path.matcher , which defaults to alert . |
LIM-749 | You can incorrectly set temporary limits on unapproved/initialized limits. |
LIM-740 | Evaluating a limit structure that has only expired definitions or definitions with no data results in an error. |
LIM-594 | Having email notifications enabled for breaches causes decreased limit evaluation performance. See Configuring the breach email on how to disable breach emails. |
LIM-438 | Currently, File Upload only works fully for users with the ‘ROLE_USERS’ role. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query for Limits on calculated measures. |
LIM-312 | The Six Eyes workflow is currently not implemented. |
Dependency versions
Component | Version |
---|---|
Accelerator-sdk | 5.0.21 |
Atoti Server | 5.10.9 |
Atoti UI | 5.0.23 |
Data Connectors | 2.2.2 |
Java | JDK11 |
Added
Issue Key | Details |
---|---|
LIM-624 | Added a performance enhancement to reduce the number of REST calls sent when retrieving calculated measures. |
LIM-649 | Added a property limit.evaluation.query.timeout to let the user specify an MDX query timeout in seconds for Limit evaluation queries |
LIM-660 | Bundled the Atoti Admin UI webjars with the limits-starter module. The Admin UI is available at {base.url}/admin/ui/index.html |
LIM-661 | Updated all Limits endpoints to be visible on Swagger. API docs are available at {base.url}/swagger-ui/index.html |
LIM-717 | Added a REST endpoint to evaluate all Limits in the datastore. See On-Demand Limits Evaluation |
LIM-712 | Added support for multiple Atoti solutions to connect to Limits. Added REST endpoint to change the Limits cube AsOfDate. |
Changed
Issue Key | Details |
---|---|
LIM-627 | Atoti Limits queries the IDataExportService instead of the IExportService for connecting with Atoti Server 6.0.2 and higher. |
LIM-634 | Updated the /export and /upload endpoints and corresponding ETL to load data updated data model. |
Fixed
Issue Key | Details | |
---|---|---|
LIM-610 | Improved error handling to the UI by returning a specific and targeted | |
message. | ||
LIM-619 | Fixed bug where a KPI couldn’t be created on a cube with a space in its | |
name, such as ‘Sensitivity Cube’. | ||
LIM-625 | Fixed a bug where a KPIs were not being correctly refreshed on load. | |
LIM-640 | MDX generated by evaluation endpoint resulted in an exception when the | |
level member didn’t exist | ||
LIM-643 | MDX default members for non-slicing hierarchies are not excluded when | |
explicit scope matching is enabled. | ||
LIM-644 | When evaluating a Limit and the status is null, now a warning is logged | |
instead of throwing an exception. | ||
LIM-743 | Breaching limits with a wildcard didn’t display the location breached. | |
LIM-755 | Fixed the active measure used to create Limit KPIs for Calculated | |
Measures as required by AP6.0 post processors. |
1.1.0
2023-01-12
Download the distribution files here
You can download the following zipped distribution files:
- UI source code
- UI build
- Source files to build the module
- Sample bookmarks
- Maven repository required to build the project and run the tests. The ActiveViam 5.10.9 Maven repository files can be downloaded from here
Summary
- Email notifications: The Limits Module can be configured to send an email when a breach occurs. See Configuring breach email notifications for details.
- Auto-Configuration: The Active Pivot server can now auto-configure itself for Limits to connect. See Auto-configuration.
- View Utilizations context menu action: A new context menu action has been added that lets you view the utilization of limits from a pivot table. This is helpful when investigating exceptions. The feature works on all pivot tables in the Limits project, including the Limits Inventory widget. See View Utilizations for details.
- Copy action: Limits can now be duplicated in the Limits Inventory. For more information, see Copy a limit.
- Swagger UI is available at {base.url}/swagger-ui/index.html. This will
display some REST endpoints exposed by the Limits server. It can be enabled/disabled by setting
property
swagger.enable
totrue
/false
.
Known issues
Issue Key | Details |
---|---|
LIM-594 | Having email notifications enabled for breaches causes decreased limit evaluation performance. See Configuring the breach email on how to disable breach emails. |
LIM-501 | The Limits Inventory widget loads more columns than are needed. This is a usability issue and doesn’t impair any functionality. |
LIM-462 | If a single limit definition applies to multiple locations, the Exception tab will only show the last breach. For example, if a wildcard limit has breaches on two locations, only the measure value of the last breach is displayed in the tab. |
LIM-438 | Currently, File Upload only works fully for users with the ‘ROLE_USERS’ role. |
LIM-401 | File Upload results in a JSON parsing error when the same file is selected more than one time. As a workaround, add another Limit Inventory widget onto your dashboard and upload the same file. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query for Limits on calculated measures. |
LIM-312 | The Six Eyes workflow is currently not implemented. |
note
Limits 1.1.0 is not compatible with ActivePivot 6.0.1.
Dependency versions
Component | Version |
---|---|
ActivePivot | 5.10.9 |
ActiveUI | 5.0.18 |
Data Connectors | 2.2.2-AP5.10 |
Java | JDK11 |
Accelerator-sdk | 5.0.15 |
Added
Issue Key | Details | |
---|---|---|
LIM-460 | Limits can now be copied using the * | |
Copy* action. | ||
LIM-475 | You can now set a unique cookie name | |
when connecting multiple accelerators. If not set, the default cookie name is used ( | ||
LIM_JSESSIONID). | ||
LIM-502 | Added new context menu action to | |
allow users to view the utilization of limits from a pivot table. This feature works on all pivot | ||
tables in the Limits project, including the Limits Inventory widget. | ||
LIM-506 | ||
Added breached email notifications | ||
in the exception workflow. The Limits Module now sends an email when a breach occurs. | ||
LIM-544 | Added a LimitsAutoConfigBean that can | |
be imported by an ActivePivot server to autoconfigure properties for connecting to Limits. | ||
LIM-573 | Added a level to display the limit | |
evaluation date. | ||
LIM-574 | Added FRTB Trends Analysis | |
bookmark. | ||
LIM-512 | Added workflow validation check, | |
preventing Limits with a PENDING_DELETION draft status from accidentally being deleted. |
Changed
Issue Key | Details | |
---|---|---|
LIM-492 | UI change: the LimitsSettings object | |
has been given a Typescript type, and now sits inside the limits-sdk. Both the defaultLimitsSettings | ||
object and LimitsSettings type can be exported from the limits-sdk. | ||
LIM-530 | Rewrote the getLimit endpoint for | |
performance improvements. | ||
LIM-543 | Changed the property names from acc* | |
to ap*. | ||
LIM-553 | Renamed “ROLE_LIMIT” permissions role | |
to “ROLE_LIMITS”. | ||
LIM-568 | Changed the default values of | |
the Scope Properties. It is no longer required to specify any | ||
of the scope properties. | ||
LIM-606 | Changed the intraday limit evaluation | |
scheduler from 1 min to 5 min. |
Removed
Issue Key | Details | |||
---|---|---|---|---|
LIM-261 | Removed Currency/CCY from input files | |||
and datastore. See Specifying the currency for more | ||||
details. | LIM-508 | Removed the content server | ||
refresh from the LookUpPostProcessor. Limits 1.0.1 introduced | ||||
a Calculated Measure widget, | ||||
publishing the Calculated Measure to the Cube, so there is no need for the LookUpPostProcessor to | ||||
get the Calculated Measure definition from the content sever anymore. | ||||
LIM-566 | Removed the hardcoded “admin:admin” | |||
credentials for limit alert and KPI tasks. Now the SecurityContextHolder is used to get and set the | ||||
authentication. |
Fixed
Issue Key | Details |
---|---|
LIM-482 | The Exception workflow value can now be selected using a dropdown in the UI. Hardcoded values have been removed. |
LIM-493 | Fixed bug where an empty comment could be submitted when addressing a Warning. |
LIM-507 | Fixed bug where evaluation tasks created to check the KPIs of limits with intraday polling frequency for exceptions did not clear previous evaluation tasks. |
LIM-531 | Fixed the incorrect authority comparator in limits-starter. Removed unnecessary ROLE_CS_USER from user1 and user2. |
LIM-554 | Fixed issue where incorrect KPI types were used for limits with the same name. |
LIM-559 | Fixed inconsistencies across the export and import CSV files. |
LIM-563 | Fixed issue where limits were not displayed below the level they are defined on when scope.isUsingExplicitScopeMatching was enabled. |
LIM-568 | Fixed issue where evaluating limits through the evaluate endpoint caused a thread deadlock. |
LIM-569 | Fixed incorrect evaluation of limits on calculated measures published by ActiveUI 4. |
LIM-577 | Renamed “key” to “limitKey” in the MDX statement populating the Limits Inventory widget |
LIM-598 | Fixed issue where validating the Warning Threshold from an Uploading limit throws a ClassCastException |
UIACL-112 | Fixed issue where the Exception tab displayed a spinning wheel without returning anything when in the Reviewed state. |
UIACL-113 | Fixed issue where Warning comments were not displayed in the Exception Audit tab. |
LIM-586 | Added a value check when loading, uploading and creating limits, preventing limits with the same name, cube, measure, scope and overlapping dates, to be committed to datastore. |
1.0.1+1
2022-12-02
This is a UI-only release updating the following dependencies:
Component | Version |
---|---|
ActiveUI | 5.0.18 |
Accelerator-sdk | 5.0.13 |
limits-sdk | 1.0.1-acc-sdk-5.0.13 |
note
No server-side changes were made. See the Limits 1.0.1 release notes below for the latest server-side distribution files.
To download the Limits 1.0.1+1 UI-only distribution file, click here.
Known issues
Issue Key | Details |
---|---|
LIM-507 | When the Limits Module creates an evaluation task to check the KPIs of limits with intraday polling frequency for exceptions, previous evaluation tasks are not cleared, resulting in a memory leak. |
LIM-501 | The Limits Inventory widget loads more columns than are needed. This is a usability issue and doesn’t impair any functionality. |
LIM-462 | If a single limit definition applies to multiple locations, the Exception tab will only show the last breach. For example, if a wildcard limit has breaches on two locations, only the measure value of the last breach is displayed in the tab. |
LIM-441 | Limits that have a workflow in progress cannot be properly overridden by a File Upload. |
LIM-438 | Currently, File Upload only works fully for users with the ‘ROLE_USERS’ role. |
LIM-401 | File Upload results in a JSON parsing error when the same file is selected more than one time. As a workaround, add another Limit Inventory widget onto your dashboard and upload the same file. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query for Limits on calculated measures. |
LIM-312 | The Six Eyes workflow is currently not implemented. |
1.0.1
2022-08-31
Download the distribution files here
You can download the following zipped distribution files:
- UI source code
- UI build
- Source files to build the module
- Sample bookmarks
- Maven repository required to build the project and run the tests. The ActiveViam 5.10.9 Maven repository files can be downloaded from here
Summary
- Separate Limit Change and Exception workflows: Multiple fixes to the evaluation functionality of Limits.
- Publishing Calculated Measures: Calculated Measures can now be published to the Cube. For more information, see Publishing a Calculated Measure.
- Breach and alert reports: Breach and alert reports are now split into separate files per KPI. The file name format is: “/alert*{kpiName}*{lastUpdateTimeStamp}.csv”
- Sample limits and bookmarks: We have created new sample limits that correlate with our sample data for FRTB, as well as added bookmarks tailored for these limits, which can be added to your deployment.
- Upgrade to ActiveUI 5.0.15.
Known issues
Issue Key | Details |
---|---|
LIM-507 | When the Limits Module creates an evaluation task to check the KPIs of limits with intraday polling frequency for exceptions, previous evaluation tasks are not cleared, resulting in a memory leak. |
LIM-501 | The Limits Inventory widget loads more columns than are needed. This is a usability issue and doesn’t impair any functionality. |
LIM-462 | If a single limit definition applies to multiple locations, the Exception tab will only show the last breach. For example, if a wildcard limit has breaches on two locations, only the measure value of the last breach is displayed in the tab. |
LIM-441 | Limits that have a workflow in progress cannot be properly overridden by a File Upload. |
LIM-438 | Currently, File Upload only works fully for users with the ‘ROLE_USERS’ role. |
LIM-401 | File Upload results in a JSON parsing error when the same file is selected more than one time. As a workaround, add another Limit Inventory widget onto your dashboard and upload the same file. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query for Limits on calculated measures. |
LIM-312 | The Six Eyes workflow is currently not implemented. |
LIM-489 | Setting the ActivePivotContentService of ContextValueManager to null causes the KPIs to not display in the UI. |
Dependency versions
Component | Version |
---|---|
ActivePivot | 5.10.9 |
ActiveUI | 5.0.15 |
Data Connectors | 2.2.2-AP5.10 |
Java | JDK11 |
accelerator-sdk | 5.0.11 |
Added
Issue Key | Details |
---|---|
LIM-133 | Added a REST endpoint to enable the decision buttons displayed to be dynamic based on the workflow state and next available actions. |
Changed
Issue Key | Details |
---|---|
LIM-447 | Deleted stale KPIs during the refresh the business cube information. |
LIM-498 | Breach and warning reports are now separated into different files per KPI. |
Fixed
Issue Key | Details |
---|---|
LIM-198 | The value of the Breach field in the Limits Drawer was not formatted correctly. |
LIM-311 | Users were incorrectly able to approve their own requests. |
LIM-408 | Intraday limits did not create breaches when the scope contained a wildcard. |
LIM-410 | Evaluating limits with more than one level member did not generate alerts. |
LIM-415 | Canceling the editing of a rule caused the Limit Drawer’s Rules section to disappear. |
LIM-422 | The Warning threshold in the Limits Cube incorrectly had decimal places. |
LIM-432 | The Comment button was not displayed when a limit was in the WARNING state. |
LIM-436 | The Review button did not disappear after reviewing a breach. |
LIM-442 | Evaluating limits on multi-level hierarchies did not generates alerts. |
LIM-480 | The Limits Inventory widget stopped working when the limits store was empty. |
LIM-481 | Calculated Measures were not published to the Cubes. |
1.0.0
2022-07-03
Download the distribution files here
You can download the following zipped distribution files:
- UI source code
- UI build
- Source files to build the module
- Maven repository required to build the project and run the tests. The ActiveViam 5.10.9 Maven repository files can be downloaded from here
Summary
- Separate Limit Change and Exception workflows: Redesigned the workflow to separate the limit change/update/delete workflow and the limit exception/breach/warning workflow. The Limit Change workflow now has Straight-through and four-eyes options. The Limit Exception workflow handles the breach and warning events. The workflow associated with exceptions is defined in the application.yml property file.
- Exception UI: The Exception and Exception Audit tabs have been added to the Limits Drawer to help you investigate warnings and breaches. See Manage exceptions for details.
- Performance improvements: Many performance improvements have been implemented to improve the startup time and KPI query time. More can be read in the Performance page.
- Added integration tests: Added scopeTests, flowTests, KPIValueTests and ETLTests.
- Creator can now approve the limit: The user who created the limit can now approve it if canTheApproverBeTheSameAsTheCreator in limits.properties is set to true. The default value for this property is false.
- Scope Handling: Two new properties have been added to customize how Scopes are handled. scope.force-unambiguous-level-paths and scope.autofill-unambiguous-level-paths .
note
To make sure your limit workflow works as expected, please discard any previous testing data in the datastore and Activiti databases. On top of the workflow name changes, the reference implementation now has the Role_Users by default to be able to create the limit definition instead of Role_Managers.
Known issues
Issue Key | Details |
---|---|
LIM-442 | Limits on multi-level hierarchies are not evaluated in a way that generates alerts. |
LIM-441 | Limits that have a workflow in progress cannot be properly overridden by a file upload. |
LIM-438 | Currently, file upload only works fully for users with the ‘ROLE_USERS’ role. |
LIM-436 | Review button does not disappear after reviewing a breach. |
LIM-432 | Comment button does not display when a limit is in the WARNING state. |
LIM-415 | The Limit Drawer’s Rules section disappears when you cancel the editing of a rule. |
LIM-410 | Limits with more than one level member selected are not evaluated in a way that generates alerts. |
LIM-408 | Intraday limits are not creating breaches if the scope contains a wildcard. |
LIM-401 | File upload results in a JSON parsing error when the same file is selected more than one time. As a workaround, add another Limit Inventory widget onto your dashboard and upload the same file. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query for Limits on calculated measures. |
LIM-312 | The Six Eyes workflow is currently not implemented. |
Dependency versions
Component | Version |
---|---|
ActivePivot | 5.10.9 |
ActiveUI | 5.0.12 |
Data Connectors | 2.2.2-AP5.10 |
Java | JDK11 |
accelerator-sdk | 5.0.8 |
Added
Issue Key | Details |
---|---|
LIM-357 | Exception workflow has been added to handle breach and warning events. |
LIM-375 | The Exception and Exception Audit tabs were added to the Limits Drawer. |
LIM-388 | When a limit’s draft status is PENDING_DELETION , Approve and Reject buttons are displayed in the Limits Drawer. For details on configuring these buttons, see Configuring workflow action buttons. |
LIM-393 | When a Limit’s Status is INITIALIZED , Approve and Reject buttons are displayed in the Limits Drawer. |
LIM-423 | Action has been added to the Limits audit trail response. |
LIM-379 | Properties scope.force-unambiguous-level-paths and scope.autofill-unambiguous-level-paths have been added to customize handling of Ambiguous Scopes. |
LIM-437 | Added EDIT as a possible Draft Limit Status value for displaying the Approve and Reject buttons. |
Changed
Issue Key | Details |
---|---|
LIM-400 | The Breaches and Warnings Workflow dropdowns in the Limits Drawer are no longer required fields. |
Removed
Issue Key | Details |
---|---|
LIM-362 | Warning has been removed from the breach report, alert.csv file. |
Fixed
Issue Key | Details |
---|---|
LIM-290 | Sorting per table column now works on the Limits Inventory Widget table. |
LIM-321 | Breach Count and Measure Value measures are now populated in the Limits cube. |
LIM-326 | Reworked how Scopes are processed. Scopes can now be defined on any level and ambiguous Level handling has been improved. |
LIM-338 | Creating a limit in the Limits Inventory no longer breaks the UI if a required field is not set. |
LIM-340 | The UI now correctly sends scope objects to the backend, regardless of whether they are parent-child related scopes, or regular scopes. |
LIM-343 | Content editor now refreshes automatically after deleting a limit. |
LIM-349 | Updated the error handling to display more helpful messages when trying to upload a file using the Limits Inventory Upload button. |
LIM-362 | Separated the warning from the breach report, also known as alert.csv file. Now the warning is in its own csv file. alert_warning_timestamp.csv. |
LIM-370 | The Limit Definition Datastore now contains new fields for a Limit’s Draft State and Draft Status. These Draft fields are used to move a Limit along a workflow without modifying the Limit’s current status. For example, if a Limit is approved and then edited, the Limit will still be valid until the changes are approved. |
LIM-384 | The scope’s table now only displays the level name, rather than the scope’s full cube location. |
LIM-385 | Fixed bug where the scope was being separated by a comma instead of an ‘@’, causing the scope’s location to be undefined. |
LIM-411 | Fixed bug where Measure Value measure did not display a value when key/Actions column was in the MDX query |
LIM-412 | Fixed bug where the Exception tab’s table did not populate due to invalid handling of the getByLimitKey endpoint |
LIM-427 | Fixed bug where only a subset of breaches/warnings were displayed in the Exception UI. |
1.0.0 Alpha
2022-05-10
Download the distribution files here
You can download the following zipped distribution files:
- UI source code
- UI build
- Source files to build the module
- Maven repository required to build the project and run the tests. The ActiveViam 5.10.9 Maven repository files can be downloaded from here
Summary
- Remove hardcoded AsOfDate from KPIUtils: We now properly read in the AsOfDate properties map from limits.properties
- New workflow names : The workflows have been renamed.
- Straight through: no approval needed, created in approved state.
- Four eyes: previously called single eye. One person creates the workflow, another person approves.
- Six eyes: previously called 4 eyes. One person creates the workflow, two people approve.
note
To make sure your limit workflow works as expected, please discard any previous testing data in the datastore and Activiti databases. On top of the workflow name changes, the reference implementation now has the Role_Users by default to be able to create the limit definition instead of Role_Managers.
- Added property to specify the URL of the Limits Module: Limits now supports being run from any
location; previously Limits was assumed to be running at
localhost
. - Audit trail screen : New audit trail screen is available in the Limits Inventory Widget. For more information, see Viewing the audit history
- Added validation to Limit Definition: Limit Definitions are validated when loaded through CSV or File Upload.
- Ui changes : Upgrade to AUI 5.0.11, Acc-sdk 5.0.7, added Audit trail tab in Limits Inventory, enabled Lazyloading for Limits Inventory Widget, numerous bug fixes, added column sorting to the Limits Inventory Widget, enabled Storytelling, better error handling.
- Provided AP 5.9 LookupPostProcessor: Added AP 5.9 LookupPostProcessor Module to limits-lookup-postprocessors
- Limits on Calculated Measures: Limits can now be created on Calculated Measures via File Upload.
- Workflow after editing and deleting a limit: After editing or deleting a limit in the Limits Inventory Widget, the workflow is triggered. Editing triggers the Limit Change Workflow, deleting triggers the Straight through workflow and an audit record is created in the audit database.
- Roles: All the KPIs created by the Limits module now have
LIM_ROLE
as the owner and viewer.
Known issues
Issue Key | Details |
---|---|
LIM-351 | Evaluation limit endpoint doesn’t work properly when the limit definition has more than one scope. |
LIM-349 | File Upload doesn’t display error messages in the UI. |
LIM-347 | The Limits workflow has stability issues. |
LIM-346 | Limits on calculated measures only work through File Upload, not through the UI. |
LIM-343 | When deleting a limit, the content editor is not updated automatically. As a workaround, reload the content editor after deleting a limit. |
LIM-342 | The Audit screen doesn’t display details about editing a limit. |
LIM-341 | Editing a limit with STP doesn’t work as expected. |
LIM-338 | Creating a limit in the Limits Inventory breaks the UI if a required field is not set. |
LIM-326 | Limit scope definition on identical levels that exist in multiple hierarchies is not supported. |
LIM-320 | Calculated measures need to be included in Pivot Table Query in order to view a Limit’s KPI in the Pivot Table. See Measures for more on how to create a query Limits on calculated measures. |
LIM-314 | The workflowTypeArray UI setting does not dynamically generate the workflows section of the Limits Drawer form. |
LIM-312 | The Six Eyes workflow is not working as expected. The limit goes into the Approved state once the Examiner approved it, instead of pending approval until the Approver review. |
LIM-311 | Managers can edit and approve their own changes on limits with the Four Eyes workflow. |
LIM-302 | After editing or deleting a limit in the Limits Inventory Widget, the workflow is triggered. |
LIM-290 | For the Limits Inventory view, the sort only works on the first column. To sort on other columns, you can change the table column order to put the desired column first and then sort. |
Dependency versions
Component | Version |
---|---|
ActivePivot | 5.10.9 |
ActiveUI | 5.0.11 |
Data Connectors | 2.2.2-AP5.10 |
Java | JDK11 |
accelerator-sdk | 5.0.7 |
Added
Issue Key | Details |
---|---|
LIM-96 | Added validation of Limit Definitions. When loading a Limit Definition, the validity of Server, Cube, Measure, and Scope Keys (Cube Level Members) parameters are checked within the given Server. |
LIM-125 | Added Audit screen to the Limits Inventory Widget drawer. Additionally, there is a new optional setting to set on the UI side limits_inventory-widget.server.params.auditTrailNodeColors , which allows users to map their workflow statuses to three timeline colors. |
LIM-164 | Hardcoded values, such as Limits server name and rest endpoint settings, have been externalized to a global settings file. |
LIM-180 | Added server side support to show audit trail. |
LIM-193 | Added the context menu to the Limits Inventory Widget table, which includes column sorting. |
LIM-202 | By default, Limits Module uses ROLE_LIMITS as owner when creating the KPI. |
LIM-208 | Added new property acc.auth.map to limits.properties . For details, see the Accelerator Authentication section of the Integrating Active Pivot page. |
LIM-220 | Added functionality to auto generate scopes for a Parent-Child level. |
LIM-239 | Added better exception handling, which will let the user know if there are certain levels which need to be part of the query running inside of the Limits Inventory Widget table. |
LIM-254 | Utilize REST endpoint to construct scopes for Parent-Child hierarchies within the Create Limit drawer. |
LIM-270 | Enabled Storytelling for the Limits and FRTB cubes by default through the Limits settings file. |
LIM-275 | Initial load and file upload utilizes REST endpoint to generate Parent-Child scopes. |
LIM-283 | Enabled Lazyloading for Limits Inventory Widget. |
LIM-313 | Approve endpoint properly handles Forbidden user error, and sends back response. |
Changed
Issue Key | Details |
---|---|
LIM-175 | Reorganized and improved the ScopeDetails component for clarity and performance. |
LIM-192 | The workflows have been renamed. The new workflows are: Straight through, Four eyes, Six eyes. |
LIM-210 | Reduced memory consumption by caching limit scope’s keys and values. |
LIM-216 | Added a scrollbar and fixed height to the selected members for a given scope. |
LIM-231 | We now properly read in the AsOfDate properties map from limits.properties. |
LIM-236 | The KPI Goal value is represented as a Double. |
LIM-297 | Upgraded ActivePivot to 5.10.9. |
LIM-303 | Removed Timestamp from the Alerts file directory and added it to the alerts csv file name. |
Removed
Issue Key | Details |
---|---|
LIM-188 | Removed unnecessary columns from the Limits Inventory Widget’s table. Only key fields populate the widget’s table. |
LIM-265 | Creating Limit Rules of Between and Not Between has been disabled. |
Fixed
Issue Key | Details |
---|---|
LIM-156 | Fixed bug where resizing columns broke the Limits Inventory Widget. |
LIM-179 | Fixed bug which prevented copying cells from the Limits Inventory Widget table. |
LIM-189 | Fixed bug which prevented columns from being moved around inside of the Limits Inventory Widget. |
LIM-204 | Content Editor is refreshed automatically after creating, deleting or editing a limit. |
LIM-207 | The Limit icon is now placed in the correct position. |
LIM-208 | Improved performance of refreshing and creating new KPIs. Now KPIs are only refreshed when changed. |
LIM-217 | When a Limit is deleted, the Limit’s KPI will only be deleted if no other Limits use that KPI. |
LIM-244 | Fixed bug where long measure names would push the Measure field onto a new line. |
LIM-264 | Fixed the warning of the Greater Than KPI status. The warning level on a Greater Than limit now triggers a breach when the limit utilization is within the defined percentage. |
LIM-271 | Fixed bug which prevented the user from defining a scope. |
LIM-280 | Fixed bug where the Absolute Value Indicator value was being set by the Warning Threshold. Also, amber status logic was being applied incorrectly to KPIs. |
LIM-299 | Fixed bug where creating a scope of a level that was previously selected and deleted, did not render the Member Selector popover. |
LIM-321 | Fixed bug where the Breach Count measure never returned any data. |
LIM-305 | Fixed bug where a manually created limit with an empty “End Date” will populate it with the current date. |
LIM-308 | Fixed bug where scopes with Parent Child and non-Parent Child levels couldn’t be processed by ETL. |
0.3.0
2022-03-01
Download the distribution files here
You can download the following zipped distribution files:
- UI source code
- UI build
- Source files to build the module
- Maven repository required to build the project and run the tests. The ActiveViam 5.10.7 Maven repository files can be downloaded from here
Summary
- UX re-design: Based on feedback from demos we have redesigned the UX of the Limits Module. Limits creation screen based on UX design Limits edit and delete. Approval screen
- Upgrade: to ActivePivot 5.10.7 and ActiveUI 5.0.7.
- Amber support: Amber support has been added through the use of warningThreshold field. This lets you specify a percent of the limit value where the KPI should show amber status. For more information, see Create a New Limit.
- New KPI Types: Previously, all limits were interpreted as “Greater Than”. Now, through the * KPI Type* field, you can specify “Less Than”, “Between”, and “Not Between”. For more information, see Create a New Limit.
- AlertTask output modifications: AlertTask outputFile as well as AlertDefinition store fields have been re-organized and new fields have been added.
- Replace per-limit AsOfDate: AsOfDate (the date that limits should be evaluated on in AlertTasks) is now set globally via AsOfDateTuplePublisher.
- Use Start Date and End Date: Limit Start Date and End Date are now used to determine limit values at runtime. The Limits Module has the AsOfDate in the AsOfDate datastore, which is uploaded from the AsOfDate.csv file. All limit evaluations against the business cubes, such as MRA and FRTB, are based on the AsOfDate. At the start of the business day, the Limits Module expects that a new AsOfDate.csv file is uploaded through Data Connectors, to roll the date.
- Removed property
cube.rest.path
: Instead, the cube.rest.path should be appended to the REST path defined in theacc.url.map
property. - Added support for Atoti+: For steps on how to use the Limits Module with Atoti+ please read the Integrating the Limits Module with the Atoti+ Python API page.
- Added
SameSiteConfig
Configuration Class : SameSite Cookie policy can be configured by setting theSameSite
property. - Workflow support: Activiti dependency
- General Code Cleanup: Refactoring to clean up code-base and simplify logic.
Known issues
Issue Key | Details |
---|---|
LIM-140 | Workflow Entitlement doesn’t work fully yet. In 0.3.0, only managers can create new limits using the UI. |
LIM-223 | Currently, you can only edit a limit from the UI when the limit is in Initialized state. In such cases, the limit change workflow does not start after the update. |
LIM-144 | Currently, only explicit Limit Scopes are support for evaluating Alerts. Evaluating an Alert Task using the /evaluate endpoint for a given KPI, if an underlying Limit’s Scope contains Wildcards, causes the evaluation to fail for that Limit. |
LIM-176 | Levels are not a unique identifier in a Cube. Two levels of the same name can refer to different data. In this case a Limit’s Scope defined on a level could have multiple meanings. |
LIM-204 / UI-6969 | After creating new limits, you need to refresh the UI in order to see the KPIs created. |
LIM-203 | Limits upload error handling occurs when the measure name is incorrect. The Limits module currently doesn’t produce an error message when a measure name is incorrect. |
LIM-217 | Deleting a Limit Definition from within the Limits Inventory will cause the corresponding KPI to be removed from the Server even if other Limit Definitions use that KPI. Creating a dummy Limit Definition through the Limits Inventory will re-create all KPIs (including the deleted one) which will fix this issue. |
Dependency versions
Component | Version |
---|---|
ActivePivot | 5.10.7 |
ActiveUI | 5.0.7 |
Data Connectors | 2.2.1-AP5.10 |
Java | JDK11 |
accelerator-sdk | 5.0.4 |
Added
Issue Key | Details |
---|---|
LIM-18 | Added support for Less Than, Between, Not Between KPIs |
LIM-108 | Added amber status support |
LIM-99 | Added SameSite policy configuration class SameSiteConfig which can be enabled/set through the SameSite property. |
LIM-41 | Added approval workflow supports |
LIM-122 | UI and Workflow Integration |
LIM-89 | KPI goal now shows more information including absolute value, kpiType, WarningThreshold, and limit value(s) where applicable and formatted value. |
LIM-190 | REST endpoint has been added to prevent unauthorized users from creating a limit. |
Changed
Issue Key | Details |
---|---|
LIM-68 | Updated the Limits UI based on UX design |
LIM-101 | Added new fields to AlertTask output file and AlertDefinition store; re-organized fields |
LIM-103 | AsOfDate removed from limit input files; replaced by global AsOfDate value. Start Date and End Date are now used in evaluation of limit values at runtime |
LIM-127 | For Between and Not Between KPI’s, setting a Warning Threshold has been disabled. Between and Not Between Limits with a Warning Threshold value will be rejected when loading a file. |
LIM-151 | Success and failure messages for the Approve and Reject buttons are determined by the server’s response to the REST requests. |
LIM-171 | The column with View and Delete links has been renamed to “Actions” |
Removed
Removed | Desciption |
---|---|
cube.rest.path property |
The cube REST path is now included in the acc.url.map property value. |
Fixed
Issue Key | Details |
---|---|
LIM-94 | Fixed issue where limit values were not evaluated on factless hierarchies. |
LIM-172 | File export of the Limits Inventory widget has been fixed and no longer only contains headers. |
0.2.0
2021-09-30
Download the distribution files here
Summary
- Support Multiple ActivePivot Instances : The Limits Module now supports multiple ActivePivot instances. Clients can use one Limits Module to monitor and create KPI in Limits Inventory Dashboard, such as monitoring LIM and FRTB in one place.
- On-Demand Limits Monitoring/change : LimitEvaluation restful endpoint is available for clients to trigger the evaluation on demand. The result is written into alert csv files with timestamps and exposed in the Breach Count measure.
- Trend Analysis of Limits: By including AsOfDate hierarchy in the business cubes, users can now analyze KPI goal changes over a period of time.
- Upgrade to AUI 4.3.17
- Documentation Improvements
Known issues
None.
Dependency versions
Component | Version |
---|---|
ActivePivot | 5.10.6 |
[ActiveUI]https://activeviam.com/activeui/documentation/5.0.6/) | 5.0.6 |
Data Connectors | 2.2.1 |
Java | JDK11 |
accelerator-sdk | 5.0.3 |
Added
Issue Key | Details |
---|---|
LIM-12 | Adds endpoints, within the Limits Inventory widget, to create, upload, and export limits. Please see New Limits Widget. |
LIM-27 | Implements a custom widget to display Limit Definitions. |
LIM-23 | Allows multiple servers to connect to the same Limits Module. |
LIM-32 | Adds testing framework for unit, integration, and regression tests. |
LIM-40 | Integrates the DEE for the Limits Inventory widget’s export button. |
LIM-43 | Allows a client’s orchestrator to create and trigger Alert Tasks. |
LIM-58 | LookupPostProcessor factors AsOfDate for trend analysis of Limits. |
LIM-67 | Added tests to create, upload, and export limit definitions from the Limits Inventory widget. |
LIM-104 | Support functionality to edit and delete limits from the Inventory Table. |
Changed
Issue Key | Details |
---|---|
LIM-65 | Upgrade Limits module to AP 5.10 |
LIM-66 | Upgrade Limits module to ActiveUI 5 |
LIM-62 | Renamed the MDX constant for Limits widget. |
LIM-55 | Changed ‘Accelerator Name’ to ‘Server Name’ in the Limits definition. |
LIM-48 | Parameterized the Alert file path location. |
LIM-38 | Modified the MDX so the KPI status populates when the KPI’s goal is not null. |
Fixed
Issue Key | Details |
---|---|
LIM-53 | Changed the Upload input file format to accept exported files. |
LIM-50 | Fixed NullPointerException in Upload endpoint by including the Accelerator. |
LIM-31 | Added logic to remove alert tasks from expired dates. |
LIM-112 | Fixed bug where a rule’s upper bound value could be smaller than the rule’s lower bound value. |
LIM-114 | Fixed bug where the rule message display would not reset when the rule was deleted. |
0.2 Alpha
- Support multiple AP servers
- Change the way alert evaluation works. Intra-day observation frequency runs every 20 seconds by default. Other observation frequencies are required to invoke by client’s alert orchestrator.
0.1
- Initial release
- Input file formats for the CSV files that can be used by clients as input to the ActivePivot
Limits Module Reference Implementation.
- Limits definition files need to be replaced with the organization’s data.