Important
You are browsing documentation for version 5.0 of OroCommerce, supported until January 2025. Read the documentation for version 6.0 (the latest LTS version) to get up-to-date information.
See our Release Process documentation for more information on the currently supported and upcoming releases.
Workflows
Hint
For more information, see Workflow Configuration Reference.
Filename |
|
Root Node |
|
Sections |
attributes
type: map
During each step transition, a set of entity attributes can be shown to the user for which they can enter values. Each entry in this map is the name of an attribute which can be configured with a map that can contain the following options:
entity_acl
type: map
There are two keys that can be used with this option:
If the
delete
key is set totrue
, the attribute is treated as the name of an ACL that is evaluated to check if the user is allowed to delete the underlying entity.If
update
is set totrue
, the ACL is used to check for update permissions.
options
type: map
The options must be configured based on the chosen type
:
class
(type:string
)A fully qualified class name which is needed when the attribute type is
entity
orobject
.multiple
(type:boolean
)When the type is
entity
, this option controls whether or not multiple entities can be selected.virtual
(type:boolean
)The attribute will not be saved in the database and is available only for the current transition. The default value is
false
.
property_path
type: string
An optional property path used to access the attribute’s value (if this is set, the other options
can be guessed). You can refer to the underlying entity by a variable whose name is controlled by
the entity_attribute option (its default value
is entity
).
type
type: string
The attribute’s type can be any scalar
boolean
/bool
float
int
/integer
string
array
(list of scalars or objects that are serializable)object
(a serializable object)entity
(FCQN of a Doctrine entity).
entity
type: string
The fully qualified class name of the entity the workflow is associated with (a workflow can only be used with exactly one entity type).
entity_attribute
type: string
default: entity
A name of an attribute used to store the main entity.
is_system
type: boolean
If this option is set to true
, the workflow is treated as built-in which means that it cannot
be modified or removed via the user interface.
start_step
type: string
The name of the workflow start step. The value must refer to one of the steps configured with the steps option.
steps
type: map
The steps
option configured the states a workflow can have. The keys are step names and each
value is a map that contains options that configure the particular step.
allowed_transitions
type: sequence
A list of transitions that can be applied at this stage.
entity_acl
type: map
Two options can be configured under this key to control which kind of actions can be performed in this step:
delete
(type:boolean
)If
true
, the entity can be removed.update
(type:boolean
)If
true
, the entity can be modified.
is_final
type: boolean
This option must be set to true
to identify final workflow states.
order
type: integer
Steps are ordered by this value in the workflow steps widget.
steps_display_ordered
type: boolean
If set to true
, all steps will be shown in the workflow widget on the user interface. Otherwise, only
steps that have an order value less than or equal to the current step will be shown. This is
useful to indicate the following steps of an entity.
transition_definitions
type: map
transitions
type: map
Transitions define how one step is transformed into another using the following options:
acl_message
type: string
A message that will be shown in case the user does not have access granted through the access control list configured with the acl_resource option. This option will be translated before being shown on the UI.
acl_resource
type: string
The id of an access control list a user must be granted access to perform the transition.
dialog_template
type: string
default: @OroWorkflow/Widget/widget/transitionForm.html.twig
When the display_type is dialog
, this template will be used to create the page displayed on the user interface. The template being referenced here should extend the default
@OroWorkflow/Widget/widget/transitionForm.html.twig
template.
display_type
type: string
The type of the widget to be shown when the transition is performed. This can be either dialog
or page
. When the page
value is used, the form_options must be configured too.
form_options
type: map
Form options that will be passed to the created form type when the display_type option is set to
page
.
frontend_options
type: map
is_start
type: boolean
If set to true
, this transition can be applied when a workflow is not in a start step. There
must be at least one transition having this option set to true
if the workflow does not have at
least one start step.
message
type: string
A notification message that appears on the user interface before the transition is performed. This message is translated before it appears on the user interface.
page_template
type: string
default: @OroWorkflow/Workflow/transitionForm.html.twig
When the display_type is page
, this template will be used to create the page displayed on
the user interface. The template being referenced here should extend the default
@OroWorkflow/Workflow/transitionForm.html.twig
template.
step_to
type: string
The name of the step the workflow is transformed to (this must be one of the keys used in the steps option).
transition_definition
type: string
A transition definition to be applied to this transition.