Платформа 3V/Согласование/Статусы и шаги: различия между версиями

Материал из 3v-wiki
Перейти к навигации Перейти к поиску
Строка 95: Строка 95:
 
* workflowId - идентификатор объекта согласования, который будет запускаться как подпроцесс.<br>
 
* workflowId - идентификатор объекта согласования, который будет запускаться как подпроцесс.<br>
 
* parameterMappings - настройка связи значения параметра основного процесса и параметра подпроцесса.<br>
 
* parameterMappings - настройка связи значения параметра основного процесса и параметра подпроцесса.<br>
 +
* subProcessNameTemplate - настройка шаблона для выводимого наименования подпроцесса. Применяется настройка только в источниках согласования. Добавлены подстановки для SubProcessNameTemplate:<br>
 +
- SubProcessName - наименование подпроцесса из модели родительского процесса<br>
 +
- StateName - наименование текущего состояния подпроцесса<br>
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px; overflow:auto;">
 +
<div style="font-weight:bold;line-height:1.6;">JSON применения настройки SubProcessNameTemplate</div>
 +
<div class="mw-collapsible-content mw-collapsed-content">
 +
<syntaxhighlight lang="JSON" line>
 +
"subProcesses": [
 +
            {
 +
              "workflowId": 172492,
 +
              "name": "Подпроцесс 1",
 +
              "parameterMappings": [],
 +
              "subProcessNameTemplate": "%SubProcessName% - %StateName%"
 +
            },
 +
            {
 +
              "workflowId": 172488,
 +
              "name": "Подпроцесс 2",
 +
              "parameterMappings": [],
 +
              "subProcessNameTemplate": null
 +
            }
 +
          ]
 +
</syntaxhighlight>
 +
</div></div>
 +
 
'''!Важно:''' Подпроцессы не имеют схождений с основным процессом, запускаются только вручную и выполняются параллельно. <br>
 
'''!Важно:''' Подпроцессы не имеют схождений с основным процессом, запускаются только вручную и выполняются параллельно. <br>
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px; overflow:auto;">

Версия 09:22, 9 февраля 2022

Схема согласования состоит из состояний (states) и шагов (steps).

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

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

JSON-модель схемы согласования

Настройка состояний (states)

Пример JSON-модели состояний

Основные свойства настройки состояний:

Id – идентификатор состояния

localizedName – наименование состояния, можно настроить локализацию на английском и русском языках.

localizedComment – комментарий для состояния. Можно использовать как дополнительное свойство, которое будет, например, относить состояние к определенному этапу.

subProcesses – настройка подпроцессов
Для состояния можно настроить несколько подпроцессов. Доступны следующие настройки:

  • localizedName - наименование подпроцесса, которое будет выводиться в списке действий для состояния. Можно настроить локализацию на английском и русском языках.
  • workflowId - идентификатор объекта согласования, который будет запускаться как подпроцесс.
  • parameterMappings - настройка связи значения параметра основного процесса и параметра подпроцесса.
  • subProcessNameTemplate - настройка шаблона для выводимого наименования подпроцесса. Применяется настройка только в источниках согласования. Добавлены подстановки для SubProcessNameTemplate:
- SubProcessName - наименование подпроцесса из модели родительского процесса
- StateName - наименование текущего состояния подпроцесса
JSON применения настройки SubProcessNameTemplate

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

JSON-модель подпроцесса

Regulation – настройка регламента выполнения задачи (состояния). В качестве регламента можно:

1. задать дату, к моменту которой должно быть завершено текущее состояние процесса

JSON пример

2. задать период времени для завершения состояния (год, квартал, месяц, день, час)

JSON пример

!Важно: Свойство expiringNotificationPeriodMinutes отвечает за рассылку уведомлений при приближении срока выполнения. Если минуты заданы, то за указанное время будет выслано уведомление, которое указано в notifications в разделе regulation. Если данное свойство null, то уведомление при приближении срока отправляться не будет.

dataAvailabilitySettings – настройка, которая отвечает за блокировку редактирования данных при запущенном процессе. По умолчанию блокирует "disableEdit": false


Настройка шагов, действий перехода из одного состояния в другое (steps)

Пример JSON-модели действий

Основные свойства настройки действий:

Id – идентификатор действия

localizedName – наименование состояния, можно настроить локализацию на английском и русском языках

fromStateId – идентификатор состояния, из которого совершается действие

toStateId - идентификатор состояния, в которое совершается действие