Skip to main content
Introduction to Inclusive Decision

Process development

Ossi Galkin avatar
Written by Ossi Galkin
Updated over 7 months ago

Inclusive Decision

An Inclusive Decision is a conditional gateway and is used when there are multiple execution paths that can be taken. The Inclusive Decision does not contain an expression, instead every outgoing conditional branch contains it's own expression that has to evaluate to true in order for the path to be taken. This is similar to "switch statement without breaks" in some programming languages and paradigms. This also means that all branch expressions that evaluate to true, will be executed. If no branch expression evaluate to true, the execution jumps to the step where all branches connect.

All branches of an Inclusive Decision Element must join at the same Element. It's not possible to return within an Inclusive Decision branch.

The return value of an Inclusive Decision is a dictionary containing the name of branches taken, and the last return value of the branch.

The order in which the Inclusive Decision branches are executed can not be guaranteed. In case one branch depends on the work of another branch, then that work should be done prior to the Inclusive Decision.

Default branch

The Inclusive Decision Element has the option of a Default branch, just like the Exclusive Decision Element. The default branch does not contain an expression, it is always executed. There can only be one Default branch per Inclusive Decision Element.

The Default branch is toggled in the UI if needed.

Inclusive Condition branch

The other branches are executed if evaluated as true.

Example of usage

The Inclusive Decision above could have conditional branches looking for values "foo", "bar" and "foobar" accordingly. If a conditional branch evaluated an expression with value "foo" to be true, the Process would proceed to do Task do foo and so on.

If, in addition to the functionality above, the "foobar" conditional branch would be set as Default branch, the same Process would end up executing the Tasks do foo and do foobar.

The next article is Introduction to Foreach

Did this answer your question?