Workflow Element

In addition to the flow element defined in the model, a workflow also requires some runtime configuration. This is defined in the Workflow element of the workflow component.

  • name: A descriptive name for the workflow
  • target: The target data element
  • component: Name of the component of the flow element
  • class name: Name of the flow element as defined in the model
  • responsible: If defined, the userContext used when executing tasks will contain the information of the selected user (only works with the account component)
  • sequencing strategy: (since expanders 3.2.0) Used to switch between different sequencer implementations.
Field Example
Name InvoiceFlow
Target Invoice (data element)
Component name tutorialComp
Class name Invoice (flow element)
Responsible admin
SequencingStrategy default

In order to run the workflow, one of more EngineService instances must be defined.

EngineBean resolution

The class name is used to find the corresponding EngineBean class. The TimerHandlerBean find this information in the ComponentMetaData of the component defined with ‘component name’. This ComponentMetaData class will contain a line like the following:

 flowElementDefs.add(new FlowElementDef(COMPONENT_NAME, "be.uantwerpen.ee", "InvoiceEngine"));

This corresponds to the packageName of the flow element and its name (here ‘Invoice’), appended with the postFix ‘Engine’. In order to define a custom Engine, a new definition must be added:

// anchor:custom-flow-elements:start
 flowElementDefs.add(new FlowElementDef(COMPONENT_NAME, "be.uantwerpen.ee", "InvoiceDemoEngine"));
 // anchor:custom-flow-elements:end

This new engine can then be referenced with the class name ‘InvoiceDemo’. The algorithm will then automatically append ‘Engine’ to search for ‘InvoiceDemoEngine’.

Version

Release Expander version Change
201712 3.2.0 Added field ‘SequencingStrategy’