Виджет «Связанные процессы»

Виджет «Связанные процессы» показывает в карточке процесса связанные с ним процессы и позволяет создавать новые прямо из задачи. Виджет размещается на пользовательской задаче BPMN-схемы и настраивается графически, без правки конфигурации типа процесса.
Это не то же самое, что вкладка «Связанные процессы» в обычной карточке. Та вкладка настраивается параметрами processShowProcessLinks и processCreateLink.<n> в конфигурации типа процесса и работает независимо от BPMN. Виджет же живёт внутри задачи BPMN-процесса, и его настройки хранятся в самой схеме.

Что видит пользователь

Виджет отображается в карточке процесса внутри блока задачи и состоит из двух списков — Родительские и Дочерние. Показывается только то, что включил администратор: если какой-то из списков отключён или в нём нет процессов, он не выводится вовсе.

Каждая строка списка — это краткое описание связанного процесса. Что именно в нём написано, определяется настройкой описания в конфигурации типа связанного процесса; если описание не задано, выводится название типа процесса.

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

Если ни одного подходящего связанного процесса нет, вместо списков выводится красная надпись «Отсутствуют связанные процессы».

Постраничный вывод

Дочерние процессы выводятся постранично, по 5 записей. Пагинация страниц появляется только тогда, когда процессов больше, чем помещается на страницу. Родительские процессы выводятся полностью, без разбиения.

Сортировка по алфавиту работает в пределах текущей страницы, а не сквозным списком. На второй странице порядок начнётся заново — так задумано, порядок между страницами определяет сервер.

Создание связанного процесса

Если администратор включил кнопку создания, под списками выводится кнопка (по умолчанию — Создать, название задаёт администратор).

Что происходит по нажатию, зависит от настроек:

  • если администратор разрешил только один тип процесса — процесс создаётся сразу, без вопросов;

  • если типов несколько — поверх виджета открывается окно выбора типа с кнопками Отмена и Создать;

  • если ни одного доступного типа не нашлось — выводится сообщение об ошибке.

Созданный процесс привязывается к текущему способом «Порождён» (см. типы связей) и сразу появляется в списке дочерних. Если администратор включил соответствующую настройку, карточка созданного процесса откроется автоматически.

Обязательный виджет

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

Списки обновляются сами, без перезагрузки карточки: при создании процесса — как из этого виджета, так и из соседнего — виджет обновится в течение секунды.

Настройка на схеме

Настройки задаются в редакторе BPMN-схемы: выберите пользовательскую задачу, добавьте виджет «Связанные процессы» и заполните его свойства.

Название раздела

Заголовок блока, который увидит пользователь в карточке.

Обязательный

Задача не может быть завершена, пока виджет не наберёт хотя бы один связанный процесс.

Обязательность проверяется только по тем направлениям связи, которые виджет отображает. Если включены и родительские, и дочерние, достаточно наличия процесса в любом из списков. Если включено только одно направление — проверяется только оно.
При включённой обязательности необходимо заполнить Отображаемые типы процессов, иначе редактор покажет ошибку «Не выбраны типы процессов!». Без указания типов проверка не имеет смысла.

Включить кнопку «Создать»

Показывает пользователю кнопку создания связанного процесса. При включении раскрываются дополнительные настройки:

Название кнопки — текст на кнопке. Если не заполнено, выводится «Создать».

Открывать карточку созданного процесса — сразу после создания открыть карточку нового процесса.

При выключении кнопки обе вложенные настройки сбрасываются.

Показывать статус

Выводит рядом с каждым процессом цветную метку с его статусом. Метка кликабельна и ведёт в карточку процесса.

Открывать процессы в новой вкладке

Определяет, как открывать процессы из виджета — по клику на метку статуса и при автоматическом открытии созданного процесса.

Выключено (по умолчанию) — процесс открывается в текущем окне. Включено — в новой вкладке браузера.

Отображаемые типы связей

Определяет, какие списки увидит пользователь.

Родительские — процессы, к которым привязан текущий. По умолчанию выключено.

Дочерние — процессы, привязанные к текущему. По умолчанию включено.

Отображаемые типы процессов

Ограничивает виджет процессами выбранных типов. Настройка работает сразу на две вещи: по ней фильтруются оба списка и из неё же формируется выбор типа при создании процесса.

Отдельный пункт _Любой снимает ограничение: виджет покажет связанные процессы всех типов, а при создании предложит выбрать из всех типов системы. Выбор _Любой отключает остальные пункты списка — их нельзя комбинировать.

Типичные конфигурации

Показать дочерние процессы, без создания. Отображаемые типы связей — только «Дочерние». Кнопка «Создать» выключена. Типы процессов — нужные либо «_Любой».

Потребовать создание заявки перед переходом дальше. Отметить «Обязательный». Отображаемые типы связей — «Дочерние». Указать конкретный тип процесса. Включить кнопку «Создать». Тогда пользователь не сможет пройти задачу, пока не создаст заявку нужного типа — а поскольку тип один, она создастся в одно нажатие.

Показать, из чего порождён текущий процесс. Отображаемые типы связей — только «Родительские». Кнопка «Создать» выключена.

Если что-то идёт не так

Список пуст, хотя связанные процессы есть. Проверьте «Отображаемые типы процессов»: виджет показывает только выбранные типы. Убедитесь также, что включено нужное направление связи.

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

В окне выбора при создании нет нужного типа. Список типов при создании берётся из «Отображаемые типы процессов». Добавьте тип в настройку либо выберите «_Любой».