Page History
Uit de specs
As project, I want to be able to keep my old dossier entries when replacing the dossiermanager with the new aggregate functionality.
Introduction
In 9.4 we introduced aggregates to are now more and more enthusiastic about this feature. From one project we know that they only want to use it, when canThis how-to concerns this content migration, by modeling a flow that migrates a dossier to an aggregate. Three scenarios will be discussed.
Id is not relevant
When dossiers need to be migrated to aggregates and the Id of the newly created aggregates is not relevant in other parts of the model, follow these steps:
- A project that wants to migrate has to create a Baas or custom service.
- This service should be called for every dossier Id in the database.
- In this service you then
The idea is that a project has to make an exposed migration flow. In this flow you first
- call the
AQ_DossierManager
to load the existing dossier into the profile. - The
- next step is to use the
AQ_Aggregate_Create
service to create a new aggregate entry. Like this, a project team can define itself exactly how dossiers are migrated, extra metadata can be added, dossiers can be split, etc.
Info |
---|
The code to query the dossier database, to select the applicable |
Ids, and passing them one by one to the exposed flow is left to the project |
There is one problem though. The old dossier Id might be different than the newly created aggregate Id. As the dossier Id might be stored in many surrounding systems (such as in the profile of the process engine), we would need to update all those Ids, which is not nice. We rather would like to start with an empty aggregate database, and use the same Ids as for the dossiers. For this, a new service is available, AQ_Aggregate_Migrate.
Specifications
- A new service is created
AQ_Aggregate_Migrate
- This is a copy of the
AQ_Aggregate_Create
service - This is not part of the aggregate plugin
- This is not included in the standard package delivered to projects
- Projects need to ask for the dll or jar when they want to migrate.
- This service should not be included in the regular model, and only used once for migrating.
- You may even go so far and convert it to .Net by hand, and not add it to the .Net conversion scripts.
- This is a copy of the
- This service has the same parameters than the
AQ_Aggregate_Create
service, with one addition- A new parameter is added, called
DossierIdInput
- It is of type expression
- The expression should return an integer
- At runtime, the new aggregate entry is created under this Id
- Any unexpected behavior, results in an error at runtime
- For example that the supplied Id already exists, or is a negative number
- A new parameter is added, called
Uit de mail
team. |
Id is relevant
When dossiers need to be migrated to aggregates and the Id of the newly created aggregates is relevant in other parts of the model, please contact support about the possibilities.
Step-by-step guide
type | note |
---|
UI Expand | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||
|
Include Page