В окне "Вставка значения" при настройке бизнес-процесса существуют два варианта вставки ID: просто "ID" и "ID элемента CRM". Чем они отличаются? Разница в том, как значения выглядят на выходе. Например если ID сделки 1337, то результаты будут следующими:
"ID" выведет 1337
"ID элемента CRM" же покажет D_1337 (где D означает тип сущности "Сделка")
Это формат необходим полям типа "Привязка к элементам CRM" у которых допустимы несколько типов сущностей или в случае, когда при создании задачи нужно указать элементы CRM.
2. ДОПОЛНЕНИЕ ПЕРЕМЕННОЙ В ИТЕРАТОРЕ
При изменении переменной сперва добавьте ссылку на значение это переменной, а после неё впишите новую информацию. Таким образом при каждой итерации в этой переменной будет накапливаться информация без перезаписи.
3. ДОПОЛНЕНИЕ МНОЖЕСТВЕННЫХ ПОЛЕЙ И ПЕРЕМЕННЫХ, ВМЕСТО ПЕРЕЗАПИСИ
При изменении значения в множественном поле или переменной можно установить параметр "Дополнить множественные поля вместо перезаписи". В случае, если эта опция включена, при изменении этого поля или переменной будут сохраняться старые значения, а новые дописываться в конце массива.
4. ПОЛУЧИТЬ ИНФОРМАЦИЮ ОБ ЭЛЕМЕНТЕ CRM: СМАРТ-ПРОЦЕСС
Чтобы действие "Получить информацию об элементе CRM" возвращало значение, необходимо включить в настройках смарт-процессах следующие настройки:
Использовать в смарт-процессе роботы и триггеры;
Использовать в смарт-процессе дизайнер бизнес-процессов.
5. СИСТЕМНЫЕ ДАННЫЕ И ФУНКЦИИ
При настройки параметров действия, в случае, если ввести символ =, то отобразится всплывающее окно в котором можно будет быстро вставить системные данные или функции
Системные:
{=Workflow:ID} Идентификатор процесса
{=Template:TargetUser} Пользователь, запустивший процесс
{=User:ID} Текущий пользователь
{=System:Now} Текущая дата и время сервера
{=System:NowLocal} Текущая дата и время локальное
{=System:Date} Текущая дата
{=System:Eol} Символ конца строки
Функции:
abs вычисление модуля числа
dateadd добавление указанного значения к дате
datediff вычисление разницы между датами
date форматирует вывод даты/времени
workdateadd добавляет дни, часы, минуты к указанной дате
addworkdays добавляет N рабочих дней к указанной дате
isworkday проверяет является ли дата рабочим днем
isworktime проверяет является ли дата/время рабочим временем
touserdate приводит серверное время к времени пользователя
getuserdateoffset возвращает смещение времени пользователя относительно сервера, в секундах
if условный оператор
intval возвращает целое число
floatval возвращает число
numberformat форматирует число с разделение групп
min возвращает наименьшее число
max возвращает наибольшее число
rand возвращает случайное число
round округляет число
ceil округляет дробь в большую сторону
floor округляет дробь в меньшую сторону
substr возвращает подстроку
strpos возвращает позицию первого вхождения подстроки
strlen возвращает длину строки
implode объединяет множественные значения в строку
explode разбивает строку с помощью разделителя
randstring возвращает случайную строку
merge объединение множественных значений
urlencode url-кодирование строки
strtolower преобразует строку в нижний регистр
strtoupper преобразует строку в верхний регистр
ucwords преобразует в верхний регистр первый символ каждого слова в строке
ucfirst преобразует первый символ строки в верхний регистр
strtotime преобразует текстовое написание даты на английском языке во внутренний формат даты
locdate меняет язык вывода даты/ времени на текущий язык портала
shuffle перемешивает значения множественного поля
firstvalue возвращает первое значение множественного поля
swirl перемещает первое значение пользовательского поля в конец
6. ССЫЛКИ В УВЕДОМЛЕНИЯХ И ЗАДАНИЯХ
Для того, чтобы ссылка стала кликабельной, нужно обрамить ёё в соответствующий тег: [url=ссылка]текст ссылки[/url]
Пример:
Ссылка на просмотр существующего документа crm в слайдере: /bitrix/components/bitrix/crm.document.view/slider.php?documentId=[ID]&IFRAME=Y&IFRAME_TYPE= SIDE_SLIDER
Ссылка на папку: /bitrix/tools/disk/focus.php?folderId={=A52715_49501_92679_43337: ObjectId}& action=openFolderList&ncc=1
Ссылка на страницу с заданием текущего бизнес-процесса: /company/personal/bizproc/{=Workflow:ID}/
Ссылка на пользователя: /company/personal/user/{{=substr({{Ответственный}}, 5)}}/
Ссылка на задачу: /company/personal/user/{{=substr({{Ответственный}}, 5)}}/tasks/task/view/{=A57030_97500_98792_73159:TaskId}
Ссылка на сделку: /crm/deal/details/{{ID}}/
Сделать ссылку можно для любой сущности. К примеру, если вам необходимо сделать ссылку на сделку, то просто перейдите в любую из них и скопируйте url из адресной строке, после чего вместо ID сделки подставьте нужную переменную.
Текст выделенный синим заменяется на нужный вам. Адрес портала из ссылок можно удалить
7. ФОРМАТИРОВАНИЕ ТЕКСТА
В бизнес-процессах есть возможность отформатировать текст, используя теги. Форматирование доступно в комментариях к сущностям, в задачах, в заданиях и в уведомлениях.
Теги:
<b>Жирный</b>
<i>Курсив</i>
<u>Подчеркивание</u>
[color=blue]Цвет[/color] (цвет можно указывать либо названием, либо кодом, например, #ff0000)
8. ПРИВЯЗКА К СПИСКАМ ДОКУМЕНТА В ЗАПРОСЕ ДОПОЛНИТЕЛЬНОЙ ИНФОРМАЦИИ
Во время создания полей для задания "Запрос дополнительной информации" можно использовать тип поля "Привязка к спискам документа". Так их можно будет присваивать полям документа без сопоставления.
Также используя действие "Изменение переменных" можно редактировать эту переменную. К примеру при повторных согласованиях можно вставлять предыдущие значения.
9. УВЕДОМЛЕНИЕ НА ЗАДАЧУ, ЗАВЕРШЕНИЯ КОТОРОЙ ЖДЕТ БИЗНЕС-ПРОЦЕСС
Если в настройках действия "Задача" установить "ожидание до завершения задачи", то для того, чтобы, к примеру, отправить уведомление, нам пригодится действие "Параллельное выполнение". Для того, чтобы сперва создавалась задача необходимо поместить это действие в левую ветвь, а действие с уведомление установить справа. В таком случае нам будет доступен ID созданной задачи и его можно будет вставить в ссылку в уведомлении.
Например:
Вам поставлена [url=/company/personal/user/{=User: ID}/tasks/task/view/ {=A24388_98030_17242_51455: TaskId}/] новая задача[/url].
Где {=A24388_98030_17242_51455:TaskId} — ID задачи из вставки значения дополнительных результатов.
10. СВЯЗКА ЗАДАНИЙ И ЗАДАЧ
Зачастую пользователям сложнее привыкнуть к заданиям Бизнес-процессов, но иногда они просто необходимы из-за того, что в них доступен более широкий функционал. И для того, чтобы облегчить жизнь пользователям их можно объединить:
Всего необходимо сделать два шага:
В описание задачи добавить ссылку на задание и примечание о том, что задача завершится автоматически после завершения задания.
В После задания необходимо установить либо rest-действие (в маркете есть) с завершением задачи, либо WebHook с завершением задачи.
Описание задачи:
Ознакомиться с документами по сделке [url=/crm/deal/details/{{ID}}/]{{Название}}[/url].
[b]Перейдите в [url=/company/personal/bizproc/ {=A94232_72478_73372_10926:TaskId}/] задание[/url][/b]
[b][color=red]После выполнения задания задача завершится автоматически.[/color][/b]
В этом примере приведена ссылка на сделку и ссылка на задание. В примечании тег [b][/b] – жирный шрифт, [color=red][/color] – красный цвет шрифта.
11. ВСТАВКА ЗНАЧЕНИЯ. МОДИФИКАЦИЯ ТИПОВ ДАННЫХ
Порой данные полученные с помощью "Вставки значения" в задачах и уведомлениях отображаются неожиданным образом. К примеру, пользователь добавляет ID, а не только имя. Чтобы это исправить пригодится модификатор friendly..
12. ДОБАВЛЕНИЕ ЭЛЕМЕНТОВ CRM В ЗАДАЧУ ИЗ БИЗНЕС-ПРОЦЕССА
В настройках действия "Задача" в дизайнере бизнес-процессов недостаточно указать в поле "Элементы CRM" поле с нужным вам элементом, так оно не привяжется к задаче.
Вся проблема в том, что эти поля содержат лишь ID сущности, но не содержат её тип. Чтобы это исправить необходимо указать нужный тип самостоятельно: