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.