Workflow System enables you to run business activity in the backend. Users and front-ends benefit from
- Non-blocking behavior: the user can continue working after triggering a workflow
- Scalability and redundancy: job processor farms can load-balance the work and compensate failures
- Customizability: functionality is not hard-coded into applications but can be easily adapted
- Monitoring: the state and progress can be easily tracked
- Reusability: functionality has to be implemented only once and can be reused from any client, also 3rd party
The DPE Workflow System is based on the Microsoft Workflow Foundation library.
A workflow template is a recipe containing a sequence of operations. It is used as a template for workflow instances.
A workflow activity is a single operation in a workflow template. Some activities delegate their work to jobs.
A job is an operation executed through one of optionally many job processors (optionally on different machines). Using jobs is the way to scale workflow operations.
A workflow instance is a living copy of a workflow template. It has a status (e.g. Scheduled, Running, Finished, Failed) and a progress.
Workflow Monitor web page can be used to monitor the status and progress of workflows. It can also be used to cancel workflows or to change their priority.
|Job Monitor web page can be used to monitor the status and progress of jobs.
|Workflow Templates web page can be used to import and export workflow templates.
|Importing Workflow Templates
|Workflow Service is part of DPE Services and offers a programming interface (API) to manage the workflow database. A user has no direct contact to it.
|Job Service is part of DPE Services and offers a programming interface (API) to manage the job database. A user has no direct contact to it.
|Workflow Worker is the component that executes workflows. It is part of the Workflow Server application.
|Configuring Workflow Worker
|Workflow Scheduler is the component that can instantiate workflows based on a schedule. It is part of the Workflow Server application.
|Configuring Workflow Scheduler
|Workflow Table Watcher
|Workflow Table Watcher is the component that can instantiate workflows based on changes in a DigaSystem table. It is part of the Workflow Server application.
|Configuring Workflow Table Watcher
|Workflow Folder Watcher
|Workflow Folder Watcher is the component that can instantiate workflows based on changes in a file system folder. It is part of the Workflow Server application.
|Configuring Workflow Folder Watcher
|Some user actions in the Content Manager web page instantiate workflows, e.g. dragging an entry from one table to another instantiates a copy workflow.
|3rd Party Workflow Triggers
|3rd party applications can instantiate workflows using the Workflow Service API.
|Job processor applications are executing jobs.
|Installing a Job Processor, Configuring Job Processors