Operation | Token | Arguments | Data Type | Example | Comments |
---|---|---|---|---|---|
Maths Operators (more) | |||||
Add | + | numeric, numeric< | numeric | Age + 10 | |
Subtract | - | numeric, numeric | numeric | Age - Manager.Age | |
Multiply | * | numeric, numeric | numeric | Cost * Quantity | |
Divide | / | numeric, numeric | numeric | Cost / Quantity | Result is always a decimal. |
Modulo | % | int, int | int | 10 % 7 (result is 3) | Remainder of integer division. See details. |
Negate | - | numeric | numeric | -Age | |
String Operators (more) | |||||
Concatenate | + | string, string | string | Title + ' ' + [Last Name] | Joins multiple strings together. |
Logic Operators (more) | |||||
Not | not | bool | bool | not [Is approver] | 'not' has a higher precedence than 'and' |
And | and | bool, bool | bool | Cost < 1000 and Quantity < 10 | 'and' has a higher precedence than 'or'. |
Or | or | bool, bool | bool | Cost >= 1000 or Quantity >= 10 | |
Comparison Operators (more) | |||||
Less than | < | comparable, comparable | bool | Cost < 1000 | |
Less than or equal | <= | comparable, comparable | bool | Cost <= 1000 | |
Greater than | > | comparable, comparable | bool | Name > 'M' | |
Greater than or equal | >= | comparable, comparable | bool | Cost >= 1000 | |
Equal | = | equatable, equatable | bool | Name = 'Peter Smith' | |
Not equal | <> | equatable, equatable | bool | Name <> 'Peter Smith' | |
Like | like | string, string | bool | Name like 'Peter%' | Supports % wildcards at either end. |
Not Like | not like | string, string | bool | Name not like 'Peter%' | Supports % wildcards at either end. |
Is Null | is null | resource | bool | Department is null | Returns true if a resource/relationship is not set |
Membership | in | comparable, comparable | bool | [Project].[Tasks] in ('Document','Test') | The search and option expressions can be scalar values, choice field values, or records. |
List Operators (Where, Order By) | |||||
Where | where | entity list, bool | entity list | [Direct Reports] where Name='Peter Smith' | Applies a condition (bool) |
Order by | order by | entity list, comparable | entity list | [Direct Reports] order by Name | Note: Currently only a single ascending order can be applied. Note: not supported for reports. |
Notes on types:
- Numeric types: number (int), decimal, currency, percent
- Comparable types: All numeric types and date, time, date time, string
- Equatable types: All comparable types and yes/no (bool), GUID