Loop End (Column Append)

Node at the end of a loop, collecting the intermediate results by joining the tables on their RowIDs. In each iteration the node will join the current input table with the previous result. The join is based on the RowID on the incoming tables.

The typical use case of this node is that you calculate a set of new columns in the loop body and then feed only the newly created columns to this loop end node. It will join all intermediate results (the results from each iteration) using a join operation (full outer join on the RowID column). It is strongly recommended that you filter the original input data from the input as it will otherwise occur multiple times in the joined output. Use a Joiner node following this loop end node in order to join the result with the original input data (the data provided to the loop start node).

Options

Loop has same RowIDs in each iteration
Check this box if the tables in each iteration have the same number of rows and the same row ordering. If this option is selected, the node does not use an expensive join (requires table sorting) but only puts tables side-by-side. This option does not have any influence on the output table. If the tables do not have the same RowIDs and this option is selected, the node will fail during execution.
Propagate modified loop variables
If checked, variables whose values are modified within the loop are exported by this node. These variables must be declared outside the loop, i.e. injected into the loop from a side-branch or be available upstream of the corresponding loop start node. For the latter, any modification of a variable is passed back to the start node in subsequent iterations (e.g. moving sum calculation). Note that variables defined by the loop start node itself are excluded as these usually represent loop controls (e.g. "currentIteration").

Input Ports

Icon
Any datatable

Output Ports

Icon
Collected results from the loop body

Popular Successors

Views

This node has no views

Workflows

Links

Developers

You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.