Слова для записи времени: y, year, years, m, month, months, d, day, days, h, hour, hours, i, min, minute, minutes, s, second, seconds. При написании можно использовать верхний или нижний регистр, а также знак минуса для вычитания времени.
Примеры:
// Вычтем 2 дня
{{=dateadd({=Document:DATE_CREATE}, "-2d")}}
// Прибавим 2 дня и 3 минуты
{{=dateadd({=Document:DATE_CREATE}, "2 days 3 minutes")}}
В случае, если необходимое для добавления количество единиц времени содержится в поле, переменной и т.п., то необходимо использовать оператор конкатенации &. Например:
{{=dateAdd({=Document:DATE_CREATE}, {=Variable:WHAT2ADD} & "y 10h")}}
Если требуется вычесть время, то знак минуса тоже добавляется через & перед переменным значением:
{{=dateAdd({=Document:DATE_CREATE}, "-" & {=Variable:WHAT2ADD} & "y 10h")}}
Форматируется вывод даты/времени
Лучший вариант для выполнения этой задачи. Использование строковых функций типа substr и strpos не рекомендуется.
. Работает аналогично функции Date в PHP.
Синтаксис: {{=date([формат даты], [дата])}}. Дата — необязательный параметр, по умолчанию используется текущая дата по
времени сервера
Для облачных Битрикс24 в зоне RU — UTC+3:00 (Московское время), для коробочных версий — время сервера, на котором установлен продукт.
.
Пример:
{{=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. Допустимо написание как в верхнем, так и в нижнем регистре.
Пример:
// Пусть в параметре содержится дата 28.04.2016.
{{=workdateadd({=Template:Parameter1}, "2d", {=Document:ASSIGNED_BY_ID})}}
// Результат — 02.05.2016 09:00:00, т.к. 30.04 и 1.05 — это выходные дни, то они будут пропущены.
// 09:00:00 — начало рабочего дня. С помощью третьего параметра учитывается часовой пояс ответственного за сущность.
Список выходных дней и начало рабочего дня настраивается в Настройках портала
addworkdays
Функция добавляет N рабочих дней к указанной дате.
Синтаксис: =addworkdays([дата, к которой будут добавляться дни], [количество добавляемых рабочих дней]).
Примеры:
1. {{=addworkdays('07.03.2016', 1)}}
// результат: 09.03.2016 00:00:00, т.к. в настройках сайта 8 марта — выходной.
2. {{=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.
Пример:
// Пусть в параметре содержится дата 28.04.2016.
{{=if(isworkday({=Template:Parameter1}), 'Да', 'Нет')}}
// Результат — Да, т.к. это рабочий день.
isworktime
Аналогична функции isworkday, но для типов данных Дата/Время.
Синтаксис: =if(isworktime([проверяемая дата со временем], [пользователь]), [сообщение, если дата со временем являются рабочими], [сообщение, если не являются]). Указывать пользователя не обязательно. Параметр нужен для уточнения, на чьё рабочее время нужно ориентироваться. Доступен с версии 19.0.0 модуля bizproc.
Пример:
// Пусть в параметре содержится дата 27.04.2016 15:00:00.
{{=if(isworktime({=Template:Parameter1}), 'Да', 'Нет')}}
// Результат — Да, т.к. это рабочее время.
touserdate
Функция приводит серверное время к времени пользователя (в его часовой пояс). Например, если время сервера UTC +03:00, а время пользователя UTC +05:00, то итоговое время, которое вернет функция, будет на 2 часа больше.
Синтаксис: =touserdate([пользователь], [дата и время]). Дата и время, указанные во втором параметре, будут восприниматься в часовом поясе сервера.
Примеры:
// 1. Добавление пользователя через форму Вставка значения, где «Кем создан» это поле документа
{{=touserdate({{Кем создан}})}}
// 2. Запись пользователя в формате user_ID, которую нужно взять в кавычки
{{=touserdate('user_1')}}
// 3. Пользователь в формате user_ID, дата и время указываются в кавычках
{{=touserdate('user_3', '18.07.2023 16:47:01')}}
Примечание: Функция также может принять в параметре User число. Число определится как идентификатор
группы пользователей
Речь о группах пользователей, которые создаются в административном разделе коробочных продуктов на странице Настройки > Пользователи > Группы пользователей.
Подробнее в курсе Администратор. Базовый
. Для определения часового пояса будет взят первый сотрудник из этой группы.
Пример:
// Группа Техподдержка имеет идентификатор 7
{{=touserdate(7)}}
// Первый пользователь в этой группе имеет часовой пояс (UTC -02:00). А значит время будет выведено в этом часовом поясе.
getuserdateoffset
Функция возвращает смещение часовой зоны пользователя относительно
серверного времени
Для облачных Битрикс24 в зоне RU — UTC+3:00 (Московское время), для коробочных версий — время сервера, на котором установлен продукт.
в секундах.
Синтаксис: =getuserdateoffset([пользователь])
Пример:
// Пусть время сервера UTC +03:00, а время пользователя (user_1) UTC +05:00. Тогда:
{{=getuserdateoffset('user_1')}}
// вернет 7200 (т.е. разница составляет 2 часа)
/* простой пример со строками в параметрах */
1. {{=if ({=Variable:Variable1_printable}>0, "да", "нет")}}
/* будьте внимательны, используя функции в параметрах.
Фигурные скобки и символ равно для dateadd здесь не нужны. */
2. {{=if ({=Template:Parameter1}=1, dateadd({=System:Now},"10d"), dateadd({=System:Now},"30d"))}}
При сравнении значений переменных также возможно сравнивать переменные с разным типом данных. Однако сравниваемые переменные должны соответствовать таблице преобразования типов.
Форматирует число с разделением групп.
Синтаксис:=numberformat([число], [количество знаков после запятой], [разделитель дробной части], [разделитель тысяч])
Возвращает случайное число.
Синтаксис:=rand([наименьшее значение], [наибольшее значение]). Может быть вызвано без параметров, подробнее в документации по php (ссылка выше).
Пример:
{{=rand(5, 10)}}
//вернет случайным образом число в диапазоне между 5 и 10. К примеру, 5 или 8.
Возвращает подстроку определенной длины, начиная с указанного символа. Данная функция аналогична существующей substr в php.
Синтаксис: substr([входная строка], [с какого символа исходной строки начнется возвращаемая статья], [какой длины будет строка])
Имейте ввиду, что строка начинается с символа под номером 0. Например, в строке 'abcdef', в позиции 0 находится символ 'a', в позиции 2 — символ 'c', и т.д.
Пример:
{{=substr("0123456789", 3, 4)}}
// Вернет 3456.
Внимание! Если синтаксис выражения будет неправильным, то оно отобразится как текст.
Объединяет множественные значения в строку. Функция полезна, когда нужно вывести в текст значения множественных переменных нестандартным разделителем. Аналог implode в PHP.
Возвращает строку, содержащую строковое представление всех элементов массива в указанном порядке, с указанным разделителем между каждым элементом.
// Пусть переменная Variable1 множественная и содержит три значения: Один, Два, Три. Тогда:
1. {{=implode(' - ', {=Variable:Variable1})}}
// вернет строку Один - Два - Три.
2. {{=implode('[br]', {=Variable:Variable1})}}
// тег bb-code br перенесёт каждое значение переменной на новую строку
3. {{=implode({=System:Eol}, {=Variable:Variable1})}}
// системное значение конца строки {=System:Eol} сработает там, где не поддерживается тег br (например, в Заданиях)
explode
Функция разбивает строку с помощью разделителя. Полезна, когда нужно разбить строку, затем присвоить части как значение множественной переменной. Аналог explode в PHP.
Возвращает массив строк, полученных разбиением строки с использованием указанного разделителя.
Синтаксис: =explode([разделитель], [строка])
Пример:
// {{=explode(' - ', 'Один - Два - Три')}}
// вернет массив из трёх строк: Один, Два, Три.
randstring
Возвращает случайную строку указанной длины.
Пример:
{{=randstring(10)}}
// Вернет случайную строку длиной в 10 символов. Например: yWB6pMU4S4
{{=randstring(16)}}
// Вернет случайную строку длиной в 16 символов. Например: zRNTpQ4r4zyoJXt0
Форматирует вывод даты / времени на языке сайта (портала). Функция доступна с версии 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.
Пример:
// 1. Пусть есть переменная Variable1 типа Число с множественным значением: 1, 2, 3, 4, 5, 6. Тогда:
{{=firstvalue({=Variable:Variable1})}}
// Вернет число: 1.
2. // В качестве параметра функции firstvalue используется функция explode
{{=firstvalue(explode(',' , {{Строка}}))}}
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.
'bb' — форматирует ссылку, используя bb-code в виде: [url=ссылка на документ]Имя документа[/url]
'html' — форматирует ссылку, используя html в виде:<a href="ссылка на документ" target="_blank">Имя документа</a>. При этом имя документа обрабатывается функцией
htmlspecialcharsbx
Функция преобразует специальные символы в HTML-сущности.
Полная ссылка. Возможные значения 0/1 или false()/true(). Если установлено 1 или true(), то к ссылке будет добавлен URL сайта (например, https://mysite.ru)
Примеры:
// 1. Ссылка с форматированием bb-code:
{{=getdocumenturl('bb')}}
// 2. Полная ссылка с доменом сайта и 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, был добавлен час и остаток записан в минуты)
Мы стараемся сделать документацию понятнее и доступнее, и Ваше мнение важно для нас