This node provides an IF switch which selects the active port based on the comparison of a flow variable with a user-entered value. The comparison method can also be selected. It can be considered to be broadly similar in function to the Java Snippet IF Switch node in the core KNIME implementation.
If numeric variables (double or integer types) are selected, the node will attempt to process the user-entered value as a number. If this cannot be done, then the node will not be executable. An empty string will not be interpreted as a numeric value. Note that integers can not be compared with values where a '.' is present, so '1.0' cannot be interpreted, but '1' can.
For doubles, a threshold is specified in the dialogue. If the variable is within this threshold of the comparison value it will be considered to be equal to it (Applies to =, !=, >= and <= comparisons).
String comparisons are ' lexicographical ' - i.e. the sorting order mirrors that in which the strings would be expected to appear in a dictionary.
If the comparison is considered to be 'true', then the top port will be active, otherwise the bottom port will be active
NOTE - Due to the way in which flow variables are handled within KNIME, no matter which the active branch, the flow variable values for any existing flow variables beyond the corresponding "end" node will be those at the top-most port of the "end" node. New variables created in any active branch will retain their correct values. If you need to change the value of existing variables, please either use a new flow variable, or use a variable to tablerow node before a conventional End IF node.
This node was developed by Vernalis Research . For feedback and more information, please contact knime@vernalis.com