Создание бизнес-процесса¶
Бизнес-процесс представляет собой цепочку действий (подпроцессов), которые описывают основные регламенты и процедуры компании в простой и структурированной форме.
В Юниверс MDM для создания и настройки бизнес-процессов используется нотация BPMN 2.0, которая создает графические схемы процессов, а также позволяет загружать уже готовые описания в формате xml.
Также смотрите Концепция бизнес-процессов
Создание нового процесса¶
Чтобы создать бизнес-процесс:
Перейдите в раздел "Бизнес-процессы", если это не сделано ранее.
Включите режим черновика бизнес-процессов, нажав кнопку "Черновик". Создайте новый черновик или откройте существующий.
Убедитесь, что активна закладка "Бизнес-процессы", расположенная в верхней части списка процессов.
Нажмите кнопку "Создать бизнес-процесс", расположенную в нижней части списка, после чего откроется мастер создания бизнес-процессов.
Выберите способ создания процесса:
Загрузка файла: выберите необходимый файл процесса для загрузки (.xml/.bpmn), введите отображаемое имя процесса и подтвердите действие.
Выбрать шаблон: выберите необходимый шаблон из списка готовых, введите отображаемое имя процесса и подтвердите действие.
Заполнить вручную: введите основные параметры. Обязательные: идентификатор процесса (заполняется автоматически) и отображаемое имя. При необходимости заполните дополнительные параметры (будут доступны для редактирования позже), затем подтвердите действие.
Будет создан новый бизнес-процесс. В правой части экрана будет доступен ввод и редактирование основных настроек. Подробное описание см. в Панель настроек процесса. В основной части экрана отобразятся вкладки:
Схема. Подробное описание работы со схемой см. в Редактор схем.
Индексируемые переменные. Добавляют одну или несколько переменных, которые будут использоваться в ходе работы бизнес-процесса.
Назначение процессов (только для Enterprise Edition). Назначают бизнес-процесс на реестр/справочник. Для этого добавьте необходимые реестры/справочники, при изменении записей которых должен запускаться бизнес-процесс. В качестве условий запуска можно указать триггеры, что создают процесс на определенное действие. Например, запуск только при восстановлении записи.
Нажмите кнопку "Сохранить" в правом верхнем углу экрана.
Нажмите кнопку "Публикация черновика бизнес-процессов", расположенную в нижней части списка процессов. Выберите способ публикации: простая или публикация с приоритетом.
Примечание
Ограничение: Не рекомендуется назначать бизнес-процесс на реестр, имеющий связь "Включение". Если на такой реестр будет настроен бизнес-процесс, и будет создана запись со связью "Включение", то попытка публикации завершится ошибкой. Поддержка создание записей со вставкой связей "Включение" через бизнес-процесс планируется в будущих релизах. Назначение бизнес-процессов доступно только в Enterprise Edition.
Совет
Доступно скачивание схемы процесса в .bpmn формате с помощью кнопки "Скачать схему" в правом верхнем углу экрана. При экспорте схемы процесса не выгружаются поля базовых настроек процесса: "Только для запуска вручную" и "Описание".
Рисунок 1 - Добавление бизнес-процесса (пример отображения для Enterprise Edition)
Ограничения Standard Edition¶
Примечание
В редакции Standard Edition бизнес-процессы не привязаны к записи и реализовывают процессы создания заявок на добавление записей в систему.
В Standard Edition нет запуска бизнес-процесса при публикации черновика записи реестра/справочника (когда на этот реестр/справочник назначен процесс).
Однако, обработчик Draft publish service task доступен в ручном (поштучном) режиме, и может использоваться для публикации любого черновика, когда в процессе/задаче есть переменная draftId. Переменной можно указывать draftId при выполнении задачи или при старте процесса.
Применение при старте процесса:
В свойствах процесса включите флаг Включить запуск вручную (свойства доступны, когда ни один блок процесса не выделен).
Выделите на схеме блок Стартовое событие.
Включите Расширенную панель.
Во вкладке Формы добавьте поле формы draftId.
Id имя переменной процесса: draftId
Тип: long
Название: Draft ID
В результате при каждом запуске процесса будет необходимо указывать Draft ID для публикуемого черновика.
Применение при создании определенной задачи в процессе:
В свойствах процесса включите флаг Включить запуск вручную (свойства доступны, когда ни один блок процесса не выделен).
Выделите на схеме требуемый блок Задачи.
Включите Расширенную панель.
Во вкладке Формы добавьте поле формы draftId.
Id имя переменной процесса: draftId
Тип: long
Название: Draft ID
В результате при каждом согласовании задачи будет необходимо указывать Draft ID для публикуемого черновика.
Индексируемые переменные¶
Переменные организовывают взаимодействие между разными задачами в рамках одного экземпляра процесса, позволяют выполнять поиск экземпляров процесса и организовывать различную логику непосредственно в самой диаграмме процесса.
В переменных хранится вся информация о конкретном экземпляре процесса. Например, о модели процесса (схема + обработчики + модель переменных), об инициаторе, дате запуска процесса и т.д. Переменные индексируются в Opensearch.
В системе предусмотрен стандартный набор переменных, которые автоматически добавляются в каждый новый процесс. Также переменные можно создавать/редактировать в сервисных задачах и различных слушателях событий. Описание стандартных переменных см. в файле StandardWorkflowVariables.java.
Скачать StandardWorkflowVariables.java
Примечание
Исключение: переменные Time и Timestamp временно не могут быть использованы при кастомизации бизнес-процесса.
Тип индексируемой переменной всегда должен соответствовать типу поля формы для блока бизнес-процесса, использующему эту переменную. Например, переменная с типом Number (численный) не сможет валидировать поле формы задачи с типом long, так как он является целочисленным.
Создание и добавление переменных¶
На вкладке "Индексируемые переменные" раздела "Бизнес-процессы" доступно только объявление переменных.
Чтобы применить переменные, необходимо, чтобы бизнес-процесс получил информацию о переменных. Это можно сделать несколькими способами:
Заполнить форму с переменной (указать значение переменной) на одном из шагов бизнес-процесса во вкладке "Формы". Вкладка отображается пользователю при выборе определенного типа задачи (например, стартового события или задачи пользователя) в базовой или расширенной панели настроек процесса.
Создать слушателя событий в схеме процесса во вкладке "Слушатели" (доступна в базовой или расширенной панели настроек). Слушатель заполнит значение переменной.
Использовать собственную логику в пользовательском бизнес-процессе через кастомный java-класс.
Поиск экземпляра бизнес-процесса может производиться по переменным. Для того, чтобы переменная стала поисковой, ее необходимо добавить в список переменных (закладка "Индексируемые переменные"), задав ей имя и указав соответствующий тип.
Чтобы добавить переменную:
Убедитесь, что активна закладка "Индексируемые переменные".
Введите Имя и Отображаемое имя переменной.
Выберите Тип переменной из выпадающего списка и нажмите "Сохранить" в верхнем правом углу экрана.
Переменные, которые не настроены как поисковые (т.е. не добавлены в список в закладке "Индексируемые переменные"), не будут возвращаться при получении конкретной задачи или процесса, но будут храниться:
в схеме бизнес-процесса,
в сервисных задачах,
в слушателях событий,
в BPMN-диаграмме.
Назначение процессов¶
Во вкладке "Назначение процессов" раздела "Бизнес-процессы" можно назначить созданный бизнес-процесс на определенный реестр/справочник.
Чтобы назначить процесс:
Убедитесь, что активна закладка "Назначение процессов".
Нажмите кнопку Добавить и выберите требуемый реестр/справочник, на который необходимо назначить процесс.
Задайте условие запуска: Создание записи, Восстановление записи, Обновление записи, Восстановление периода или Все (по умолчанию).
Нажмите "Сохранить" в верхнем правом углу экрана.
Чтобы удалить назначение: