Процессы

Шаблоны маршрутов

Шаблон маршрута - преднастроенный маршрут, копия которого будет создана и задействована в момент запуска шаблона маршрута.

Шаблон маршрута может содержать все виды процессов, включая процессы действия (кроме процесса «Таймер», во избежание возможности создания бесконечного рекурсивного маршрута) - параметры для них должны быть взяты из контекста запускаемого шаблона маршрута (например, реестра, содержащего процесс, запускающий шаблон).

Атрибуты шаблона маршрута:

  • «Название» (обяз.)

  • «Код». По умолчанию, поле пустое. Обязательно для заполнения.

  • маршрут

Поле «Код» заполняется автоматически из названия шаблона маршрута с заменой пробелов знаком "_". Значение данного поля должно быть уникальным, оно не должно начинаться с цифры и содержать пробелы.

Основная рабочая область содержит редактор маршрутов, представленный в одном из видов:

  • Маршрут (включено по умолчанию) - редактор маршрутов аналогичен описанному в разделе Реестры.

  • Бизнес-процесс - редактор маршрутов представлен элементами стандарта BPMN.

Примечание

Для редактора маршрутов в данном подразделе не доступны типы процессов «Таймер» и «Сопоставление записей реестра».

Графический редактор маршрутов

Графический редактор маршрутов представлен в виде основной рабочей области и специфических элементов, располагающихся в ней.

Элементы графического редактора

Элементы:

  • событие «Начало»;

  • событие «Конец»;

  • событие «Остановка»;

  • «Задача»;

  • логический оператор «И»;

  • логический оператор «Исключающее ИЛИ»;

  • поток управления.

Все элементы имеют статичные размеры. Элементы можно переместить, причем согласно шагам сетки.

Если на элемент наведен курсор - контуры элемента подсвечиваются желтым цветом. Подсвечивание стрелки осуществимо в радиусе 5 px от нее. Стрелку невозможно выделить.

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

Для упрощения последующего описания задачи типа следующие задачи в дальнейшем будут называться как «задачи с условием»:

  • «Согласование»;

  • «Утверждение»;

  • «Регистрация»;

  • «Запуск маршрута по шаблону»;

  • «Ввод значения показателей»;

  • «Условный переход»;

  • «Перевод»;

  • «Назначение на должность»;

  • «Увольнение»;

  • «Таймер»;

  • «Копировать в личное дело»;

  • «Назначение календаря»;

  • «Результат запроса»;

  • «Работа по форме»;

  • «Переназначение работ»;

  • «Сопоставление записей реестра».

Событие «Начало»

Рисунок 4.156. Событие «Начало»

Событие «Начало»

Представляет собой элемент начала бизнес-процесса.

Событие «Конец»

Рисунок 4.157. Событие «Конец»

Событие «Конец»

Представляет собой элемент успешного окончания бизнес-процесса.

Событие «Остановка»

Рисунок 4.158. Событие «Остановка»

Событие «Остановка»

Представляет собой элемент неуспешного окончания бизнес-процесса. Данный элемент добавляется автоматически для задач с условием и объединен с логическим оператором «Исключающее ИЛИ» отрицательным потоком.

Логический оператор «И»

Рисунок 4.159. Логический оператор «И»

Логический оператор «И»

Представляет собой элемент, синхронизирующий выполнение параллельных задач. При добавлении параллельной задачи автоматически добавляются два логических оператора «И». При этом эти элементы объединяют группу задач следующим образом:

  • все входящие потоки управления группы задач идут от первого элемента «И»;

  • все исходящие потоки управления группы задач идут к второму элементу «И».

В виду своей специфичности случай параллельности задач с условием рассмотрен отдельно

Логический оператор «Исключающее ИЛИ»

Рисунок 4.160. Логический оператор «Исключающее ИЛИ»

Логический оператор «Исключающее ИЛИ»

Данный элемент добавляется автоматически и только для задач с условием. В случае отсутствия возврата для этих задач также автоматически добавляется элемент «Остановка».

Примечание

В случае, если одна задача имеет код, совпадающий с порядковым номером другой задачи, то приоритет возврата отдается задаче с кодом.

При смене типа действия на любой другой, но без условия элемент «Исключающее ИЛИ» удаляется автоматически.

Поток управления

Рисунок 4.161. Поток управления

Поток управления

Представляет собой порядок выполнения действий. Потоки невозможно удалить. Существуют три типа потоков:

  • положительный - определяет дальнейший ход маршрута;

  • отрицательный (окрашен красным цветом) - приводит маршрут к остановке либо возврату на предыдущий этап;

  • отсутствие перехода - возможен только для этапа «Условный переход»

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

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

При смене типа действия задачи лейбл положительного потока не изменяется. Исключением является задача «Условный переход» - при изменении типа действия на любой другой лейблы присваиваются по умолчанию согласно новому типу.

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

При удалении задач лейблы их исходящих потоков будут удалены.

По умолчанию данные лейблы имеют пустое значение, за исключением процессов:

  • задачи с условием (кроме типа «Условный переход»):

    • отрицательный поток: -;

  • «Условный переход»:

    • отрицательный поток: -;

    • положительные потоки переходов представлены в формате:

      %ID% %Условие% %Значение%

    • положительные потоки для переходов по умолчанию: Переход по умолчанию

Примечание

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

Если таким потоком являются несколько возвратов / остановок, то для них лейбл будет отображать один знак -.

Задача

Рисунок 4.162. Пользовательская задача

Пользовательская задача

Рисунок 4.163. Задача-сервис

Задача-сервис

Рисунок 4.164. Задача-подпроцесс

Задача-подпроцесс

Представляет собой элемент этапа. Элемент имеет три типа, которые отличаются иконкой:

  • пользовательская задача - для процессов:

    • «Работа»;

    • «Согласование»;

    • «Утверждение»;

    • «Ознакомление»;

    • «Резолюция»;

    • «Регистрация»;

  • задача-сервис - для процессов:

    • «Блокирующий процесс»;

    • «Отправка документа»;

    • «Отправка документа по форме»;

    • «Назначение на должность»;

    • «Перевод»;

    • «Увольнение»;

    • «Копировать в личное дело»;

    • «Назначение календаря»;

    • «Событие реестра»;

    • «Результат запроса»;

    • «Работа по форме»;

    • «Ввод значения показателей»;

    • «Таймер»;

    • «Условный переход»;

    • «Копирование в карточку»;

    • «Переназначение работ»;

    • «Сопоставление записей реестра»;

  • задача-подпроцесс - для процессов:

    • «Маршрут»;

    • «Запуск маршрута по шаблону»;

    • шаблоны маршрутов процесса «Условный переход».

Задаче можно изменить лейбы тем же способом, что и для элемента «Поток управления». По умолчанию данный элемент содержит лейбл с номером этапа и названием процесса в формате:

%Номер_этапа%. %Название_процесса%

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

Шаблон маршрута

Данное поле можно сохранить пустым. В таком случае ввод лейбла осуществляется двойным нажатием на сам элемент.

При смене типа действия задачи значение лейбла зависит от его предыдущего состояния:

  • если лейбл был изменен - он остается неизменным;

  • если лейбл никогда не был изменен - он сбросит на значение по умолчанию с названием нового типа задачи.

В виду их специфичности, задачи «Работа по форме» и «Условный переход» с ее подпроцессом шаблон маршрута будут рассмотрены отдельно.

Работа по форме

Данный тип задачи может иметь два элемента «Остановка», либо одну «Остановку» и возврат на предыдущий этап. Условием такого поведения является выбор этапов «Согласование» или «Утверждение» в качестве типа работы.

Последовательная работа по форме

В данном случае задача имеет один логический оператор «Исключающее ИЛИ». Количество отрицательных потоков зависит от типа работы.

В случае выбора типа «Работа» или «Ознакомление» задача имеет один отрицательный поток, ведущий к элементу «Остановка».

Если же выбрано «Согласование» либо «Утверждение», возникает следующее:

  • если для данных типов не настроен возврат, отображается один общий отрицательный поток, ведущий к элементу «Остановка»;

  • если настроен возврат на предыдущий этап - из оператора «Исключающее ИЛИ» ведут два отрицательных потока:

    • к элементу «Остановка»;

    • непосредственно возврат к этапу.

Рисунок 4.165. Последовательная работа по форме (тип работы «Работа»/«Ознакомление»)

Последовательная работа по форме (тип работы «Работа»/«Ознакомление»)

Рисунок 4.166. Последовательная работа по форме (тип работы «Согласование»/«Утверждение», возврат)

Последовательная работа по форме (тип работы «Согласование»/«Утверждение», возврат)

Условный переход

Последовательный условный переход

Исходящие потоки оператора «Исключающего ИЛИ» определяют переходы задачи данного типа. Эти переходы могут быть представлены запуском шаблона маршрутов, переходами к этапу и переходом по умолчанию.

Если задача «Условный переход» не имеет ни одного перехода с запуском шаблона маршрута, то для нее отображается один оператор «Исключающее ИЛИ».

При наличии хотя бы одного перехода с запуском шаблона маршрута задача «Условный переход» имеет два логических оператора «Исключающее ИЛИ», объединяющих ее переходы. Первый оператор предназначен для определения условий для дальнейшего перехода, а второй - для выбора последующего действия по задаче.

Рисунок 4.167. Условный переход в группе параллельных задач

Условный переход в группе параллельных задач

Исходящими потоками элемента XOR1 являются:

  • положительные потоки управления, представляющие собой условия переходов;

  • поток для переходов к этапу / по умолчанию, либо при отсутствии условий для всех переходов.

Исходящими потоками элемента XOR2 являются:

  • положительные потоки управления, представляющие собой переходы на этапы согласно их условиям;

  • отрицательный поток управления, предназначенный для остановки маршрута в случае, если ни одно условие для перехода не было достигнуто;

  • отрицательный поток управления, определяющий возврат самой задачи «Условный переход».

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

При создании / изменении этапа «Условный переход» таким образом, что переход будет установлен на несуществующий этап, то он будет осуществляться на автоматически создаваемое событие «Остановка». В момент, когда такой этап будет создан, событие «Остановка» автоматически удалится, и поток первоначального перехода будет вести к этому этапу.

При удалении задачи типа «Условный переход», либо изменении ее типа также будут удалены все связанные с ней шаблоны маршрутов, а также переходы к этапу / по умолчанию.

Рисунок 4.168. Последовательный условный переход: 2 шаблона, 2 перехода

Последовательный условный переход: 2 шаблона, 2 перехода

Рисунок 4.169. Последовательный условный переход: 2 шаблона

Последовательный условный переход: 2 шаблона

Рисунок 4.170. Последовательный условный переход: 2 перехода

Последовательный условный переход: 2 перехода

Условный переход без перехода на следующий элемент

Если этап «Условный переход» был создан / изменен таким образом, что ни один переход не будет вести на следующую задачу / событие «Конец», то от первого логического оператора «Исключающее ИЛИ» добавится отрицательный поток к следующей задаче / событию «Конец». Данный поток будет содержать лейбл:

Нет условий для этого перехода

Данный поток будет автоматически удален в случае добавления какого-либо перехода на следующую задачу.

Рисунок 4.171. Условный переход без перехода на следующий элемент

Условный переход без перехода на следующий элемент

Шаблон маршрутов задачи «Условный переход»

Данный тип задачи добавляется автоматически при наличии перехода с запуском маршрута по шаблону.

При выделении шаблона маршрута панель редактирования отображется пустой.

Данный элемент невозможно удалить отдельно. Он автоматически удаляется вместе с задачей «Условный переход», к которой он относится.

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

Параллельные задачи с условием

Параллельные задачи с условием делятся на два типа:

Задачи, неуспешное завершение которых ведет к остановке всего маршрута

  • «Перевод»;

  • «Назначение на должность»;

  • «Увольнение»;

  • «Таймер»;

  • «Копировать в личное дело»;

  • «Назначение календаря»;

  • «Результат запроса»;

  • «Работа по форме»;

  • «Переназначение работ»;

  • «Сопоставление записей реестра».

Возврат доступен только для задачи типа «Работа по форме» (для типов работ «Согласование» и «Утверждение»).

Для перечисленных выше задач логический оператор «Исключающее ИЛИ» добавляется внутри группы логических операторов «И». То есть остановка, либо возврат (только для задачи «Работа по форме») осуществляется без ожидания окончания остальных параллельных этапов.

Задачи, которые при неуспешном завершении будут ожидать окончания всех параллельных этапов, и только потом приведут к остановке маршрута, либо возврату

  • «Согласование»;

  • «Утверждение»;

  • «Регистрация»;

  • «Работа по форме» (для типов работ «Согласование» и «Утверждение»);

  • «Запуск маршрута по шаблону»;

  • «Ввод значения показателей»;

  • «Условный переход»

Для этих задач логический оператор «Исключающее ИЛИ» добавляется после второго логического оператора «И». Таким образом возврат, либо остановка таких задач будут ожидать окончания всех параллельных этапов.

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

Рисунок 4.172. Параллельный условный переход: 2 шаблона, 2 перехода

Параллельный условный переход: 2 шаблона, 2 перехода

Рисунок 4.173. Параллельный условный переход: 2 шаблона

Параллельный условный переход: 2 шаблона

Рисунок 4.174. Параллельный условный переход: 2 перехода

Параллельный условный переход: 2 перехода

Параллельная работа по форме

При наличии такой задачи в группе параллельных ее отображение зависит от типа работы.

В случае, если в качестве типа работы выбрано «Работа» или «Ознакомление» задача имеет единственный логический оператор «Исключающее ИЛИ», объединенный отрицательным потоком с элементом «Остановка».

Если же типом работы выбрано «Согласование» или «Утверждение», то задача будет иметь два оператора «Исключающее ИЛИ»:

  • Первый располагается после самой задачи и отрицательным потоком ведет к элементу «Остановка» - данное условие подразумевает успешность задачи «Работа по форме».

  • После синхронизирующего оператора «И» - такое условие определяет успешность этапа «Согласование» или «Утверждение». Может быть представлено в виде возврата на предыдущий этап.

Если в группу параллельных задач входят иные задачи с условием, элементы «Исключающее ИЛИ» и «Остановка» (при наличии), располагающиеся после синхронизирующего оператора «И», будут общими.

Рисунок 4.175. Параллельная работа по форме (тип работы «Работа»/«Ознакомление»)

Параллельная работа по форме (тип работы «Работа»/«Ознакомление»)

Рисунок 4.176. Параллельная работа по форме (тип работы «Согласование»/«Утверждение», возврат)

Параллельная работа по форме (тип работы «Согласование»/«Утверждение», возврат)

Действия с элементами

Добавление

Добавление элементов осуществляется через потоки управления или задачу. При наведении курсором мыши на элемент отобразится кнопка +. По нажатию на кнопку отобразится палитра, содержащая элемент «Задача». Кнопка + и палитра отображаются в месте наведения / нажатия курсора.

Добавление элементов невозможно для потоков управления:

  • между операторами «Исключащее ИЛИ» и «И»;

  • между операторами «И» и «Исключащее ИЛИ»;

  • между задачей и «Исключающем ИЛИ», относящимся к ней же;

  • в отрицательный поток управления.

Добавление параллельной задачи

Добавление параллельной задачи осуществимо несколькими способами:

  • при указании нескольких ответственных за исполнение какой-либо задачи (добавится столько задач, сколько и указано ответственных);

  • добавление от элемента «Задача»;

  • добавление в потоки управления, связывающие группу параллельных задач.

В первых случаях также автоматически добавляются два логических оператора «И», объединяющие новую группу параллельных задач.

Сами задачи добавляются справа от крайней правой задачи группы параллельных задач.

Добавление последовательной задачи

При выборе элемента «Задача» он добавляется в тот поток управления, из которого была открыта палитра элементов. Добавленная задача станет выделенной, а в панели редактирования поля примут значения по умолчанию (как при добавлении нового этапа в режиме «Маршрут»).

При добавлении задач с условием также добавится логический оператор «Исключающее ИЛИ» и потоки управления с их лейблами согласно настройкам в панели редактирования.

Удаление

Удаление доступно только для элементов типа «Задача». Данные элементы имеют контекстное меню с пунктом «Удалить».

При удалении задач, связанных исходящим потоком с логическим оператором «Исключающее ИЛИ» автоматически удалится он, а также все связанные с ним переходы и возвраты / события «Остановка».

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

Для сохранения изменений разработчик Synergy нажимает на кнопку «Сохранить». Возможно исполнение альтернативного потока событий 1-3.

Редактирование существующего шаблона.

Для редактирования существующего шаблона разработчик Synergy вызывает его контекстное меню и выбирает пункт «Редактировать» либо нажимает двойным кликом по строке шаблона: откроется то же окно, но с заполненными данными.

Статус шаблона.

Шаблон маршрута можно скрыть, предотвратив последующее его использование, выбрав «Скрыть» в его контекстном меню (обратить это действие можно, выбрав «скрытый» шаблон и нажав «Восстановить» в его контекстном меню). Соответствующие значения статуса шаблона отображаются в столбце «Статус».

Альтернативные потоки событий.

Альтернативный поток №1. Заполните обязательные поля.

Текущее действие выполнено не будет. Незаполненные обязательные поля будут подсвечены красным.

Альтернативный поток №2. Введенный код не уникален.

Шаблон маршрута не сохраняется. Поле подсвечивается красным, система информирует:

Данный код уже используется

Альтернативный поток №3. Процесс содержит лишь события «Начало» и «Конец».

Шаблон маршрута не сохраняется. Поле подсвечивается красным, система информирует:

Маршрут не может быть пустым