Дополнительные функции в схемах автоматизации
Содержание раздела:
|
В данном разделе при описании функций приняты следующие обозначения:
|
Функции для работы с числами
roundTo
Округляет число x до n знаков после запятой. Если n не указано, округляет до ближайшего целого.
Спецификация функции
roundTo(x: <Float>, [n: <Integer>])
:: <Float>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Число, которое требуется округлить. |
да |
|
|
Количество знаков, до которого требуется округлить. Значение по умолчанию — |
нет |
Пример
roundTo(3.14159, 2)
3.14
percent
Вычисляет, сколько процентов составляет доля part от числа total.
Если total = 0, функция вернет null.
|
Спецификация функции
percent(part: <Float | Integer | Decimal>, total: <Float | Integer | Decimal>)
:: <Float | null>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Значение доли. |
да |
|
|
Значение целого. |
да |
Пример
percent(25, 200)
12.5
randInt
Возвращает случайное целое число от min до max включительно.
Спецификация функции
randInt(min: <Integer>, max: <Integer>)
:: <Integer>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Минимальное число. Целое. |
да |
|
|
Максимальное число. Целое. |
да |
Пример
randInt(1, 10)
7
Функции для работы со строками
strConcat
Объединяет строки в списке args.
Спецификация функции
strConcat(args: <List [String]>)
:: <String>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Список строк, разделенных запятой. |
да |
Пример
strConcat("Hello", " ", "world")
Hello world
strUpper
Переводит строку s в верхний регистр.
Спецификация функции
strUpper(s: <String>)
:: <String>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Строка, которую требуется перевести в верхний регистр. |
да |
Пример
strUpper("Hello")
HELLO
strLower
Переводит строку s в нижний регистр.
Спецификация функции
strLower(s: <String>)
:: <String>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Строка, которую требуется перевести в нижний регистр. |
да |
Пример
strLower("Hello")
hello
strTrim
Удаляет пробельные символы с левого и правого края строки s.
Спецификация функции
strTrim(s: <String>)
:: <String>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Строка, для которой требуется удалить пробельные символы. |
да |
Пример
strTrim(" Hello world ")
Hello world
strLength
Возвращает количество символов в строке s.
Спецификация функции
strLength(s: <String>)
:: <Integer>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Строка, количество символов в которой требуется подсчитать. |
да |
Пример
strLength("Hello world")
11
strStartsWith
Проверяет, начинается ли строка s с префикса prefix.
Спецификация функции
strStartsWith(s: <String>, prefix: <String>)
:: <Bool>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Строка, префикс которой требуется проверить. |
да |
|
|
Префикс. |
да |
Пример
strStartsWith("Hello world", "Hello")
True
strEndsWith
Проверяет, заканчивается ли строка s суффиксом suffix.
Спецификация функции
strEndsWith(s: <String>, suffix: <String>)
:: <Bool>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Строка, суффикс которой требуется проверить. |
да |
|
|
Суффикс. |
да |
Пример
strEndsWith("Hello world", "test")
False
strIncludes
Проверяет, содержит ли строка s подстроку part.
Спецификация функции
strIncludes(s: <String>, part: <String>)
:: <Bool>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
String |
Строка, в которой требуется искать подстроку. |
да |
|
String |
Подстрока. |
да |
Пример
strIncludes("Hello world", "wor")
True
Функции работы с датой и временем
dateNow
Возвращает текущую дату и время в формате как объект типа Date.
Спецификация функции
dateNow()
:: <Date>
Пример
dateNow()
20.10.2025 11:04:37
dateParse
Преобразует строку, число или дату s в объект типа Date.
Спецификация функции
dateParse(s: <String | Integer | Date>)
:: <Date>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Строка, число миллисекунд или дата, которую требуется преобразовать в дату и время. |
да |
Примеры
Преобразование строки в дату
dateParse("2025-09-30T10:31:41Z")
30.09.2025 13:31:41
Преобразование числа миллисекунд в дату
dateParse(1759220238000)
30.09.2025 11:17:18
dateFormat
Преобразует объект типа Date в строку в формате, указанном в аргументе pattern.
Спецификация функции
dateParse(d: <Date>, [pattern: <String>])
:: <String>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, которую требуется преобразовать в строку. |
да |
|
|
Строка формата. Допустимые шаблоны в строке формата:
Значение по умолчанию — |
да |
Примеры
Преобразование текущей даты в формат ISO 8601
dateFormat(dateNow(), "yyyy-MM-ddTHH:mm:ssZ")
2025-10-20T12:00:13Z
Извлечение даты из временной метки
dateFormat(dateNow(), "HH:mm:ss")
12:01:00
dateYear
Извлекает год из даты.
Спецификация функции
dateYear(d: <Date>)
:: <Integer>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, из которой требуется извлечь год. |
да |
Пример
dateYear(dateParse("2025-12-31 23:58:59"))
2025
dateMonth
Извлекает месяц из даты.
Спецификация функции
dateMonth(d: <Date>)
:: <Integer>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, из которой требуется извлечь месяц. |
да |
Пример
dateMonth(dateParse("2025-12-31 23:58:59"))
12
dateDay
Извлекает день из даты.
Спецификация функции
dateDay(d: <Date>)
:: <Integer>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, из которой требуется извлечь день. |
да |
Пример
dateDay(dateParse("2025-12-31 23:58:59"))
31
dateHour
Извлекает час из даты.
Спецификация функции
dateHour(d: <Date>)
:: <Integer>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, из которой требуется извлечь час. |
да |
Пример
dateHour(dateParse("2025-12-31 23:58:59"))
23
dateMinute
Извлекает минуту из даты.
Спецификация функции
dateMinute(d: <Date>)
:: <Integer>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, из которой требуется извлечь минуту. |
да |
Пример
dateMinute(dateParse("2025-12-31 23:58:59"))
58
dateSecond
Извлекает секунды из даты.
Спецификация функции
dateSecond(d: <Date>)
:: <Integer>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, из которой требуется извлечь секунды. |
да |
Пример
dateSecond(dateParse("2025-12-31 23:58:59"))
59
dateAddDays
Добавляет указанное количество дней к дате или вычитает, если указано отрицательное число.
Спецификация функции
dateAddDays(d: <Date>, n: <Integer>)
:: <Date>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, для которой требуется прибавить или вычесть дни. |
да |
|
|
Количество дней, которое требуется прибавить или вычесть. Положительное или отрицательное целое число. |
да |
Пример
Прибавление дней
dateAddDays(dateParse("2025-12-31 23:58:59"), 30)
30.01.2026 23:58:59
Вычитание дней
dateAddDays(dateParse("2025-12-31 23:58:59"), -10)
21.12.2026 23:58:59
dateAddMonths
Добавляет указанное количество месяцев к дате или вычитает, если указано отрицательное число.
Спецификация функции
dateAddMonths(d: <Date>, n: <Integer>)
:: <Date>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, для которой требуется прибавить или вычесть месяцы. |
да |
|
|
Количество месяцев, которое требуется прибавить или вычесть. Положительное или отрицательное целое число. |
да |
Примеры
Прибавление месяцев
dateAddMonths(dateParse("2025-12-31 23:58:59"), 3)
31.03.2026 23:58:59
Вычитание месяцев
dateAddMonths(dateParse("2025-12-31 23:58:59"), -2)
31.10.2025 23:58:59
dateAddYears
Добавляет указанное количество лет к дате или вычитает, если указано отрицательное число.
Спецификация функции
dateAddYears(d: <Date>, n: <Integer>)
:: <Date>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, для которой требуется прибавить или вычесть года. |
да |
|
|
Количество лет, которое требуется прибавить или вычесть. Положительное или отрицательное целое число. |
да |
Примеры
Прибавление лет
dateAddYears(dateParse("2025-12-31 23:58:59"), 3)
31.12.2028 23:58:59
Вычитание лет
dateAddYears(dateParse("2025-12-31 23:58:59"), -2)
31.12.2023 23:58:59
dateStartOfDay
Возвращает начало суток (00:00:00) указанной даты.
Спецификация функции
dateStartOfDay(d: <Date>)
:: <Date>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, для которой требуется получить начало суток. |
да |
Пример
dateStartOfDay(dateParse("2025-12-31 23:00:00"))
31.12.2025 00:00:00
dateEndOfDay
Возвращает конец суток (23:59:59) указанной даты.
Спецификация функции
dateEndOfDay(d: <Date>)
:: <Date>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, для которой требуется получить конец суток. |
да |
Пример
dateEndOfDay(dateParse("2025-12-31 23:00:00"))
31.12.2025 23:59:59
dateStartOfMonth
Возвращает начало месяца (первое число, 00:00:00) для указанной даты.
Спецификация функции
dateStartOfMonth(d: <Date>)
:: <Date>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, для которой требуется получить начало месяца. |
да |
Пример
dateStartOfMonth(dateParse("2025-12-31 23:00:00"))
01.12.2025 00:00:00
dateEndOfMonth
Возвращает конец месяца (последний день, 23:59:59) для указанной даты.
Спецификация функции
dateEndOfMonth(d: <Date>)
:: <Date>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, для которой требуется получить конец месяца. |
да |
Пример
dateEndOfMonth(dateParse("2025-12-31 23:00:00"))
31.12.2025 23:59:59
dateDiff
Возвращает разницу между датами в указанных единицах (секундах, минутах, часах, днях).
Спецификация функции
dateDiff(d1: <Date>, d2: <Date>, [unit: <String>])
:: <Integer>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Начальная дата. |
да |
|
|
Конечная дата. |
да |
|
|
Единица измерения:
Значение по умолчанию — |
нет |
Пример
dateDiff(dateParse("2025-12-30 12:00:00"), dateParse("2026-01-01 00:00:00"), "hours")
36
dateIsBefore
Возвращает True, если дата d1 раньше d2, False иначе.
Спецификация функции
dateIsBefore(d1: <Date>, d2: <Date>)
:: <Bool>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Первая дата. |
да |
|
|
Вторая дата. |
да |
Пример
dateIsBefore(dateParse("2025-12-30 12:00:00"), dateParse("2026-01-01 00:00:00"))
True
dateIsAfter
Возвращает True, если дата d1 позже d2, False иначе.
Спецификация функции
dateIsAfter(d1: <Date>, d2: <Date>)
:: <Bool>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Первая дата. |
да |
|
|
Вторая дата. |
да |
Пример
dateIsAfter(dateParse("2025-12-30 12:00:00"), dateParse("2026-01-01 00:00:00"))
False
dateIsBetween
Возвращает True, если дата d находится между d1 и d2, включая обе границы диапазона, False иначе.
Спецификация функции
dateIsBetween(d: <Date>, d1: <Date>, d2: <Date>)
:: <Bool>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, вхождение которой в диапазон требуется проверить. |
да |
|
|
Левая граница диапазона. |
да |
|
|
Правая граница диапазона. |
да |
Пример
dateIsBetween(dateParse("2025-12-30 18:00:00"), dateParse("2025-12-30 12:00:00"), dateParse("2026-01-01 00:00:00"))
True
dateToTimestamp
Возвращает Unix timestamp — количество секунд с начала эпохи Unix (1 января 1970 г., 00:00:00) до указанной даты.
Спецификация функции
dateToTimestamp(d: <Date>)
:: <Integer>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Дата, которую требуется преобразовать в Unix timestamp. |
да |
Пример
dateToTimestamp(dateParse("2025-12-30 19:00:00"))
1767121200
Функции для работы с логическими значениями
if
Если условие cond истинно, возвращает значение thenVal, иначе elseVal.
Спецификация функции
if(cond: <Bool>, thenVal: <any>, elseVal: <any>)
:: <any>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Логическое значение или выражение. |
да |
|
любой тип |
Значение, которое вернет функция, если |
да |
|
любой тип |
Значение, которое вернет функция, если |
да |
Пример
if({field:subjectCount} < 10000, "Да", "Нет")
xor
Исключающее ИЛИ для двух логических значений a и b.
Спецификация функции
xor(a: <Bool>, b: <Bool>)
:: <Bool>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Левый операнд исключающего ИЛИ. |
да |
|
|
Правый операнд исключающего ИЛИ. |
да |
Пример
xor(True, False)
True
andAll
Возвращает True, если все элементы массива arr истинны, иначе False.
Спецификация функции
andAll(arr: <Array [Bool]>)
:: <Bool>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Массив логических значений или выражений. |
да |
Пример
andAll([True, 2 > 1, True])
True
orAny
Возвращает True, если хотя бы один элемент массива arr является истинным, иначе False.
Спецификация функции
orAny(arr: <Array [Bool]>)
:: <Bool>
| Аргумент | Тип | Описание | Обязателен |
|---|---|---|---|
|
|
Массив логических значений или выражений. |
да |
Пример
orAny([True, 2 < 1, False])
True
Была ли полезна эта страница?