All functions in the documented version: signatures, purpose and examples.
How to read formulas
Use field("Назва") for a column and param("Назва") for a parameter from an earlier block on the current branch. Fields are evaluated in the specified order; referring to a field that has not yet been calculated causes an error. Normalize numeric text with the number-format block first.
round(number(field("Quantity")) * number(field("Price")), 2)
A formula is limited to 2,048 characters and a maximum expression complexity. Only permitted operations and functions are available; this is not an environment for executing arbitrary code.
Fields
| Function | Purpose | Example |
|---|
field(назва) | The value of a column in the current row. | field("Revenue") |
param(назва) | A parameter from earlier blocks on the current branch only. | param("Rate") |
Numbers
| Function | Purpose | Example |
|---|
number(значення) | Converts a value to a number after the number-format block. | number("12.5") |
abs(число) | Absolute value. | abs(-12) |
round(число,знаків?) | Rounds halfway values away from zero; precision ranges from −15 to 15. | round(12.345, 2) |
min(числа*) | The smallest of the supplied numbers. | min(3, 8, 2) |
max(числа*) | The largest of the supplied numbers. | max(3, 8, 2) |
sum(числа*) | The sum of arguments in the current row. Use grouping to sum across rows. | sum(10, 20, 30) |
average(числа*) | The arithmetic mean of the arguments. | average(10, 20) |
ceil(число) | Rounds toward positive infinity. | ceil(-1.2) |
floor(число) | Rounds toward negative infinity. | floor(-1.2) |
trunc(число,знаків?) | Truncates the fractional part without rounding. | trunc(12.349, 2) |
roundup(число,знаків?) | Rounds away from zero. | roundup(12.341, 2) |
rounddown(число,знаків?) | Rounds toward zero. | rounddown(-12.349, 2) |
sqrt(число) | The square root of a nonnegative number. | sqrt(144) |
power(основа,степінь) | Raises a base to a power (exponent from −1000 to 1000). | power(2, 8) |
mod(число,дільник) | The remainder of division, with the divisor's sign. | mod(-7, 3) |
sign(число) | −1 for a negative number, 0 for zero, 1 for a positive number. | sign(-12) |
log(число,основа?) | Logarithm; the default base is 10. | log(1000, 10) |
exp(число) | The exponential function: e raised to the supplied power. | exp(1) |
clamp(число,мінімум,максимум) | Restricts a number to the specified interval. | clamp(120, 0, 100) |
percent(число,відсоток) | The specified percentage of a number. | percent(200, 15) |
pi() | The number π. | pi() |
Text
| Function | Purpose | Example |
|---|
text(значення) | Converts a value to text. | text(125) |
concat(значення*) | Joins text values. | concat("Plan", "-", 2026) |
upper(текст) | Uppercase. | upper("hello") |
lower(текст) | Lowercase. | lower("HELLO") |
title(текст) | Capitalizes the first letter of each word. | title("hello world") |
trim(текст) | Removes leading and trailing spaces. | trim(" hello ") |
length(текст) | The number of Unicode characters. | length("Київ") |
left(текст,кількість) | The first N characters. | left("abcdef", 3) |
right(текст,кількість) | The last N characters. | right("abcdef", 3) |
mid(текст,позиція,кількість) | A text fragment; the first position is 1. | mid("abcdef", 2, 3) |
replace(текст,старий,новий) | Replaces every occurrence of a substring. | replace("a-b-c", "-", "/") |
find(шукати,текст,позиція?) | Case-sensitive substring position; 0 if not found. | find("b", "abc") |
search(шукати,текст,позиція?) | Case-insensitive substring position; 0 if not found. | search("B", "abc") |
contains(текст,частина) | Whether the text contains a substring. | contains("abcdef", "cd") |
starts_with(текст,початок) | Whether the text starts with the specified substring. | starts_with("ABC", "A") |
ends_with(текст,кінець) | Whether the text ends with the specified substring. | ends_with("ABC", "C") |
clean(текст) | Removes control characters. | clean("A\nB") |
repeat(текст,кількість) | Repeats text up to a limit of 32,768 characters. | repeat("0", 3) |
padleft(текст,довжина,символ?) | Pads on the left with a single character, a space by default. | padleft("42", 5, "0") |
padright(текст,довжина,символ?) | Pads on the right with a single character. | padright("42", 5, "0") |
transliterate(текст) | Deterministic transliteration of Cyrillic/Greek text and removal of Latin diacritics. | transliterate("Київ") |
Dates
| Function | Purpose | Example |
|---|
date(рік,місяць,день) | Creates a valid ISO calendar date. | date(2026, 9, 27) |
today() | The current UTC date, fixed for the entire block. | today() |
now() | The UTC time, fixed for the entire block. | now() |
datevalue(текст,формат?) | Parses a date; ISO by default, or a strptime format. | datevalue("27.09.2026", "%d.%m.%Y") |
formatdate(дата,формат) | Formats a date; %Y is the year, %m the month, %d the day. | formatdate("2026-09-27", "%d.%m.%Y") |
year(дата) | The year of a date. | year("2026-09-27") |
month(дата) | The month of a date, from 1 to 12. | month("2026-09-27") |
day(дата) | The day of the month. | day("2026-09-27") |
hour(датачас) | The UTC hour, from 0 to 23. | hour("2026-09-27T12:30:00Z") |
minute(датачас) | The minute, from 0 to 59. | minute("2026-09-27T12:30:00Z") |
second(датачас) | The second, from 0 to 59. | second("2026-09-27T12:30:05Z") |
weekday(дата) | ISO weekday: Monday is 1, Sunday is 7. | weekday("2026-09-27") |
weeknum(дата) | The ISO week number. | weeknum("2026-09-27") |
adddays(дата,днів) | Adds or subtracts calendar days. | adddays("2026-09-27", 7) |
addmonths(дата,місяців) | Shifts a date by months; the day is capped at the end of the month. | addmonths("2026-01-31", 1) |
datediff(початок,кінець,одиниця?) | Difference in days, months (complete months), years (complete years), hours, minutes or seconds. | datediff("2026-01-01", "2026-02-01", "days") |
eomonth(дата,зсув?) | The last day of the current or shifted month. | eomonth("2026-01-15", 1) |
Conditions
| Function | Purpose | Example |
|---|
coalesce(значення*) | The first value that is neither null nor empty. | coalesce(None, "", 0, 5) |
ifelse(умова,так,ні) | A lazy condition: only the selected branch is evaluated. | ifelse(10 > 5, "yes", "no") |
iferror(вираз,заміна) | Substitutes a fallback for an evaluation error; syntax errors and missing fields are not hidden. | iferror(10 / 0, 0) |
isblank(значення) | Whether a value is null or empty text. | isblank("") |
isnumber(значення) | Whether a value is a number rather than text or a Boolean. | isnumber(12.5) |
istext(значення) | Whether a value is text. | istext("12") |
and_(умови*) | All conditions are true; lazy evaluation. | and_(1 > 0, 2 > 1) |
or_(умови*) | At least one condition is true; lazy evaluation. | or_(False, True) |
not_(умова) | Logical negation. | not_(False) |
Removing text from either end
removeleft(text, count) returns text without its first N characters; removeright(text, count) removes its last N characters. The remaining text is unchanged. For example, removeleft("UA-001", 3) yields 001, and removeright("report.csv", 4) yields report. This differs from left and right, which keep the corresponding fragment.