States are the changes through which a process can pass from inception to completion. Use states to monitor the status or percentage complete of a particular job. For example, a parcel order can go through a series of definable states, such as ORDER CONFIRMED > PACKED > DISPATCHED > IN TRANSIT > DELIVERED.

See Create a state.

You can associate actions with a state and associate state with an activity. The actions are initiated when the activity becomes pending and the state of the job changes. Or when the state of the job changes at any time during the lifetime of the job. For example, you can change the state when viewing job properties or by using an API on the SDK.

You can associate a state with one or all of the following actions:

Restart action

Use the Restart action to bypass certain activities and restart the job at a different point in the process when the job reaches a specific state.

For example, in an Employee On-boarding process, define the following states of a job:

  • New Employee (0%)
  • Security Clearance Approved (50%)
  • Employee On-boarding Complete (100%)

If the new employee is not given security clearance, the job would roll back or restart at the initial point in the process.

You can also restart a job at an activity within an embedded process when a job state changes.

Note Use the ChangeJobState API to apply the Restart action.

Event action

Use the Event action to associate a business event with a state such that the event action takes place when the state of a job changes and the activity completes.

For example, to have up-to-date real-time reporting, define business events, such as New Customer Accounts, Approved Mortgage Loans in a Banking process, and then use states to record approved mortgage loans.

Use the State event identifier when raising events. The State event identifier identifies and records the state event.

To monitor and extract the information from specific fields of an event, map the event parameters to process variables.

New Job action

Use the New Job action to associate a process with a state. Set the state so that when the state of a job changes, the system spawns the process to perform a certain action. The associated process is completely independent of the main process. The new jobs can be run automatically, depending on requirements.

For example, in a Goods Delivery process, when the state of a parcel order changes from IN TRANSIT to DELIVERED, the system can launch an independent process called Send Customer Invoice.