Fields
{{fields["field_id_here"]}}
Current User
{{user["email"]}}
{{user["username"]}}
Date/Time
{{date}}
{{time}}
Methods
|
Name |
Usage Syntax |
Input |
Result |
|---|---|---|---|
|
Format |
format("%{0}%") |
Cat |
%Cat% |
|
Split |
split("|",2) |
Cat|Dog |
Dog |
|
ToLower |
toLower() |
Cat |
cat |
|
ToUpper |
toUpper() |
Cat |
CAT |
|
TrimWhiteSpace |
trim() |
Cat |
Cat |
|
AsFinanaicalYear |
asFinancialYear("dd/MM") - Where dd/MM is the day/month that the financial year starts on. eg Australia would be 01/07 |
01/04/2018 |
2017-2018 |
|
AsFinanaicalYear |
asFinancialYear("dd/MM", "dd/MM/yyyy") Where dd/MM is the day/month that the financial year starts on. eg Australia would be 01/07 Where dd/MM/yyyy is the date formatting of the input date (defaults to the culture of the IIS server). eg Australia would be "dd/MM/yyyy". USA would be "MM/dd/yyyy" |
01/04/2018 |
2017-2018 |
|
Exists |
exists() |
Value |
true |
|
Starts With |
startsWith("Fri") |
Friday |
true |
|
Ends With |
endsWith("ay") |
Saturday |
true |
|
Contains |
contains("ver") |
Conversion |
true |
|
Matches (regex) |
matches("[0-9]2") |
abc123IAM |
true |
|
Date field output conversion |
Convert the date output format to YYYYMMDD {{fields["date_field"] | asDate() | format("{0:yyyyMMdd}")}} |
12/02/2021 |
20210221 |
{fields["field_id_here"]|method1|method2}}
Note: Methods can be chained together and are run sequentially.
Example usage syntax:
{{fields["field_id_here"]|split(",",2)}}
This would get the value of the field with id "field_id_here", split on the comma and then return the 2nd value.
{{fields["field_id_here"]|split("|",2)|trim()}}
This would get the value of the field with id "field_id_here", split on the pipe and then return the 2nd value.
Then it would trim all leading and trailing white space.
{{fields["financial_date_id"]|asFinancialYear("01/07")}}
This would get the value of the field with id ""field_id_here", and convert it to a human readable financial year.
{{fields["field_id_here"]|exists()|condition("yes", "no")}}
This would get the value of the field with id "field_id_here".
Then if it has a value it would return the text "yes" otherwise it would return "no".
{{fields["field_id_here"]|contains("ver")|condition("TrueValue", "FalseValue")}}
This would get the value of the field with id "field_id_here".
Then if it's value contains "ver" it returns "TrueValue" otherwise it would return "FalseValue".
Complex Methods
{{fields["workflow"] | exists() | condition(format("{0} || uA1 || new workflow", fields["workflow"]), "")}}
Reading left to right;
-
Start with
fields["workflow"]as our input -
|delimits operations in the filter chain, and is very similar to bash shells and how they pipe outputsWhen a pipe exists, everything on the left side is evaluated, and passed into the right side as inputThey respect parentheses, and will be ignored if nested in quotes -
exists()will see whether the input value (fields["workflow"]) is empty, null, or whitespace, and return true/false -
condition(trueOutput,falseOutput)will take a boolean input, and return either itstrueOutputorfalseOutputThink of it as an if statementWhen true the first argument is evaluated,format(text, values[]) leverages the standard .net string format, and can use placeholders matched to the input indices, starting from 0When false then the second argument is evaluated, which is an empty string ("")