Skip to main content

Reference Guide: Functions Supported by Way We Do Forms & Registers

View a list of Functions supported by Way We Do

Written by Jacqui Jones

Welcome to the master reference guide for all functions available in Way We Do Forms & Registers. Functions are pre-built commands that act as shortcuts for complex calculations, text formatting, and logical rules.

Whether you need to calculate a financial total, automatically generate a due date, or format user inputs, you can find the right function below.

How to read this guide:

  • Categories: We have organized the functions into four main groups to help you find what you need quickly: Math & Number, Logic & Error Handling, Text & String, and Dates, Times & Records.

  • Signatures: This column shows you exactly how the function needs to be typed, including the specific type of data (number, string, boolean) it requires inside the parentheses.

  • Field Referencing: In the examples column, you will notice the $ symbol. This is the Field Reference Symbol, which tells the system to pull live data from that specific field in your form (e.g., $Total Cost).

Math & Number Functions

These functions are essential for performing calculations on your numerical data, ranging from basic arithmetic and financial rounding to advanced statistical equations.

Function

Signature

Description

Purpose

Example

Abs

Abs(input:number)

Absolute value of a number.

Getting a positive number regardless of input sign (e.g., calculating distance or variance).

Abs($Offset Value)

Acos

Acos(input:number)

Angle whose cosine is a number.

Advanced trigonometry calculations.

Acos($Angle Value)

Asin

Asin(input:number)

Angle whose sine is a number.

Advanced trigonometry calculations.

Asin($Angle Value)

Atan

Atan(input:number)

Angle whose tangent is a number (-90 to 90 degrees).

Advanced trigonometry calculations.

Atan($Angle Value)

Atan2

Atan2(input:number)

Angle whose tangent is the quotient of two numbers (-180 to 180 degrees).

Advanced trigonometry and coordinate calculations.

Atan2($Y Value, $X Value)

Average

Average(value:number, [value:number]...)

The average of all the numbers.

Finding the mean value across multiple numerical fields.

Average($Score 1, $Score 2, $Score 3)

Ceiling

Ceiling(input:number)

Smallest integer greater than or equal to a number.

Rounding up to the next whole number (e.g., calculating required materials).

Ceiling($Required Material)

Cos

Cos(input:number)

Cosine of an angle.

Advanced trigonometry calculations.

Cos($Angle Value)

Exp

Exp(input:number)

E raised to a power.

Calculating exponential growth or decay.

Exp($Growth Rate)

Floor

Floor(input:number)

Largest integer less than or equal to a number.

Rounding down to the previous whole number.

Floor($Available Units)

IEEERemainder

IEEERemainder(input:number, divisor:number)

Remainder resulting from the division of a number by another number.

Finding what is left over after dividing two amounts.

IEEERemainder($Total Items, $Pack Size)

Ln

Ln(input:number)

Natural logarithm of a number.

Scientific and statistical calculations.

Ln($Value)

Log

Log(input:number, base:number)

Logarithm of a specified number.

Scientific and statistical calculations.

Log($Value, 2)

Log10

Log10(input:number)

Base 10 logarithm of a number.

Scientific and statistical calculations.

Log10($Value)

Max

Max(value:number, [value:number]...)

The largest of all the numbers.

Finding the highest value in a given set.

Max($Quote 1, $Quote 2, $Quote 3)

Min

Min(value:number, [value:number]...)

The smallest of all the numbers.

Finding the lowest value in a given set.

Min($Quote 1, $Quote 2, $Quote 3)

Number

Number(input:any)

Converts a value to a number.

Forcing a text string to act as a numerical value for math equations.

Number($String Amount)

Pow

Pow(input:number, power:number)

A number raised to a power.

Squaring or cubing numbers.

Pow($Side Length, 2)

Round

Round(input:number, decimals:number)

Rounds a number to the nearest integer or number of decimal places.

Standard financial or measurement rounding.

Round($Total Cost, 2)

Sign

Sign(input:number)

Indicates the sign of a number.

Determining if a number is positive (1), negative (-1), or zero (0).

Sign($Profit)

Sin

Sin(input:number)

Sine of an angle.

Advanced trigonometry calculations.

Sin($Angle Value)

Sqrt

Sqrt(input:number)

Square root of a number.

Geometric and statistical calculations.

Sqrt($Area)

Sum

Sum(value:number, [value:number]...)

The sum of all the numbers.

Quickly adding up multiple fields without using the + operator.

Sum($Subtotal, $Tax, $Shipping)

Tan

Tan(input:number)

Tangent of an angle.

Advanced trigonometry calculations.

Tan($Angle Value)

Truncate

Truncate(input:number)

Integral part of a number.

Removing decimals entirely without rounding up or down.

Truncate($Weight)

Logic & Error Handling Functions

Use these functions to build dynamic rules into your forms, allowing you to create conditional outputs (like Pass/Fail statuses) and safely manage errors or empty fields.

Function

Signature

Description

Purpose

Example

Blank

Blank()

Produces a blank value.

Intentionally leaving a field empty based on a condition.

If($Score < 0, Blank(), $Score)

If

If(condition:boolean, true:any, false:any)

Evaluates a condition and returns the true parameter or the false parameter.

Creating basic branching logic (e.g., Pass/Fail).

If($Score > 50, "Pass", "Fail")

IfBlank

IfBlank(input:any, true:any, [false:any])

If input is blank, returns true parameter, otherwise returns false (or original input).

Providing a default value if the user leaves a field empty.

IfBlank($Discount, 0, $Discount)

IfError

IfError(input:any, [true:any], [false:any])

If input is an error, returns true parameter, otherwise returns false (or original input).

Hiding ugly calculation errors (like dividing by zero).

IfError($Cost / $People, 0)

Ifs

Ifs([condition:boolean, true:any]..., default:any)

Evaluates a series of conditions and returns the true parameter, or default if none are true.

Setting up tiered rules, like grading or status levels.

Ifs($Score > 90, "A", $Score > 80, "B", "C")

In

In(input:any, [values:any]...)

Indicates if the input value matches any of the other values.

Checking if a field matches an approved list of items.

In($Status, "Open", "Pending")

IsBlank

IsBlank(input:any)

Indicates if a value is blank.

Checking if a user skipped a field.

IsBlank($Phone Number)

Text & String Manipulation Functions

These functions allow you to clean, format, and extract specific pieces of information from text fields so your data remains standardized and readable.

Function

Signature

Description

Purpose

Example

Contains

Contains(input:string, pattern:string)

Indicates if a string is contained within another string.

Checking if a specific word exists within a sentence.

Contains($Feedback, "excellent")

EndsWith

EndsWith(input:string, pattern:string)

Indicates if a string ends with another string.

Validating suffixes (like checking an email domain).

EndsWith($Email, "@company.com")

EscapeLike

EscapeLike(input:string)

Escapes %, _, and \ so a value is matched literally in a LIKE pattern.

Safely querying databases or validating specific characters.

EscapeLike($Search Term)

Format

Format(format:string, [value:any]...)

Formats a string by replacing format items with string representations of other parameters.

Building clean text sentences by injecting variables.

Format("User {0} logged in", $User Name)

Humanize

Humanize(input:string)

Formats a string into a more human readable format.

Making system-generated codes or IDs look natural.

Humanize($System Code)

IndexOf

IndexOf(input:string, pattern:string)

Finds the first index of a string within another string.

Locating the exact position of a character.

IndexOf($Email, "@")

LastIndexOf

LastIndexOf(input:string, pattern:string)

Finds the last index of a string within another string.

Locating the final occurrence of a character.

LastIndexOf($File Path, "/")

Length

Length(input:string)

The length of a string.

Validating character limits (e.g., ensuring a ZIP code is 5 digits).

Length($Zip Code)

RegexGetMatch

RegexGetMatch(input:string, pattern:string, [group:number])

Attempts regex match and returns specified group if found.

Extracting complex data structures from a text field.

RegexGetMatch($Raw Data, "\d{4}")

RegexIsMatch

RegexIsMatch(input:string, pattern:string)

Attempts regex match and indicates if found.

Advanced pattern validation (e.g., ensuring a valid email format).

RegexIsMatch($Email, "^\\S+@\\S+\\.\\S+$")

RegexReplace

RegexReplace(input:string, pattern:string, replace:string)

Attempts regex match and replaces all matches.

Advanced find-and-replace using complex patterns.

RegexReplace($Text, "\s+", " ")

Replace

Replace(input:string, pattern:string, replace:string)

Replaces a string within another string.

Swapping out specific words or characters.

Replace($Phone, "-", "")

StartsWith

StartsWith(input:string, pattern:string)

Indicates if a string starts with another string.

Validating prefixes (like country codes on phone numbers).

StartsWith($Phone, "+1")

Substring

Substring(input:string, start:number, end:number)

Extracts a substring from a string.

Pulling out a specific segment of an ID or code.

Substring($ID Code, 1, 4)

ToLower

ToLower(input:string)

Converts a string to lower case.

Standardizing text formatting.

ToLower($Email Address)

ToTitleCase

ToTitleCase(input:string)

Capitalizes the first letter of each word.

Formatting user names or company names properly.

ToTitleCase($First Name)

ToUpper

ToUpper(input:string)

Converts a string to upper case.

Standardizing codes and acronyms.

ToUpper($State Code)

Dates, Times & Record Functions

Perfect for managing schedules and workflows, these functions let you automatically calculate deadlines, compare timeframes, and timestamp when records are created or updated.

Function

Signature

Description

Purpose

Example

Counter

Counter()

Returns a unique, incrementing number for each record created per form.

Generating unique identifiers, invoice numbers, or ticket IDs.

Format("TKT-{0}", Counter())

DateAdd

DateAdd(input:datetime, quantity:number, unit:dateunit)

Adds a quantity of date units (days, weeks, etc.) to a date/time.

Calculating deadlines, follow-ups, or expiration dates.

DateAdd($Start Date, 30, "days")

DateIsAfter

DateIsAfter(input:datetime, compare:datetime)

Indicates if the first date is later than the second date.

Checking if a project or submission is overdue.

DateIsAfter($Submission Date, $Due Date)

DateIsBefore

DateIsBefore(input:datetime, compare:datetime)

Indicates if the first date is earlier than the second date.

Checking if a deadline was met early.

DateIsBefore($Submission Date, $Due Date)

RecordCompleted

RecordCompleted()

The date/time the current record was completed (submitted).

Automatically timestamping when a form was finalized.

RecordCompleted()

RecordCreated

RecordCreated()

The date/time the current record was created.

Automatically timestamping when a form was started.

RecordCreated()

RecordUpdated

RecordUpdated()

The date/time the current record was last updated.

Automatically timestamping the last edit made to a form.

RecordUpdated()

Did this answer your question?