Skip to main content

Flowon Expression Language

The Flowon Expression Language is a comprehensive library of functions and operators used to write expressions in Flowon Logic. Expressions are used throughout Flowon Logic constructs—in Formulas, Decision Tables, Decision Trees, Validations, Flow steps, and anywhere calculations, comparisons, or transformations are needed.

Function Explorer

Search and filter all 85 built-in functions across 10 categories. Click any category tile to explore its functions and jump directly to full documentation.

ConcatenateStringJoin multiple strings together
FormatStringReplace placeholders with values
ReplaceStringReplace all occurrences of a substring
SubstringStringExtract part of a string by position
To Lower CaseStringConvert text to lowercase
To Upper CaseStringConvert text to uppercase
TrimStringRemove leading/trailing whitespace
Index OfStringFind first position of a substring
Last Index OfStringFind last position of a substring
String LengthStringGet number of characters in a string
Match PatternStringTest a string against a regex pattern
To StringStringConvert a value to a formatted string
Configuration ValueStringRead a configuration variable by key
Localized ResourceStringGet a localized string resource
AddMathSum two or more numeric values
SubtractMathSubtract values
MultiplyMathMultiply values together
DivideMathDivide one value by another
ModuloMathGet the remainder after division
Raise to PowerMathRaise a number to an exponent
Max ValueMathReturn the largest of given values
Min ValueMathReturn the smallest of given values
RandomMathGenerate a random integer in a range
NowDateReturn the current date and timestamp
DayDateExtract the day-of-month component
MonthDateExtract the month component
YearDateExtract the year component
Day Of WeekDateGet the day of the week (0–6)
Add DaysDateAdd or subtract days from a date
Add HoursDateAdd or subtract hours from a date
Add MinutesDateAdd or subtract minutes from a date
Add SecondsDateAdd or subtract seconds from a date
Add MonthDateAdd or subtract months from a date
Add YearsDateAdd or subtract years from a date
Days DiffDateDifference between two dates in days
Hours DiffDateDifference between two dates in hours
Minutes DiffDateDifference between two dates in minutes
Months DiffDateDifference between two dates in months
Years DiffDateDifference between two dates in years
Start Of DayDateReturn midnight of the given date
Start Of HourDateReturn the beginning of the given hour
Start Of MonthDateReturn the first day of the given month
TicksDateRepresent a timestamp as ticks
Parse DateTimeDateParse a string into a date/time value
Convert From UTCDateConvert a UTC time to local time
Convert To UTCDateConvert local time to UTC
AndLogicalCombine conditions with logical AND
OrLogicalCombine conditions with logical OR
Is Equal ToComparisonCheck if two values are equal
Is Not Equal ToComparisonCheck if two values are not equal
Is Greater ThanComparisonCheck if a value exceeds another
Is Greater Than Or Equal ToComparisonCheck if a value is ≥ another
Is Less ThanComparisonCheck if a value is below another
Is Less Than Or Equal ToComparisonCheck if a value is ≤ another
ContainsComparisonCheck if a string contains a substring
Does Not ContainComparisonCheck if a string lacks a substring
Starts WithComparisonCheck if a string starts with a prefix
Does Not Start WithComparisonNegative starts-with check
Ends WithComparisonCheck if a string ends with a suffix
Does Not End WithComparisonNegative ends-with check
Contains ItemComparisonCheck if a list contains a specific item
Does Not Contain ItemComparisonCheck if a list lacks a specific item
NullNull CheckCheck if a value is null
Not NullNull CheckCheck if a value is not null
Null Or Empty StringNull CheckCheck if a value is null or empty string
Not Null Or Empty StringNull CheckCheck if a value is non-null and non-empty
Is TrueNull CheckCheck if a boolean value is true
Is FalseNull CheckCheck if a boolean value is false
AnyNull CheckCheck if any value in a list is truthy
CountCollectionCount items in a collection
SumCollectionSum numeric values in a collection
AverageCollectionCalculate the average of a collection
MaxCollectionReturn the maximum value in a collection
MinCollectionReturn the minimum value in a collection
If ConditionControlConditional expression (if / else)
StringConstantsString literal constant
IntegerConstantsInteger literal constant
DecimalConstantsDecimal literal constant
FloatConstantsFloat literal constant
MoneyConstantsMoney / currency literal constant
BooleanConstantsBoolean literal constant
DateConstantsDate literal constant
DateTimeConstantsDateTime literal constant
Entity ReferenceConstantsEntity reference literal constant
Run Logic BlockLogic BlockExecute a reusable logic block

Type System

The Expression Language uses the Dynamics 365 type system. Understanding types is essential for writing correct expressions.

Supported Types

TypeDescriptionExample Values
stringText value"Hello", "Order-12345"
integerWhole number42, -100, 0
decimalPrecise decimal number3.14159, 0.001
floatFloating-point number2.71828, 1.5e10
moneyCurrency value$1,500.00, €2,340.50
booleanTrue or falsetrue, false
date / datetimeDate and time2026-01-15T14:30:00Z
entityReferenceReference to a recordLookup to Account, Contact, etc.
optionSetChoice from a listStatus: Active, Inactive
listCollection of valuesList of integers, list of strings

Type Promotion

When mixing numeric types in calculations, the result type is promoted to the "highest weight" type:

Type Weight Order (lowest to highest): integerfloatdecimalmoney

For example:

  • integer + integerinteger
  • integer + decimaldecimal
  • float + moneymoney