The Grid Iterator orchestration component implements a loop over the rows of a grid variable. This runs an attached component multiple times, each time using a different row of values from the grid. To attach the iterator to another component, use the connection ring beneath the iterator to connect to the input of the other component. The two components will automatically “snap” together, with the iterator component sitting on top of the other component, and can be dragged around the canvas as a single component. For more information about attaching, stacking, and detaching iterators, read Attaching, stacking, and detaching iterators. If you need to iterate more than one component, put them into a separate orchestration pipeline or transformation pipeline and use a Run Transformation or Run Orchestration component attached to the iterator. In this way, you can run an entire pipeline flow multiple times, once for each row of variable values. This iterator component is limited to a maximum of 5000 iterations.Documentation Index
Fetch the complete documentation index at: https://docs.maia.ai/llms.txt
Use this file to discover all available pages before exploring further.
Properties
A human-readable name for the component.
Choose an existing grid variable to iterate.
- Grid Column Name: Enter the grid column name.
- Variable Name: Choose an existing variable.
If a failure occurs during any iteration, the failure link is followed. This parameter controls whether it’s followed immediately or after all iterations have been attempted.
- No: Attempt to run the attached component for each iteration, regardless of success or failure. This is the default setting.
- Yes: If the attached component doesn’t run successfully, fail immediately.
- Concurrent: Iterations run concurrently.
- Sequential: Iterations run in sequence, waiting for each to complete before starting the next. This is the default setting.
Select Yes to stop the iteration based on a condition specified in the Condition property. The default setting is No.For this property to be available, set Concurrency to Sequential.
Click the gear icon to open the Condition dialog. Use + and - to add or remove conditions. Each condition has the following columns:Input Variable: An input variable to form a condition around.Qualifier: Select whether the condition should be applied (Is, the default) or reversed (Not).Comparator: Select from:
- Less than: Value of the input variable must be less than the specified value.
- Less than or equal to: Value of the input variable must be less than or equal to the specified value.
- Equal to: Value of the input variable must be equal to the specified value.
- Greater than or equal to: Value of the input variable must be greater than or equal to the specified value.
- Greater than: Value of the input variable must be greater than the specified value.
- Blank: Checks whether the input variable is empty.
When multiple conditions are present, they can be separated by And or Or.
- And: All the conditions must be true.
- Or: Any of the conditions must be true.
Counting the number of iterations
You can define a pipeline variable to hold the number of rows the iterator will loop through.- In your orchestration pipeline, create a numeric pipeline variable.
- Use an Update Scalar component to set the variable to
${<grid_variable_name>.<column_name>.length}, where<grid_variable_name>is the name of the grid variable your iterator uses and<column_name>is any column in that grid.
length property returns the number of items in the column, which equals the number of iterations. Any column can be used, as all columns in a grid variable are the same length.