CARL Source
Status workflow [General]
Customization > Customization functions > Status workflow > Status workflow: Forms > Status workflow [General]

This screen describes a state workflow, whether it is:

Workflow elements tree structure

On the left side is the tree structure of a workflow's components:

Actions and appear automatically, and only in the context of a multiple workflow, to create or delete an alternative branch.

Header

This field is continuously displayed.

Details of the tree structure's components

Details of a state workflow

The Workflow's general details include a space for the attributes of access conditions to alternative workflows
These fields, accessible only for an object allowing multiple workflows, are used to define the 2 attributes conditioning the application of alternative workflow branches.
Attributes can be linked directly to the workflow object or to a child object of the workflow object.
The values of these conditions must be filled in on each alternative branch.

The filter thus created is an "AND" between the values of the 2 attributes.

 

Main branch details - 0

The main branch, numbered "0" is displayed as default and is the basic workflow.
For an entity that does not allow multiple workflows, the content describing the single life cycle is displayed, i.e.

The list of transitions displayed is the one corresponding to the highlighted state.
To view the transitions accessible from a status, simply click on the corresponding line on the status list.

 

List of statuses

 

List of transitions

 

Details of alternative branches

On a workflow alternative branch, not numbered '0', the list of states and transitions is available as on the main branch.

 

Statuses

Alternative workflows inherit the states of the main workflow when they are created. Unique customized states and transitions can be added or removed.
Inherited elements can be deactivated (via the sub-list delete action on alternative branches) and disappear from the lists.
These elements, which are deactivated in the alternative branch, can still be displayed using the appropriate checkbox. They can be reactivated by the actions found in the Status or Transitions lists.

A second tab allows you to specify the condition values for which this branch is automatically applied to the entity.

 

Conditions

If a second attribute has been filled in, 3 other fields will be displayed on a second line to define the condition of the branch in the workflow details.
When the condition relates to 2 attributes, the condition for applying the alternative workflow branch will be the condition defined on the first line with the first attribute AND the condition defined on the second line with the second attribute!

 

Remarks on the case of multiple workflows

An alternative workflow is automatically selected and applied by the system, according to the workflow sequence number: if the conditions of several alternative workflow branches are favorable to be applied to the entity, the system will apply the first branch in ascending order. If no alternative is compatible with the conditions for applying the workflow branches, the system chooses as default the main branch to applied to the entity as a life cycle.

When disabling states used in standard workflows, it is important to ensure that they are not unavoidable in the application's mechanisms, as this could degrade the application's processes. It is advisable to add customized states rather than disable them.

Each customized status/transition code is unique in a workflow and can only exist in one alternative branch of the workflow. An exception to this are the states in the main branch which are inherited/used as default in the alternative branches (but which cannot be changed in the latter).

In the event of a change in the application condition value of an alternative branch on an entity, if the entity is in a customized state specific to an alternative workflow branch (because the alternative branch condition data is correct), the system will block the saving, since the state is not known either in the main branch or in another branch. The system would not be able to determine a transformation of the current state.
Only inherited states, i.e. transversal in the branches, do not block the system. They can be applied to an alternative branch or, failing that, to the main workflow branch, since these states are cross-functional.