Operators
Both conditions and filters use operators to compare data. Appfarm supports many different operators depending on the data type of the values you are comparing.
You can use comparison operators to check for equality or difference between two values. Logical operators check for the presence or absence of a value. To search for the presence of text in a value, string operators are available.
As an example, if you were to filter a data source on all active Projects, you would construct the filter Projects.Status EQUALS Active
. EQUALS
is the operator, Projects.State
is the left operand and Active
is the right operand.
Comparison operators
Equals
Check if two values match. Both values must be of the same data type.
Not equals
Check if two values do not match. Both values must be of the same data type.
<
Available for Integer, Float, and Datetime data types. Check if a value is less than another.
<=
Available for Integer, Float, and Datetime data types. Check if a value is less than or equal to another.
>
Available for Integer, Float, and Datetime data types. Check if a value is greater than another.
>=
Available for Integer, Float, and Datetime data types. Check if a value is less than or equal to another.
Warning
Properties with a Boolean data type can be undefined which is neither true nor false. Typically you should use Not equals true
when comparing boolean values instead of Equals false
to ensure you capture these values.
Logical operators
Is any of
Check for the presence of a value in another data source or static value. Both values must be of the same data type. It can also be used to check against enum values, for example Project.Status IS ANY OF New, Started
.
Is none of
Check for the absence of a value in another data source or static value. Both values must be of the same data type. It can also be used to check against enum values, for example Project.Status IS NONE OF Completed, Archived
.
Exists in
Available for Reference data type. Check for the presence of an object in another data source. The data source can be restricted to selected objects, not selected objects, or a filtered selection.
Not exists in
Available for Reference data type. Check for the absence of an object in another data source. The data source can be restricted to selected objects, not selected objects, or a filtered selection.
Has all of
Available for Reference data type with cardinality Many. Check if all of the IDs of the left operand are present in the data source of the right operand. In this case, the left operand is a multi-reference property, containing a list of IDs (references).
Has some of
Available for Reference data type with cardinality Many. Check if some of the IDs of the left operand are present in the data source of the right operand. In this case, the left operand is a multi-reference property, containing a list of IDs (references).
Has none of
Available for Reference data type with cardinality Many. Check if none of the IDs of the left operand are present in the data source of the right operand. In this case, the left operand is a multi-reference property, containing a list of IDs (references).
Has value
Check for the presence of a value, and that the property is not empty or set to null.
Has no value
Check for the absence of a value, such as when the property is empty or set to null.
String operators
When the left operand has a data type of String, the string operators are made available, and you can compare the value against another string. Note that these operators are not available when constructing filters in data sources. They are only available when constructing client-side conditions and filters in the UI or actions.
All string operators are case insensitive.
Example
To help describe how these operators work, we'll use the example of a data source filter. The data source has a property name (left operand), and we want to compare the value of that property with the text big blue button (right operand). The Results column in the table below describes what would be returned from the filter when using a given operator.
Contains
Objects whose name property contains the exact phrase big blue button.
Contains all
Objects whose name property contains all three words big, blue, and button, including as part of larger words.
Contains all words
Objects whose name property contains all three standalone words big, blue, and button.
Contains any
Objects whose name property contains at least one of the three words big, blue, or button, including as part of larger words.
Not contains
Objects whose name property does not contain the exact phrase big blue button.
Not contains all
Objects whose name property does not contain all three words big, blue, and button, including as part of larger words.
Not contains all words
Objects whose name property does not contain all three standalone words big, blue, and button.
Not contains any
Objects whose name property does not contain any of the three words big, blue, or button, including as part of larger words.
Last updated