This function is used by Ignition's Expression language.

Description

This looks for lookupValue in the lookupColumn of dataset. If it finds a match, it will return the value from the resultColumn on the same row as the match. If no match is found, noMatchValue is returned.


Note: The type of the value returned will always be coerced to be the same type as the noMatchValue.
 

Syntax

lookup(dataset, lookupValue, noMatchValue, [lookupColumn], [resultColumn])

  • Parameters

DataSet dataset - A dataset to search through.

Object lookupValue - The value to look for.

Object noMatchValue - The result value if no match.

Object lookupColumn - The column to lookup. Can either be the column index or the name of the column. Defaults to 0. [optional]

Object resultColumn - The column to pull the result value from. Can either be the column index or the name of the column. Defaults to 1. [optional]

  • Results

Object - The value in the result column of the same row that the lookupValue was found, or the noMatchValue if a match was not found. The data type of this object will always be coerced to match the type of the noMatchValue parameter. 

Examples

The examples are based of a table that has the following data in it:

ProductPriceCategory
"Apples"1.99"Fruit"
"Carrots3.5"Vegetable"
"Walnuts"6.25"Nut"
Code Snippet
lookup({Root Container.Table.data}, "Carrots", -1.0) //Returns 3.50.
Code Snippet
lookup({Root Container.Table.data}, "Grapefruit", -1) //Returns -1, the noMatchValue.
Code Snippet
lookup({Root Container.Table.data}, "Walnuts", "Unknown", 0, "Category") //Returns "Nut".
Code Snippet
lookup({Root Container.Table.data}, "Pecans", "Unknown", 0, 2) //Returns "Unknown", the noMatchValue.
  • No labels