Migrate to 6.0.1
Upgrading from version 6.0.0 See Atoti Sign-Off 6.0.1 Release Notes.Headline announcement
- Persisting full scope paths: Full scope paths are persisted to the JPA layer to allow handling of scopes with slicing and non-slicing hierarchies.
- Customized sign-off status feed: The sign-off status feed member for “in review” representation can be customized on the application server.
Using full scope paths in persisted data
Older versions of Atoti Sign-Off did not include the full scope path for definitions that were saved to the JPA layer. As of this version, full scope paths will be used. For example, if you have a definition on the slicingBook level, the old path would look like:
6.1.0, we have added a migration endpoint. The reason for adding an endpoint rather than a
script is that we need to connect with the application server to get the full scope path.
You only need to run the migration if you are using persisted data as your golden source of Atoti Sign-Off data. If you are using files as your golden source
of data then you do not need to run the migration.
- Start your application server.
- Start Atoti Sign-Off with the
6.0.1-migrationSpring profile to include the endpoint and override default validation. - Run the migration endpoint. You can do this via Swagger by executing the POST request at
<base URL>/sign-off/rest/v2/migrate/sign-off-definition-scopes. The migration endpoint retrieves the full scope paths from the application server and updates the definitions if necessary. - Restart the application server and Atoti Sign-Off as normal (without the
6.0.1-migrationprofile) to view your updated definitions and proceed as normal.
Configuration properties
Properties added
signoff-activeviam
Configuration
Configuration properties
Properties added
signoff-activeviam moduleConfiguration files
Files modified
RestApiProperties.java
Updated properties:UI settings
Updated properties:
Deleted properties:
application.yml
New properties:
Updated properties:
Datastores
Modified stores
Other changes
Spring Boot compliance
Atoti Sign-Off now aligns more closely with Spring Boot best practices in our aim to move towards using Spring Boot Starters to ease migrations.Configuration properties
Atoti Sign-Off now uses Spring Configuration Properties to help externalize configurations for users. You can see a full list of the provided properties in the Configuration Properties section.Adjustments locations and input fields
These two adjustment fields are now Lists instead of Sets. This impacts the following classes and services that may affect your implementation:
Workflow-related:
SignOffProcessInstanceWorkflowService.javaAuditableAdjustmentDefinitionDTO.javaAdjustmentExecutionDTO.java
AdjustmentsDefinitionEntity.javaAdjustmentsFiltersConverter.javaAdjustmentsInputConverter.javaIAdjustmentDefinition.javaAdjustmentExecutionEntity.javaIAdjustmentExecution.java
Status manager service
TheISignOffWorkflowStatusManager lets you implement a service to define the statuses that relate to specific categories.
Current methods with a default implementation in DefaultSignOffWorkflowStatusManager are:
getLiveDefinitionStatuses(): returns a list of definition status considered live.getPendingApprovalTaskStatuses(): returns a list of task status considered pending.
Workflow task actions
A unique way is now used to execute common workflow task actions (e.g. approve, reject, request approval …) and custom actions. It allows greater flexibility and easier extension of current set of actions. To extend the task actions, see Adding Custom Workflow Tasks.Using Atoti Sign-Off with older solutions
Atoti Sign-Off 6.0 is a major upgrade but can be compatible with older solutions with some adjustments. This section guides you through the steps to make your solution compatible with Atoti Sign-Off 6.0. We shall include sample changes specific to Atoti Market Risk version 5.4.2 and Atoti FRTB 5.3.4, but the general steps apply to any server that connects with Atoti Sign-Off.Steps to use Atoti Sign-Off
The steps to use Atoti Sign-Off are the same as in the Getting started guide. Note that depending on the Atoti Server version of the solution you are running with Atoti Sign-Off, you may need to update the propertyapplication.rest-apis.<server>.mdx-endpoint in your application.yml file.
If your Atoti Server version runs with a different version of the API than the default set in Atoti Sign-Off (/activeviam/pivot/rest/v9/cube/query/mdx) for Atoti Server 6.1,
you will need to update this property.
See the Atoti Server API documentation for the correct version.
Connecting with Atoti Market Risk 5.4.2 & Atoti FRTB 5.3.4
With Atoti Market Risk 5.4.2 and Atoti FRTB 5.3.4, which runs with Atoti Server6.0, you need to update this property in Atoti Sign-Off:
Steps to use the Atoti Solution
Migrate adjustments services
For UI compatibility,adjustments-services version 4.1 or higher is required.
See Adjustments Services 4.1.
You will need to:
- Update your dependency artifact’s
groupIdandversiontocom.activeviam.solutionsand4.1.0respectively. - Update your code to use a
ListinAdjustmentRequestDTOandSupportedAdjustmentDTOwhen setting yourfiltersandinput. - Update your code to replace use of
NamedValueDTOs from dependencies (e.g.com.activeviam.apps:sharedalso known as the common library).
Connecting Atoti Market Risk 5.4.2 & Atoti FRTB 5.3.4
In Atoti Market Risk 5.4.2 and Atoti FRTB 5.3.4, the dependencycom.activeviam.apps:shared is using version 2.0.6-AS6.0
and 2.0.3-AS6.0 respectively which depend on adjustments-services version 4.0.0.
Your code may call methods in dependencies that use NamedValueDTO which has changed in adjustments-services version 4.1.0.
You should replace calls to ExecutionFunctionalComponents::parseInput with calls to a local method to your project to complete its purpose.
ExecutionFunctionalComponents::parseInput
ExecutionFunctionalComponents::parseInput
ExecutionFunctionalComponentsConfig for instance.
Then you should replace the calls to ExecutionFunctionalComponents.java::parseInput with it in:
AdjustmentsExecutionVaRConfigAdjustmentsExecutionPnLConfigAdjustmentsExecutionSensiConfig
AdjustmentExecutionConfig for instance and make it static.
Then you should replace the calls to ExecutionFunctionalComponents::parseInput with it in this same class.
Migrate Sign-Off API
To ensure that the API contract between the Atoti solution and Atoti Sign-Off is respected, check that the Sign-Off API is upgraded to the version required by your Atoti Sign-Off version. You can find the correct version in the Dependency versions section of the Release notes. For Atoti Sign-Off 6.0.0 you need to upgrade to4.2.0.
See Sign-Off API 4.2.
You will need to:
- Update your dependency artifact’s
groupId,artifactandversiontocom.activeviam.solutions.signoff-api,signoff-api-liband4.2.0respectively. - Implement the
ISignOffRestService::enabledmethod. This method is used to let Atoti Sign-Off know that the server is up and running. - Remove calls to
getMeasuresinSignOffProcessInstanceExportDTO: Themeasuresfield has been removed in Sign-Off API4.2.0.
Connecting with Atoti Market Risk 5.4.2 & Atoti FRTB 5.3.4
In Atoti Market Risk 5.4.2 and Atoti FRTB 5.3.4, you may remove calls to thegetMeasures method in the SignOffProcessInstanceExportDTO class by extending the SignOffService with a CustomSignOffService class.
CustomSignOffService
CustomSignOffService
SignOffServiceConfig.
SignOffServiceConfig
SignOffServiceConfig
6.0.x.