UI trigger
Introduction
A UI trigger is how an end-user starts a workflow from a worker site. It is the only way to start a UI workflow.
Unlike the automatic triggers — data, time, event, and web — a UI trigger has no dedicated admin entity. Instead, you configure it directly on the widgets of a page. When the user interacts with the widget, for example by clicking a button or selecting a grid row, Casewhere starts the configured workflow definition and opens the workflow wizard.
Configuration
Depending on the widget, you set up a UI trigger in one of two ways.
Workflow Container widget
The Workflow Container widget embeds a workflow directly in a page. Configure the widget with the workflow definition to run; the widget triggers the workflow and renders its activities inline. Use it when the workflow is the primary content of the page.
Widget action
Most interactive widgets — buttons, grids, and lists — let you attach an action to a UI event such as a button click or a grid row command. Choose the Trigger Workflow action and configure:
- The workflow definition to run.
- The input data objects passed to the workflow, for example the selected grid row.
- The target process (required for case-creating workflows).
When the user performs the action, Casewhere starts the workflow.
How it works
For both mechanisms, the worker site calls the Worker API, which:
- Validates the user's access to the widget data and evaluates the workflow's security rule. If the user is not authorized, the request is rejected.
- Resolves the case: for a case-creating workflow, Casewhere creates a new
Draftcase; for a case-editing workflow, it uses the selected case. - Starts the workflow and returns its first UI activity to the workflow wizard.
A UI workflow idles at each UI activity while it waits for user input. The user moves through the workflow with the workflow wizard buttons such as Save & Next and Back, and Casewhere persists progress according to the workflow's transaction settings.