Page History
Table of Contents |
---|
Note |
---|
This feature is for DCM 1.0 only |
Introduction
This page describes the mechanism of loading the right case with the right application in Blueriq so that it is possible to:
...
In this article we will use the notation a:1
in the schema of <name>:<version>
. This ID is used to make sure to always address the correct case from a case list or work list. The same behavior applies to message events.
So having an a unique identity is a good thing, but it also limits the way of deploying models and expanding an application using more than one project.
By controlling the application ID behavior we are able to fulfil the following requirements:
UI Text Box | type |
---|
Tip |
As business I want to be able to deploy from different branches without breaking the process, so that it is easier to manage my deployment strategy. |
UI Text Box | type |
Tip |
---|
As business I want to be able to have a single dashboard over projects so that all cases and tasks are shown in one list. |
Loading an application
A case that has to be started triggers the application(s) that is/are needed to be able to run. Note that this implies that if there are a large number of applications available, it can take some time to determine which application is relevant.
...
Component | Description | Comment |
---|---|---|
Process engine | Controls which part of the application ID is ignored by the process engine when evaluating timer nodes and handling message events. | |
Process list | Controls which part of the application ID is ignored when displaying cases and tasks in lists (AQ_CaseList, AQ_WorkList, AQ_Timeline). For backward compatibility, when process list settings are not configured, the process engine settings apply. | This component was introduced in Blueriq 9.8.5. |
Rules for process engine
When handling timers and message events, the Process Engine of an application A uses the following rules to determine which part of the application Id should be ignored:
...
The configuration for the Runtime is applied to
Include Page | ||||
---|---|---|---|---|
|
Code Block | ||
---|---|---|
| ||
#global setting for the process engine, accepted values = none, project, version, all blueriq.processengine.default-app-id-ignore-mode = none #per-application setting for the process engine; format = blueriq.processengine.app-id-ignore-modes.<application name> = none | project | version | all blueriq.processengine.app-id-ignore-modes.studio-RepositoryName1-ProjectName1 = project blueriq.processengine.app-id-ignore-modes.studio-RepositoryName2-ProjectName2 = version blueriq.processengine.app-id-ignore-modes.studio-RepositoryName3-ProjectName3 = all #global setting for process lists, accepted values = none, project, version, all blueriq.processlist.default-app-id-ignore-mode = none #per-application setting for process lists; format = processlist.app-id-ignore-modes.<application name> = none | project | version | all blueriq.processlist.app-id-ignore-modes.studio-RepositoryName1-ProjectName1 = project blueriq.processlist.app-id-ignore-modes.studio-RepositoryName2-ProjectName2 = version blueriq.processlist.app-id-ignore-modes.studio-RepositoryName3-ProjectName3 = all |
...
Below an overview is given of the interaction between the different components.
DCM 2.0
The ignore modes are also used in DCM 2.0, but they work slightly different from DCM 1.0 as described above. The reason for this is that in DCM 2.0, the runtime and the case engine (which contains the process engine) are separate components. The process engine settings therefore apply to the case engine (process engine) and the process list settings apply to the runtime, which contains the DCM_CaseList and the DCM_WorkList. Where the process list settings have a fallback to the process engine settings in DCM 1.0, this is no longer possible in DCM 2.0 since the process engine is no longer available in the runtime. So, for DCM 2.0 the rules for process lists are:
- check the
process list
setting for application A; if not configured then... - check the global
process list
setting; if not configured then... - use
none
as default
Apart from this everything else described above also applies to DCM 2.0.