- Приложение для Битрикс24 "Лаборатория роботов"
- Приложение для Битрикс24 "Сквозная аналитика 2.0"
- Приложение для Битрикс24 "Уничтожитель дубликатов"
- Приложение для Битрикс24 "Межпортальные задачи"
- Приложение для Битрикс24 "Немой чат-бот"
- Приложение для Битрикс24 "Доходы и расходы CRM"
- Приложение для Битрикс24 "Досье компании"
- Приложение для Битрикс24 "Продуктивный Jivosite"
- Сервис обучения YGOAL
Получить список результатов задачи
- Выгрузка закреплённых итогов работы по задаче в переменные процесса без ручного просмотра карточки;
- Передача формулировок результатов в уведомления, задания и печатные формы следующих шагов;
- Организация цикла по идентификаторам результатов при помощи стандартного итератора бизнес-процесса;
- Проверка наличия хотя бы одного зафиксированного результата перед закрытием этапа сделки или проекта;
- Сбор текстов исполнителей для отчёта руководителю с сохранением исходного начертания и служебных пометок в тексте;
- Сопоставление количества результатов с ожидаемым числом этапов в регламенте;
- Подготовка данных для условного ветвления по первому или последнему идентификатору в списке;
- Получение ID результата для последующего снятия его роботом «Удалить комментарий из результата задачи»;
- Автоматическое уведомление ответственного о появлении нового результата по задаче.
- По указанному идентификатору задачи запрашивается список закреплённых результатов в порядке, который возвращает портал;
- Первые десять записей преобразуются в строки вида id##число##Автор##число##Текст##содержимое;
- В возвращаемые поля также попадают массив и строка с идентификаторами результатов, счётчик и признак наличия данных;
- При отсутствии результатов шаг завершается успешно, числовые поля остаются пустыми или нулевыми, строки результатов пустые.
В ответе списка результатов у записей есть поле commentId: в связке с чатом оно может принимать значения 0, 1, 2 и т.д. до появления сообщений из чата;
Не смешивайте его с попыткой автоматически привязать текст из чата — комментарий-результат в такой конфигурации обычно оформляется вручную, а роботы «Добавить комментарий в результат задачи» и «Удалить комментарий из результата задачи» работают только с ID комментария задачи из API.
Перед массовым внедрением проверьте сценарий на тестовой задаче.
После выполнения шага используйте возвращаемые поля в следующих действиях: текстовые поля «Результат 1»…«Результат 10» для разбора подстрок, массив для итератора, счётчик и признак наличия строк для условий.
| Название поля | Описание и примеры использования |
|---|---|
| ID задачи |
Обязательное поле. Идентификатор задачи, для которой нужно получить список закреплённых результатов. Примеры: - {=Variable:TASK_ID} — значение из переменной процесса; - {=Document:ID} — если бизнес-процесс запущен из задачи и документ соответствует этой сущности; - {=A1988_22222_92566_99999:id_task} — ID из результата активити, создавшего задачу. |
| Делать отладочные сообщения в журнал БП | Рекомендуется включать только при настройке сценария из-за дополнительной нагрузки и расхода запросов. |
| Запускать от имени | Пользователь, чьи права используются при обращении к задаче; при недостатке прав шаг завершится ошибкой доступа. |
| Описание примера | Решение |
|---|---|
| Задача из переменной процесса, первый результат в уведомление | ID задачи — {=Variable:ORDER_TASK_ID}; далее в письме использовать возвращаемое поле «Результат 1 (строка)». |
| Итератор по всем идентификаторам результатов | ID задачи — {=Variable:CONTROL_TASK}; в цикле использовать «Результат поиска (массив для итератора)». |
| Проверка, что хотя бы один результат зафиксирован | ID задачи — {=Document:ID}; условие по полю «Соответствует условиям» со значением Y после шага. |
| Разбор текста первой строки в отдельные переменные вручную | ID задачи — {=Variable:TASK_MAIN}; разделитель в строке — последовательность ##; извлечь фрагменты после ключей «Текст» и «Автор». |
| Передача последнего результата в комментарий к сделке | ID задачи — {=Variable:LINKED_TASK}; в следующем шаге взять «Последний найденный (строка)» или десятую строку, если результатов не больше десяти. |
| Счётчик результатов для отчёта | ID задачи — {=Variable:AUDIT_TASK}; использовать числовое поле «Количество найденных» в тексте задания руководителю. |
| Сценарий из карточки CRM, где ID задачи в пользовательском поле | ID задачи — {=Document:UF_CRM_TASK_ID} при условии, что в поле хранится целое число. |
| Сравнение первого и последнего идентификатора | ID задачи — {=Variable:TASK_ID}; сравнить «Первый найденный (строка)» и «Последний найденный (строка)» в условии бизнес-процесса. |
| Получение ID результата для последующего снятия закрепления | ID задачи — {=Document:ID}; из строки «Результат 1» извлечь ID результата (значение между первой парой ##) и передать его в поле «ID комментария» активити «Удалить комментарий из результата задачи». |
| Обработка пустой задачи без ошибки | ID задачи — {=Variable:MAYBE_EMPTY}; ветвление: если «Количество найденных» равно нулю, перейти к ветке «Результаты не оформлены». |
- Соответствует условиям — Y, если по задаче найден хотя бы один результат, N — если результатов нет;
- Количество найденных — общее число зафиксированных результатов по задаче;
- Результат поиска (массив для итератора) — массив ID найденных результатов, используется для организации цикла;
- Результат поиска (строка) — все ID результатов через запятую;
- Первый найденный (строка) — ID первого результата в списке;
- Последний найденный (строка) — ID последнего результата в списке;
- Результат 1…Результат 10 (строка) — до десяти строк вида id##ID результата##Автор##ID автора##Текст##текст результата, по одной строке на каждый найденный результат в порядке ответа портала;
- Логи ошибок — строка с количеством найденных результатов либо с описанием ошибки, если запрос не выполнен.
Примеры использования возвращаемых параметров:
- Передать «Результат поиска (массив для итератора)» в итератор для последовательной обработки всех результатов;
- Разобрать строку «Результат 1» функцией explode по разделителю ##, чтобы получить отдельно ID, автора и текст;
- Использовать «Соответствует условиям» в проверке перед постановкой зависимой задачи.
Строки «Результат 1»…«Результат 10» - содержат данные только по первым десяти найденным результатам и включают исходный текст с сохранением служебных пометок разметки в том виде, в котором его отдаёт портал.
Пустая строка означает отсутствие результата в данной позиции списка.
Для полного перечня, если результатов больше десяти, используйте «Результат поиска (массив для итератора)».