EzeScan WebApps

Placeholders

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

C#
{{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 its trueOutput or falseOutputThink 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 ("")