This screen describes a state workflow, whether it is:
- A simple workflow with a main branch with only one life cycle,
- A multiple workflow with a main life cycle and alternative branches with conditioned enforcement, inheriting the states/transitions of the main branch and being able to add to and change them.
Workflow elements tree structure
On the left side is the tree structure of a workflow's components:
- The details section (always included): displaying workflow details with multiple alternative branches
- Required main branch (always present): describing the basic workflow, with index "0"
- Alternative branches, based on the main branch, applicable for certain entity conditions. These can only be created if the object in question authorizes multiple workflows (main branch + alternatives)
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.
- Workflow: Workflow identifier.
- Name: Name of the workflow.
- Status: If the status is inactive or canceled, the workflow cannot be applied.
- Object: Indicate the object associated with this workflow. Entering the relevant object determines the availability of job classes for workflow states and transitions. Depending on the object, this can also be used to access multiple workflow settings.
- Source: If the source is "Standard," the workflow cannot be changed, except for the transition message template and confirmation page.
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.
- Attribute 1: First alternative branch conditioning attribute.
- Multiple values: Accessible for all attributes except date attributes, allowing alternative branches to indicate multiple values if set to yes.
- Attribute 2: Second conditioning attribute. Accessible only if the first attribute has been filled in.
- Multiple values: Multi-value setting of the second conditioning attribute.
- Conditioned life cycles: List of the workflow's branches (main and alternative).
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 various statuses of the process,
- And for each status, the transitions, that is, the transition to another status.
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
- Sequence: The order shows the chronological succession of statuses, but it is possible to define a transition from one status to another lower-order status.
- Status: Status identifier.
- Name: Name of the status, appears on screens. This name is translatable.
- Initial: Can the element be created directly with this status ?
- Change: Can the element be changed when it has this status?
- Deletion: Can the element be deleted when it has this status ?
- Message: Message template sent when the element is created directly with this status.
- Job class: Job to be performed once the component has this status. The list of job classes is contextual to the object associated with the workflow.
For example, when a work order is validated, reservations and purchase requests are created. The "Simple" job class indicates that there is no special job.
- Status family: Grouping of several states, useful in mobility mode or allowing the system to find a state in a given family during automatic processes.
- Inherited: Useful on alternative branches. Indicates whether the displayed state is from the main branch or is customized and specific to the workflow branch.
List of transitions
- Sequence: As for statuses, the order is for information purposes only.
- Final state: Status of the element after transition.
- Name: Transition text that appears on the change of status menu
. It is translatable.
- Condition: Transition display condition. If the condition is met, the transition will be proposed. Using the associated menu, the user can create a new condition, change it or delete it. Changing and deletion are only possible if the condition is not used in any workflow.
- Message: Message template sent when this transition is applied to the element.
- Automatic: Indicates that the transition occurs without the direct involvement of the user.
For example, the WR automatically switches to the CLOSED status once the work order has been closed.
- Confirmation page: Filled in only if the change of status form has special fields.
For example, the Asset for closing a work order.
- Job class: Control job performed to be able to apply the transition.
- Family: Transition family to which it belongs. To be filled in if the transition must be possible for a set of elements from the [Results] tab.
- Signature: indicates whether the transition requires an electronic signature to be confirmed.
- Inherited: Useful on alternative branches. Indicates whether the displayed transition is from the main branch or is customized and specific to the workflow branch.
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.
- Display disabled inherited elements: Displays the inactive inherited components for the alternative branch.
- Disabled (in each list): Enabling/use of inherited states/transitions on the alternative branch.
A second tab allows you to specify the condition values for which this branch is automatically applied to the entity.
Conditions
- Attribute 1 name: Displays the name of the first condition attribute selected on the workflow details.
- Operator: List of operators for the first condition.
- Entry field for the condition value: In the case of multiple values: separate entered values with a semi-colon. Multiple values are not an "AND" condition but an "OR" condition: It is either the first value, or the second indicated, etc. In the case of an attribute from a values list: enter the list code.
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.