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.
|Target||Invoice (data element)|
|Class name||Invoice (flow element)|
In order to run the workflow, one of more EngineService instances must be defined.
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’.
|201712||3.2.0||Added field ‘SequencingStrategy’|