Фишки бизнес-процессов Битрикс24

12.11.2021
Фишки БП

Здесь собраны неочевидные вещи в бизнес-процессах Битрикс24, а также простые действия, которые помогут в создании и отладке.

Содержание

Добавление элементов CRM в задачу из бизнес-процесса

В действии Задача в процессах нельзя просто указать поле Лида, КонтактаСделки или Компании, оно не привяжется к задаче.

Дело в том, что эти поля содержат ID сущности, но не указывают что же это за сущность, поэтому ее нужно указать.

 

  • Лид «L_»&{{ID}}
  • Контакт  «C_»&{{ID}}
  • Сделка «D_»&{{ID}}
  • Компания «CO_»&{{ID}}

Пример добавления Компании и Сделки к Задаче:

 

=»CO_»&{{Компания}}, «D_»&{=A89102_36331_72702_3654:DealId}

Добавление элементов CRM в задачу из БП

Значение списка присвоить значению списка в другой сущности

Здесь тоже все не так тривиально. Нельзя просто приравнять списки, придется использовать переменную с ключами значений. 

Для получения значения ключа списка используется параметр select.

Например: {=Variable:Select > select}.

Подробнее в статье Сопоставление полей типа список.

Системные данные и функции

Если в действии процесса, где вы хотите внести какие-то данные, ввести равно, то для вас откроется мир системных данных и функций 🙂

Системные:

 

  • Идентификатор процесса
  • Пользователь, запустивший процесс
  • Текущий пользователь
  • Время сервера
  • Время локальное
  • Текущая дата
  • Символ конца строки

 

Функции:

 

  • 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 перемещает первое значение пользовательского поля в конец

Ссылки в заданиях

Чтобы сделать кликабельную ссылку в задании она должна иметь следующий вид:

[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}/]

Параметры, выделенные фиолетовым, подставляются ваши.

Уведомление на задачу, завершения которой ждет бизнес-процесс

Если в действии Задача мы устанавливаем ожидание до завершения задачи, то нет смысла делать уведомление со ссылкой после задачи, т.к. она уже завершится, когда придет уведомление. Перед задачей тоже смысла нет, т.к. мы еще не знаем ID задачи и не можем указать ссылку на нее.

 

Зато мы можем сделать Задачу и Уведомление параллельно. Важно, чтобы сначала создавалась Задача, а потом уже Уведомление, поэтому Задачу размещаем слева.

Уведомление к задаче

В тексте уведомления в таком случае можно уже вставить ссылку непосредственно на Задачу: Вам поставлена [url=/company/personal/user/{=User:ID}/tasks/task/view/ {=A24388_98030_17242_51455:TaskId}/] новая задача[/url].

 

Где {=A24388_98030_17242_51455:TaskId} — ID задачи из вставки значения дополнительных результатов.

Уведомление

Задание и задача в одном флаконе

Порой пользователям сложно освоить задания Бизнес-процессов, они забывают где их искать или игнорируют. Также руководителям проще контролировать задачи, нежели задания. Но зато в заданиях больше автоматизации — запрос информации и дальнейшие действия на основе внесенных данных.

Поэтому иногда приходится совмещать эти действия.

Здесь есть два момента:

 

  1. В Задаче укажите ссылку на задание и напишите примечание, что задача завершится автоматически после выполнения задания.
  2. После задания необходимо установить либо 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] — красный цвет шрифта.

Блок и Мои действия

Если в вашем процессе часто повторяются какие-либо действия или конструкции, то поместите их в Блок действий, а блок в Мои действия дизайнера бизнес-процессов, это позволит быстро применять часто повторяющиеся схемы, которые Вы используете.

Блок действий

Импорт и экспорт бизнес-процесса

Порой необходимо продублировать процесс на другой портал или создать схожий бизнес-процесс. В этих случаях можно экспортировать существующий процесс и импортировать его куда нужно. Процесс импортируется в уже созданный пустой процесс. Если вы импортируете процесс в другой действующий процесс, то он перезапишется.

Для импорта в дизайнере бизнес-процесса нажимаем кнопку Импорт в верхнем меню.

Импорт
Импорт файла

Выбираем файл с бизнес-процессом и нажимаем импортировать. Готово! Не забудьте добавить адрес портала в ссылки с уведомлениями и заданиями, а также сохранить сам процесс.

Итератор

Если Вам нужно произвести ряд действий над несколькими элементами одно типа, например над Контактами или Компаниями, то здесь пригодится Итератор. Записываем все элементы в переменную типа строка.

Логирование

Как ни банально, но логирование помогает найти ошибку в процессе и понять что что-то идет не так. В дизайнере бизнес-процессов для этих целей есть действие Запись в отчет. Используйте его при разветвлениях, установке значений переменных и любых ключевых действиях. Потом вы скажете себе спасибо!

 

На скрине действие Запись в отчет названо Разветвление, там написано по какому пути пошел процесс.

Файл приложен

Наименование процессов

Всегда называйте процесс, даже в стадиях сделок и других сущностях CRM, так вам будет проще найти нужный процесс в логах и понять что происходит.

Создание БП
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
()
x