Skip to content

Dynamic row lookup

This page explains what happens when the RowLookup argument of one of the following functions is set to "dynamicRowLookup" (or omitted, since that is the default):

Here is an example config table, which we will use to explain dynamic row lookups:

Var1|Var2|Var3 Column1 Column2
A|1|9 Cell1 Cell9
B|1|9 Cell2 Cell10
A|2|9 Cell3 Cell11
B|2|9 Cell4 Cell12
A|1|8 Cell5 Cell13
B|1|8 Cell6 Cell14
A|2|8 Cell7 Cell15
B|2|8 Cell8 Cell16

When using dynamic row lookups, the first (left-most) column of the table is treated as a predicate column.

The top cell in the predicate column contains a pipe-separated list of variable names, e.g.: Var1|Var2|Var3. These variable names may refer to hierarchy node properties, or anything else that is available in the projection node's namespace.

The rows of the predicate column are the expected values of the list of variables, also concatenated using pipes.

When a dynamic row lookup is performed in a projection node having Var1="A" and Var2=1 and Var3=9, the row having A|1|9 in the predicate column is selected.

If the projection node had Var1="C", the dynamic row lookup would fail, since there is no row having C|1|9 in the predicate column.