Configuration
-
Decide by — Rule: a one-line text rule computes the value
(
salary_amount * worked_days / days(period)); names resolve to the subject’s attributes first, then to flow assigns. Inner engine: the graph below. - Rule — the text rule, when deciding by rule. See Expressions for the full language.
- Output assign (required for execution) — name of the flow-token assign that receives the computed value. Downstream flow nodes read it like any other assign. The save changeset doesn’t enforce it so a flow mid-authoring can still be persisted; at run time, an unset value is a no-op (no assign is written).
-
Subject assign (optional) — assigns key whose value becomes the
subject for Attribute nodes inside the inner graph. Lets you read dated
properties directly without an Assign Read wrapper. The referenced value
must be a defdata struct (e.g.
%Employee{}) or any struct carrying a%DatedProperties{}bag. -
Unwrap dated property (default on) — data nodes inside the inner
graph produce dated properties. On, a single one is written to the output
assign as its bare value, which is what most flow nodes and steps expect.
Off, it is written exactly as it arrived, wrapper and all, so its
valid-from date survives for a Flow Dated Property Put or a rule’s
@. A history with several entries is kept whole either way. Assign Put has the same switch, so the two ways of landing a value in an assign agree. -
On inner error — what happens when the inner graph fails to evaluate
(a node inside it crashed or errored):
- Halt flow (default): fail the whole run.
- Skip branch: stop only this path — parallel branches and the next Flow Each iteration keep going. Nothing is written to the output assign.
- Set nil: write
nilto the output assign and carry on, treating a failed computation as an empty value.
:error, and a tolerated error still marks the run completed with issues — it’s visible in the run log and the run status, it just doesn’t abort.
When to reach for it
- To compute something from several assigns without cluttering the outer flow with control-flow nodes.
- To build a boolean predicate that feeds into Flow Switch.