About Chain Definitions

A Chain Definition is a way to group Process Definitions and control the order in which they execute.

A Chain Definition consists of a series of Steps. Each Step can contain one or more Chain Processes, which make calls to Process Definitions or other Chain Definitions. Steps are executed one after the other, but Process Definitions within a Step are all executed at the same time.

If a process in a Step reaches an error state, the Step is also put into an error state. By default, a Chain aborts if one of its Steps reaches an error state, but you can override this behavior with Status Handlers.

To view available Chain Definitions, navigate to Definitions > Chains.

To see the steps that make up a Chain Definition, click the expander arrow to the left of the Chain Definition name. This will display all of the chain's Steps. You can also expand Steps to see the Chain Processes and sub-Chains they contain. When you select a Chain, Step, or Chain Process, details about the selected item display in the Detail View.

To execute a Chain Definition, use the Submit Wizard.

Warning: If you add a Process Definition to a Chain, and then select it in the Chain Editor, you can use the Parameters tab at the top to add Parameters, delete Parameters, and change the configuration of existing Parameters. However, if you do so, those changes are written back to the Process Definition, not just the instance in the Chain. This can lead to unexpected behavior when the Process Definition is run elsewhere (on its own or in other Chains).

Note: Process Definitions executed by Chains are still subject to routing using Queues and resources and the limitations applied by Queue limits and locks.

Note: In RedwoodScript, a Chain Definition is a JobDefinition of type JOBCHAIN.

For more information, see Working with Chain Definitions.