Workflows make it possible to model business processes. Workflows combine three key concepts of BizzStream: * Transition (statuses) * Authorization (permissions and access groups) * Actions (workflow actions)
Each Document Definition has a Workflow section. Actions can be added within this section. These actions define possible behaviour for instances of the Document Definition. The Workflow also facilitates restricting the conditions under which an Action can be executed.
In the example above you find a typical workflow for an order process. * User 1 creates an Order and submits the order for approval. * User 2 checks the submitted order and validates. * User 3 after the order has been approved, the user makes the order.
A proper Workflow should enable transition. Typically an Action will enable the transition from one Status to another, but this does not prevent to create an Action that can be executed from any status, or that does not result in a new status. To configure transitions, the concept of Connections is used. Connections visualise the relation between a (or any) Status and an Action.
BizzStream allows to set permissions on field (line) level per user or Access Group. Permissions can be set per status, this means that workflow transitions can be made dependant on the status and field (line) permissions.
In this example the Employee Access Group has fewer (view and edit) permissions than the Manager Access Group.
There a several kind of actions, for example User Actions and Scheduled Actions. Whereas the way of execution differs for each kind of action, their role within the workflow is alike.
|A user action can be triggered by a user clicking a button|
|A scheduled action can be triggered by a set time or interval|
|A bulk action can perform an action over one or more documents at the same time|
|A REST action can perform a PUT, POST or DELETE action through a REST call|
Keyboard Actions on the Workflow
Some manipulation of the workflow is done through keyboard shortcuts.
|Delete/Backspace||Delete an action, status or connection, if a status or action is deleted, the connections linked to it are also deleted.|
|Ctrl+C||Copy user action (only works for user actions) to the clipboard, you can only copy one user action at a time.|
|Ctrl+V||Paste the user action in the clipboard, it will create a copy with a unique name a bit lower and to the right|