Функция | Описание |
abs |
Вычисление модуля числа. |
dateadd |
Добавляет заданное количество дней, месяцев, лет, часов, минут и секунд к указанной дате.
Синтаксис: =dateadd([начальная_дата], [что_добавлять]) ;
Варианты написания и примеры
|
y , year , years , m , month , months , d , day , days , h , hour , hours , i , min , minute , minutes , s , second , seconds .
При написании можно использовать верхний или нижний регистр.
Примеры: =Dateadd({=Document:DATE_CREATE}, "-2d") , =Dateadd({=Document:DATE_CREATE}, "2 days 3 minutes") .
В случае, если необходимое для добавления количество единиц времени содержится в поле, переменной и т.п., то необходимо использовать оператор конкатенации & . Например: =DateAdd({=Document:DATE_CREATE}, {=Variable:WHAT2ADD} & "y 10h")
|
|
datediff |
Позволяет вычислить разницу между двумя датами.
Синтаксис:
=datediff([первая дата], [вторая дата], [как выводить разницу]) ;
Разницу можно выводить в разных единицах, в зависимости от решаемых вами задач.
Пример:
=datediff({=Variable:Variable1}, {=Variable:Variable2},'%m month, %d days')
Больше примеров работы с функцией в уроке Примеры работы с датами.
|
date |
Форматируется вывод даты/времени
Лучший вариант для выполнения этой задачи. Использование строковых функций типа substr и strpos не рекомендуется.
. Работает аналогично функции Date в PHP.
Синтаксис: {{=date([формат даты], [дата])}} . Дата - не обязательный параметр, по умолчанию используется текущая дата.
Пример: {{=date('l, j F Y, H:i:s')}} . Результат: Tuesday, 9 November 2021, 12:06:16 .
|
WorkDateAdd |
Добавляет заданное количество рабочих дней, часов и минут к указанной дате.
Синтаксис:
=WorkDateAdd([начальная_дата], [что_добавлять], [пользователь]) .
Параметр [пользователь] не обязательный. С его помощью можно указать пользователя, на рабочее время которого нужно ориентироваться. Доступен с версии 19.0.0 модуля bizproc.
Варианты написания и примеры
|
Варианты написания: d, day, days, h, hour, hours, i, min, minute, minutes . Допустимо написание как в верхнем, так и в нижнем регистре.
Пример:
=WorkDateAdd({=Template:Parameter1}, "2d", {=Document:ASSIGNED_BY_ID}) - в параметре содержится дата 28.04.2016 . Результат - 02.05.2016 09:00:00, т.к. 30.04 и 1.05 - это выходные дни, то они будут пропущены. 09:00:00 - начало рабочего дня. С помощью третьего параметра учитывается часовой пояс ответственного за сущность. Список выходных дней и начало рабочего дня настраивается в Настройках портала.
|
|
AddWorkDays |
Функция добавляет N рабочих дней к указанной дате.
Синтаксис:
=addworkdays([дата, к которой будут добавляться дни], [количество добавляемых рабочих дней]) .
Примеры:
{{=addworkdays('07.03.2016', 1)}} - результат: 09.03.2016 00:00:00 , т.к. в настройках сайта 8 марта - выходной.
{{=addworkdays('05.02.2016 16:14:00', 1)}} - результат: т.к. 05.02.2016 - пятница, то результат: 08.02.2016 16:14:00 - понедельник.
|
isWorkDay |
Функция проверяет, является ли дата рабочим днем по календарю (с версии 21.400.0 учитывает настройки рабочих дней календаря).
Синтаксис:
=if(isWorkDay([проверяемая дата], [пользователь]), [сообщение, если дата является рабочим днем], [сообщение, если не является]) .
Параметр [пользователь] не обязательный. С его помощью можно указать пользователя, на рабочее время которого нужно ориентироваться. Доступен с версии 19.0.0 модуля bizproc.
Пример:
{{=if(isWorkDay({=Template:Parameter1}), 'Да', 'Нет')}} - в параметре содержится дата 28.04.2016 . Результат - Да, т.к. это рабочий день. |
isWorkTime |
Аналогична функции isWorkDay , но для типов данных Дата/Время.
Синтаксис:
=if(isWorkDay([проверяемая дата со временем], [пользователь]), [сообщение, если дата со временем являются рабочими], [сообщение, если не являются]) .
Параметр [пользователь] не обязательный. С его помощью можно указать пользователя, на рабочее время которого нужно ориентироваться. Доступен с версии 19.0.0 модуля bizproc.
Пример:
{{=if(isWorkTime({=Template:Parameter1}), 'Да', 'Нет')}} - в параметре содержится дата со временем 27.04.2016 15:00:00 . Результат - Да, т.к. это рабочее время. |
toUserDate |
Функция приводит любое время к времени сотрудника (с учетом его часового пояса).
toUserDate(
user,
date
)
Параметры
- user - пользователь, к чьему времени необходимо привести время, т.е. чей часовой пояс использовать;
- date - дата и время, относительно которых нужно сделать преобразование. По умолчанию это текущее время сервера.
Примеры записей функции:
// 1. Добавление пользователя через форму Вставка значения, где "Кем создан" это поле документа
{{=touserdate({{Кем создан}})}}
// 2. Запись пользователя в формате user_ID, которую нужно взять в кавычки
{{=touserdate('user_1')}}
// 3. Пользователь в формате user_ID, дата и время указываются в кавычках
{{=touserdate('user_3', '30.12.2022 10:33:14')}}
Примечание: Функция также может принять в параметре User число. Число определится как идентификатор
группы пользователей
Речь о группах пользователей, которые создаются в административном разделе коробочных продуктов на странице Настройки > Пользователи > Группы пользователей.
Подробнее в курсе Администратор. Базовый
. Для определения часового пояса будет взят первый сотрудник из этой группы.
Пример:
{{=touserdate(7)}}
Идентификатор 7 имеет группа Техподдержка. Первый пользователь в этой группе имеет часовой пояс (UTC -02:00). А значит время будет выведено в этом часовом поясе;
|
GetUserDateOffset |
Функция возвращает значение смещения часовой зоны пользователя в секундах (относительно серверного времени).
GetUserDateOffset(
user
)
Параметры:
- user - пользователь, относительно чьего времени нужно значение.
|
if |
Условный оператор.
Синтаксис:
=if([условие], [результат_в_случае_выполнения_условия], [результат_в_случае_не_выполнения_условия]) ;
Пример:
=if ({=Variable:Variable1_printable}>0, "да", "нет")
При сравнении значений переменных также возможно сравнивать переменные с разным типом данных. Однако сравниваемые переменные должны соответствовать таблице преобразования типов. |
intval |
Возвращает целое число.
Пример:
=intval("234j4hv5jhv43v53jk4vt5hj4") вернет 234.
|
floatval |
Возвращает число (с плавающей точкой).
|
numberformat |
Форматирует число с разделением групп.
|
min |
Возвращает наименьшее число. |
max |
Возвращает наибольшее число. |
rand |
Возвращает случайное число. |
round |
Округляет число. |
ceil |
Округляет дробь в большую сторону. |
floor |
Округляет дробь в меньшую сторону. |
substr |
Возвращает подстроку определенной длины, начиная с указанного символа. Данная функция аналогична существующей substr в php.
Синтаксис:
substr([входная строка], [с какого символа исходной строки начнется возвращаемая статья], [какой длины будет строка])
Имейте ввиду, что строка начинает с символа под номером 0. Например, в строке 'abcdef', в позиции 0 находится символ 'a', в позиции 2 - символ 'c', и т.д.
Пример:
{{=substr("0123456789", 3, 4)}} вернет 3456 .
Внимание! Если синтаксис выражения будет неправильным, то оно отобразится как текст.
|
strpos |
Возвращает позицию первого вхождения подстроки.
|
strlen |
Возвращает длину строки.
|
implode |
Объединяет множественные значения в строку. Полезна, когда нужно вывести в текст значения множественных переменных нестандартным разделителем (стандартный - просто запятая). Аналог implode в PHP.
Возвращает строку, содержащую строковое представление всех элементов массива в указанном порядке, со значением glue между каждым элементом.
implode(
glue,
pieces
)
Параметры:
- glue - по умолчанию равен пустой строке;
- pieces - массив объединяемых строк.
|
explode |
Функция разбивает строку с помощью разделителя. Полезна, когда нужно разбить строку и присвоить части как значение множественной переменной. Аналог explode в PHP.
Возвращает массив строк, полученных разбиением строки str с использованием delimiter в качестве разделителя.
explode(
delimiter,
str)
Параметры:
- delimiter - разделитель;
- str - строка для разделения.
|
randstring |
Возвращает случайную строку. |
merge |
Позволяет объединять массивы.
Синтаксис:
= merge({=массив_1}, {=массив_2}) ;
Пример:
= merge({=Document:FILES}, {=Variable:file}) .
|
urlencode |
URL-кодирование строки.
|
strtolower |
Преобразует строку в нижний регистр. Функция доступна с версии 21.200.0.
|
strtoupper |
Преобразует строку в верхний регистр. Функция доступна с версии 21.200.0.
|
ucwords |
Преобразует в верхний регистр первый символ каждого нового слова в строке. Функция доступна с версии 21.200.0.
|
ucfirst |
Преобразует первый символ строки в верхний регистр. Функция доступна с версии 21.200.0.
|
strtotime |
Преобразует текстовое написание даты на английском языке во внутренний формат даты. Функция доступна с версии 21.300.0.
Примеры написания:
{{=strtotime("now")}}
{{=strtotime("next day")}}
{{=strtotime("+1 week")}}
{{=strtotime("next Thursday")}}
|
locdate |
Форматирует вывод даты / времени на языке сайта (портала). Функция доступна с версии 21.300.0.
Работает аналогично функции date (date в PHP), но при форматировании учитывает язык.
Синтаксис: {{=locdate([формат даты], [дата])}} . Дата - не обязательный параметр, по умолчанию используется текущая дата.
Пример для сайта на русском языке: {{=locdate('l, j F Y, H:i:s')}} . Результат: Вторник, 9 Ноября 2021, 12:06:16 .
|
shuffle |
Перемешивает значения множественного поля. Функция доступна с версии 21.500.0.
Пример: пусть есть переменная Variable1 типа Число с множественным значением: 1, 2, 3, 4, 5, 6.
Тогда результатом выполнения функции {{=shuffle({=Variable:Variable1})}} будет случайный порядок этих чисел: 1, 4, 6, 5, 3, 2 .
|
firstvalue |
Возвращает первое значение множественного поля. Функция доступна с версии 21.500.0.
Пример: пусть есть переменная Variable1 типа Число с множественным значением: 1, 2, 3, 4, 5, 6.
Тогда результатом выполнения функции {{=firstvalue({=Variable:Variable1})}} будет первое число: 1 .
|
swirl |
Перемещает первое значение множественного поля в конец. Функция доступна с версии 21.500.0.
Пример: пусть есть переменная Variable1 типа Число с множественным значением: 1, 2, 3, 4, 5, 6.
Тогда результатом выполнения функции {{=swirl({=Variable:Variable1})}} будет: 2, 3, 4, 5, 6, 1 , т.е. первое число 1 стало последним.
|
getdocumenturl |
Возвращает ссылку на текущий документ (для которого запущен бизнес-процесс). Функция доступна с версии 22.200.0.
Синтаксис: {{=getdocumenturl([Форматирование ссылки], [Полная ссылка]}}
- Форматирование ссылки. Возможные значения:
- 'bb' - форматирует ссылку, используя bb-code в виде:
[url=ссылка на документ]Имя документа[/url] ;
- 'html' - форматирует ссылку, используя html в виде:
<a href="ссылка на документ" target="_blank">Имя документа</a> . При этом имя документа обрабатывается функцией
htmlspecialcharsbx
Функция преобразует специальные символы в HTML-сущности.
.
- Полная ссылка. Возможные значения 0/1 или false()/true(). Если установлено 1 или true(), то к ссылке будет добавлен URL сайта (например, https://mysite.ru).
Примеры:
Ссылка с форматированием bb-code: {{=getdocumenturl('bb')}}
Полная ссылка с доменом сайта и html форматированием: {{=getdocumenturl('html', true())}}
|
trim |
Удаляет пробелы из начала и конца строки. Функция доступна с версии 22.300.0.
Синтаксис: {{=trim([строка])}}
Пример:
Пусть есть переменная Variable1 типа Строка, в которой записано значение с пробелом в начале и в конце 123 .
Используем функцию trim для записи значения переменной в отчет без пробелов: {{=trim({=Variable:Variable1})}} . В результате в отчет будет записано 123 без пробелов.
|
settime |
Устанавливает конкретное время для указанной даты у полей типа Дата и Дата/Время. Функция доступна с версии 22.500.0. Функция имеет 3 параметра: дата, часы, минуты.
Синтаксис: {{=settime([Дата], [Часы], [Минуты])}}
Примеры:
Пусть есть переменная Variable1 типа Дата, в которой записана дата 13.03.2023 .
Используем функцию settime для установки времени:
1. {{=settime({=Variable:Variable1}, 15, 55)}}
// результат - 13.03.2023 15:55:00
2. {{=settime({=Variable:Variable1}, 21, 79)}}
// результат - 13.03.2023 22:19:00 (т.к. количество минут больше 60, был добавлен час и остаток записан в минуты)
|
|