Завдання 4. Моделювання бізнес-процесу зі стартовою формою та залежними компонентами на формах
- 1. Мета завдання
- 2. Передумови
- 3. Процес виконання завдання
- 3.1. Моделювання бізнес-процесу
- 3.1.1. Етапи моделювання бізнес-процесу
- 3.1.2. Створення пулу для бізнес-процесу
- 3.1.3. Створення початкової події
- 3.1.4. Створення скрипт задачі "Підготовка змінних для отримання запису"
- 3.1.5. Створення сервісної задачі "Пошук даних про лабораторію"
- 3.1.6. Створення скрипт задачі "Підготовка даних документа для показу (transient var)"
- 3.1.7. Створення події опрацювання помилки
- 3.1.8. Створення користувацької задачі "Додати дані про кадри"
- 3.1.9. Створення користувацької задачі "Підписати дані КЕП"
- 3.1.10. Створення скрипт задачі для підготовки даних для запису (transient var)
- 3.1.11. Створення сервісної задачі "Зберегти дані в Дата-фабрику".
- 3.1.12. Створення сервісної задачі "Встановити результат БП".
- 3.1.13. Створення кінцевої події
- 3.2. Моделювання форм
- 3.3. Моделювання доступу до бізнес-процесу
- 3.1. Моделювання бізнес-процесу
- 4. Завантаження файлів регламенту до віддаленого репозиторію Gerrit
1. Мета завдання
- Виконання цього завдання має на меті:
-
-
Навчити моделювати бізнес-процес, який має стартову форму.
-
Навчити моделювати форми з залежними компонентами та компонентом Edit-grid.
-
2. Передумови
Перед проходженням завдання необхідно виконати наступні передумови:
3. Процес виконання завдання
3.1. Моделювання бізнес-процесу
На етапі моделювання бізнес-процесу необхідно створити та зберегти відповідну BPMN-діаграму. Використовуйте файл add-personnel.bpmn із готовою схемою бізнес-процесу для прикладу. |
3.1.1. Етапи моделювання бізнес-процесу
Під час виконання цього етапу пропонуємо скористатися наведеним нижче чеклістом з переліком кроків моделювання процесу.
Важливо! Після проходження всіх етапів, не забудьте зберегти змодельовану схему бізнес-процесу до відповідної папки з регламентом реєстру |
3.1.2. Створення пулу для бізнес-процесу
Найперше, змоделюйте пул для бізнес-процесу. Для цього виконайте наступні кроки:
-
Відкрийте додаток Camunda Modeler та створіть нову діаграму BPMN. Для цього у лівому верхньому куті натисніть меню File → New File → BPMN Diagram.
-
На панелі інструментів, зліва, знайдіть елемент Create pool/Participant, перетягніть його до панелі моделювання та заповніть у розділі General наступні поля відповідними значеннями:
-
у полі
Name
введітьВнесення даних в кадровий склад
; -
у полі
Process id
введітьadd-personnel
; -
у полі
Process name
вкажітьВнесення даних в кадровий склад
:
-
3.1.3. Створення початкової події
Створіть початкову подію. Для цього виконайте наступні кроки:
-
На панелі інструментів, зліва, знайдіть елемент (коло) CreateStartEvent та перетягніть його до панелі моделювання.
-
На панелі налаштувань, справа, у розділі General заповніть наступні параметри відповідними значеннями:
-
у поле
Id
введітьstart_event
; -
у поле
Name
введітьПочаток процесу
; -
у поле
Initiator
введітьinitiator
;
-
-
У розділі Forms у поле
Form key
введітьshared-search-lab
:
3.1.4. Створення скрипт задачі "Підготовка змінних для отримання запису"
Заповніть наступні поля:
-
Id
-extractLabIdFromFormActivity
; -
Name
-Підготовка зміних для отримання запису
; -
Script Format
-groovy
; -
Script Type
-InlineScript
; -
Result Variable
-laboratoryId
.
Script
submission('start_event').formData.prop('laboratory').prop('laboratoryId').value()
3.1.5. Створення сервісної задачі "Пошук даних про лабораторію"
Далі необхідно створити сервісну задачу (Service Task) для пошуку даних про лабораторію. Для цього виконайте наступні кроки:
Вкажіть тип задачі, натиснувши іконку ключа та обравши з меню пункт Service Task.
-
Натисніть
Open Catalog
, оберіть шаблон Read entity from data factory та натиснітьApply
для підтвердження; -
Заповніть наступні поля:
-
у поле
Id
введітьsearchLabInDataFactoryActivity
-
у полі
Name
має бути вказаноПошук даних про лабораторію
; -
у полі
Resource
- laboratory; -
у полі
Resource id
-${laboratoryId}
; -
у полі
X-Access-Token
-${initiator().accessToken}
;Після відпрацювання першої користувацької задачі (User Task), намагайтеся використовувати функцію
completer('<task_id>')
для отримання даних користувача, замістьinitiator()
.Токен доступу береться з АБО ініціатора (наприклад,
$initiator().accessToken}
), АБО виконавця останньої користувацької задачі (наприклад,${completer('taskDefinitionId').accessToken}
).JWT-токен має свій термін дії, який триває 300 секунд. Якщо вказати токен ініціатора, який запустив бізнес-процес, а користувач довго не виконував задачу, то термін дії токена спливе, й бізнес-процес необхідно буде запускати повторно.
Детальніше про JUEL-функції ви можете переглянути на сторінці JUEL-функції у бізнес-процесах.
-
у полі
Result Variable
-labResponse
:
-
3.1.6. Створення скрипт задачі "Підготовка даних документа для показу (transient var)"
-
Заповніть наступні поля:
-
у поле
Id
введітьextractAddPersonnelFormPrepopulationActivity
; -
у полі
Name
має бути вказаноПідготовка даних документа для показу (transient var)
; -
Script Format
-groovy
; -
Script Type
-InlineScript
;
-
Script
var name = labResponse.responseBody.prop('name').value() var edrpou = labResponse.responseBody.prop('edrpou').value() var cephData = ['edrpou':edrpou,'name':name]
execution.removeVariable('payload') set_transient_variable('payload', S(cephData, 'application/json'))
3.1.7. Створення події опрацювання помилки
-
Перетягніть Intermediate/Boundary event з панелі інструментів, та додайте його до Сервісної задачі “Пошук даних про лабораторію”.
-
Натисніть на іконку "ключа" та вкажіть тип події
Error Boundary Event
. -
Створіть Gateway, який буде виконувати роль контрольної точки для перенаправлення у разі виникнення помилки.
-
Додайте логіку опрацювання помилки за допомогою з’єднання події Error Boundary Event та XOR-шлюзу Gateway. У результаті, при виникненні помилки на етапі “Пошуку даних про лабораторію”, користувач автоматично повернеться у контрольну точку, з якої заново почнеться виконання процесу.
Компоненти моделювання |
3.1.8. Створення користувацької задачі "Додати дані про кадри"
-
Вкажіть тип задачі, натиснувши іконку ключа та обравши з меню пункт User Task.
-
натисніть
Open Catalog
, оберіть шаблон User Form та натиснітьApply
для підтвердження; -
заповніть наступні поля:
-
Id
-addPersonnelFormActivity
; -
Name
-Додати дані про кадри
; -
Form key
-add-personnel-bp-add-personnel
; -
Assignee
-${initiator}
; -
Form data pre-population
-${payload}
:
-
3.1.9. Створення користувацької задачі "Підписати дані КЕП"
-
Вкажіть тип задачі, натиснувши іконку ключа та обравши з меню пункт User Task.
-
натисніть
Open Catalog
, оберіть шаблон Officer Sign Task та натиснітьApply
для підтвердження; -
заповніть наступні поля:
-
Id
-signPersonnelFormActivity
; -
Name
-Підписати дані КЕП
; -
Form key
-add-personnel-bp-sign-personnel
; -
Assignee
-${initiator}
; -
Form data pre-population
-${submission('addPersonnelFormActivity').formData}
:
-
3.1.10. Створення скрипт задачі для підготовки даних для запису (transient var)
Заповніть наступні поля:
-
Id
-convertSignFormDataToDataFactoryFormatActivity
; -
Name
-Підготовка даних для запису (transient var)
; -
Script Format
-groovy
; -
Script Type
-InlineScript
;
Script
def personnelGrid = submission('signPersonnelFormActivity').formData.prop('personnelGrid').elements()
for (var personnel : personnelGrid) {
personnel.prop("laboratoryId", laboratoryId)
personnel.prop("staffStatusId", personnel.prop("staffStatus").prop("staffStatusId").value())
personnel.deleteProp("staffStatus")
if (personnel.hasProp('hygienistCertificateFile') && !personnel.prop('hygienistCertificateFile').elements().isEmpty()) { def hygienistCertificateFile = personnel.prop('hygienistCertificateFile').elements().first() } else { personnel.prop('hygienistCertificateFile', null as String) }
if (personnel.hasProp('ordersFile') && !personnel.prop('ordersFile').elements().isEmpty()) { def ordersFile = personnel.prop('ordersFile').elements().first() personnel.prop('ordersFile', ordersFile) } else { personnel.prop('ordersFile', null as String) }
if (personnel.hasProp('hireStaffFile') && !personnel.prop('hireStaffFile').elements().isEmpty()) { def hireStaffFile = personnel.prop('hireStaffFile').elements().first() } else { personnel.prop('hireStaffFile', null as String) }
}
execution.removeVariable('dataPayload') set_transient_variable('dataPayload', S(personnelGrid.toString()))
3.1.11. Створення сервісної задачі "Зберегти дані в Дата-фабрику".
-
Створіть нову сервісну задачу "Зберегти дані в Дата-фабрику", натиснувши іконку ключа та обравши з меню пункт Service Task.
-
Натисніть
Open Catalog
, оберіть шаблон Batch creation of entities in data factory та натиснітьApply
для підтвердження; -
Заповніть поля:
-
Id
-createStaffInDataFactoryActivity
; -
Name
-Зберегти дані в Дата фабрику
; -
Resource
-staff
; -
Payload
-${dataPayload}
; -
X-Access-Token
-${completer('signPersonnelFormActivity').accessToken}
;Після відпрацювання першої користувацької задачі (User Task), намагайтеся використовувати функцію
completer('<task_id>')
для отримання даних користувача, замістьinitiator()
.Токен доступу береться з АБО ініціатора (наприклад,
$initiator().accessToken}
), АБО виконавця останньої користувацької задачі (наприклад,${completer('taskDefinitionId').accessToken}
).JWT-токен має свій термін дії, який триває 300 секунд. Якщо вказати токен ініціатора, який запустив бізнес-процес, а користувач довго не виконував задачу, то термін дії токена спливе, й бізнес-процес необхідно буде запускати повторно.
Детальніше про JUEL-функції ви можете переглянути на сторінці JUEL-функції у бізнес-процесах.
-
X-Digital-Signature source
-${sign_submission('signPersonnelFormActivity').signatureDocumentId}
; -
Result Variable
-response
:
-
3.1.12. Створення сервісної задачі "Встановити результат БП".
-
Створіть нову сервісну задачу "Встановити результат БП", натиснувши іконку ключа та обравши з меню пункт Service Task.
-
Натисніть
Open Catalog
, оберіть шаблон Define business process status та натиснітьApply
для підтвердження; -
Заповніть поля:
-
Id
-defineBusinessProcessStatusActivity
; -
Name
-Результат виконання "Дані про кадровий склад внесені"
; -
Status
-Дані про кадровий склад внесені
:
-
3.2. Моделювання форм
На етапі моделювання форм необхідно створити та прив’язати JSON-форми до попередньо змодельованих задач в рамках бізнес-процесу. Форми прив’язуються до бізнес-процесів за службовою назвою. Використовуйте файли add-personnel-bp-add-personnel.json, add-personnel-bp-sign-personnel.json та shared-search-lab.json зі змодельованими формами для прикладу. |
3.2.1. Створення форми для пошуку даних лабораторії
Рекомендуємо виконувати усі налаштування, використовуючи браузер Google Chrome для стабільної роботи усіх сервісів. |
Найперше, необхідно створити форму для внесення даних користувачем. Для цього виконайте наступні кроки:
-
Увійдіть до застосунку Кабінет адміністратора регламентів.
-
За замовчуванням після авторизації відбувається перехід до майстер-версії регламенту, де відображаються форми, які вже розгорнуть у регламенті, наразі він буде пустим. В майстер-версії наявні форми доступні лише для перегляду без можливості їх редагування. Щоб мати можливість створювати та редагувати форми необхідно створити новий запит (версію кандидат на зміни).
-
У полі
Назва версії
вкажіть, наприклад, "завдання-4", а в поліОпис зміни
“Створення форм для Завдання 4”. Після зазначення назви та опису натиснітьСтворити
.Після створення буде автоматично виконано перехід до версії-кандидата у редакторі, де вже можливо буде створювати та редагувати форми.
-
Перейдіть до розділу
UI-форми
. Щоб створити нову форму для бізнес-процесу, натисніть кнопкуСтворити нову форму
. -
У вікні, що відкрилося, заповніть поля:
-
У вікні, що відкрилося, вкажіть назву відповідної користувацької задачі —
Пошук даних про лабораторію
в поліБізнес-назва форми
. -
Заповніть поле
Службова назва форми
значеннямshared-search-lab
.
-
-
Перейдіть на вкладку
Конструктор
.Рекомендовано використовувати компоненти із розділу “Оновлені”.
-
З панелі зліва перетягніть компонент Text Field до панелі моделювання та виконайте наступні налаштування.
-
на вкладці
Display
заповніть полеLabel
значеннямЄДРПОУ
: -
на вкладці
API
заповніть полеProperty Name
значеннямedrpou
:Поле
Property Name
в обов’язковому порядку заповнюється лише латиницею. Значення за замовчуванням ідентичне до значенняLabel
, в нашому прикладі вказане значенняЄДРПОУ
кирилицею, тобто його необхідно змінити. -
на вкладці
Validation
встановіть прапорець у поліRequired
, щоб поле було обов’язковим до заповнення. Натисніть кнопкуSave
для збереження змін.
-
-
З панелі зліва перетягніть компонент
Select
до панелі моделювання та виконайте наступні налаштування:-
на вкладці
Display
заповніть полеLabel
значеннямНазва лабораторії
: -
на вкладці
Data
в поліData Source Type
оберіть значенняURL
.-
поле
Data Source URL
заповніть значенням:/api/data-factory/laboratory-start-with-edrpou-contains-name
Це посилання на ендпоінт попередньо створеного search condition
laboratory_start_with_edrpou_contains_name
у моделі даних. -
встановіть прапорець (checkbox) для поля
Lazy Load Data
, щоб допустимі значення для поточного select оновлювалися кожного разу, коли до нього відбувається звернення. -
поле
Value Property
заповніть значеннямlaboratoryId
; -
поле
Filter Query
заповніть значеннямedrpou={{data.edrpou}}
; -
поле
Limit
заповніть значенням100
. Це дозволяє обмежити пошук лише першими 100 знайденими запитами. При правильному використанні такі обмеження допоможуть знизити навантаження на системи реєстру; -
поле
Item Template
заповніть значенням<span>{{ item.name }}</span>
;Значення
{{ item.name }}
містить:-
item
– поточний об’єкт зі списку знайдених лабораторій; -
name
– поле цього об’єкта.
У цьому полі вказується, що буде показано у самому select-запиті. Тобто ендпоінт
/api/data-factory/laboratory-start-with-edrpou-contains-name
поверне масив знайденихitem
об’єктів такого виду:{ "laboratoryId": "466ad903-7bd0-4078-9f80-972ed66780a8", "edrpou": "12345678", "name": "Lab Name" }
Щоб показувати у випадному списку select-запита назви лабораторій, треба звернутися до поля
name
→(<span>{{ item.name }}</span>)
.Якщо треба показувати у випадному списку, наприклад,
edrpou
кожної знайденої лабораторії, то за аналогією потрібно вказати{{ item.edrpou }}
. -
-
у полі
Refresh Options On
оберіть значенняЄДРПОУ
. Цей select-запит автоматично стане залежним від попереднього поляЄДРПОУ
і буде скидати обране перед цим значення при зміні значення вказаному у поліЄДРПОУ
;Детальну інформацію про функцію
Refresh Options On
можна переглянути за посиланням:
-
-
на вкладці
Validation
встановіть прапорець у поліRequired
, щоб поле було обов’язковим до заповнення. -
на вкладці
API
заповніть полеProperty Name
значеннямlaboratory
. Натисніть кнопкуSave
для збереження змін.
-
3.2.2. Моделювання однакових сутностей на формах за допомогою Edit Grid
3.2.2.1. Створення форми для внесення даних про нові кадри
-
Перейдіть до розділу
UI-форми
. Щоб створити нову форму для бізнес-процесу, натисніть кнопкуСтворити нову форму
. -
У вікні, що відкрилося, заповніть поля:
-
У вікні, що відкрилося, вкажіть назву відповідної користувацької задачі —
Додати дані про кадри
в поліБізнес-назва форми
. -
Заповніть поле
Службова назва форми
значеннямadd-personnel-bp-add-personnel
.
-
-
Перейдіть на вкладку
Конструктор
.Рекомендовано використовувати компоненти із розділу “Оновлені”.
За допомогою Edit Grid на формі можливо додавати та редагувати однотипні дані.
-
З панелі зліва перетягніть компонент Edit Grid до панелі моделювання та виконайте наступні налаштування:
-
на вкладці Display заповніть поле
Label
значеннямДодати інформацію про кадри
: -
на вкладці Templates заповніть поля:
-
Add another text
-Додати
; -
Save Row Text
-Внести запис
; -
Remove Row Text
-Видалити запис
:
-
-
на вкладці API заповніть поле
Property Name
значеннямpersonnelGrid
; -
натисніть кнопку
Save
для збереження змін:
-
-
Наповніть Edit Grid компонентами: з панелі зліва перетягніть компонент Textfield в поле компонента Edit Grid та виконайте наступні налаштування:
-
на вкладці Display заповніть поле
Label
значеннямПрізвище, ім’я, по батькові
: -
на вкладці API заповніть поле
Property Name
значеннямfullName
; -
натисніть кнопку
Save
для збереження змін:
-
-
З панелі зліва перетягніть компонент Checkbox в поле компонента Edit Grid та виконайте наступні налаштування:
-
на вкладці Display заповніть поле
Label
значеннямЛікар з гігієни праці
: -
на вкладці API заповніть поле
Property Name
значеннямhygienistFlag
; -
натисніть кнопку
Save
для збереження змін:
-
3.2.2.2. Налаштування відображення компонента залежно від значення іншого компонента
-
З панелі зліва перетягніть компонент Date/Time в поле компонента Edit Grid та виконайте наступні налаштування для отримання інформації з довідника:
-
на вкладці Display заповніть поле
Label
значеннямДата проходження спеціалізації
та поле Format значеннямyyyy-MM-dd:
: -
на вкладці
Time
зніміть прапорецьEnable Time Input
, в контексті поточного завдання точний час нам не потрібен: -
на вкладці API заповніть поле
Property Name
значеннямspecializationDate
: -
на вкладці Conditional заповніть поля:
-
This component should Display:
—True
; -
When the form component:
—Лікар з гігієни праці (personnel.Grid.hygienistFlag)
; -
Has the value:
—true
.
-
-
-
Це означає, що компонент буде показано тільки при значенні компонента
Лікар з гігієни праці (personnel.Grid.hygienistFlag)
—true
:-
натисніть кнопку
Save
для збереження змін. -
Аналогічно до попереднього пункту перетягніть та налаштуйте компоненти на формі:
-
Компонент - Radio:
-
на вкладці Display заповніть поле
Label
значеннямТрудові відносини
; -
на вкладці Data - Values заповніть поле
Label
значеннямОсновне місце роботи
, а полеValue
-true
; -
на вкладці Data - Values заповніть поле
Label
значеннямСумісництво
, а полеValue
-false
; -
на вкладці API заповніть поле
Property Name
значеннямfullTimeFlag
;
-
-
Компонент - Number:
-
на вкладці Display заповніть поле
Label
значеннямСтавка
; -
на вкладці Validation заповніть поле
Minimum value
значенням1
; -
на вкладці API заповніть поле
Property Name
значеннямsalary
;
-
-
Компонент - Day:
-
на вкладці Display заповніть поле
Label
значеннямДата зміни статусу
; -
на вкладці API заповніть поле
Property Name
значеннямdismissalDate
.
-
-
-
З панелі зліва перетягніть компонент Select в поле компонента Edit Grid та налаштуйте компонент для отримання інформації з довідника:
-
на вкладці Display заповніть поле
Label
значенням ` Статус співробітника`; -
на вкладці Data заповніть поля:
-
Data Source Type
—URL
; -
Data Source URL
—/api/data-factory/staff-contains-name
, де-
/api/data-factory/
— вказує шлях до дата-фабрики -
staff-contains-name
— назва search condition для отримання даних з довідника областей, який був змодельований та доданий у репозиторій;
-
-
Value Property
-staffStatusId
; -
Item Template
-<span>{{ item.name }}</span>
, деname
- назва параметра, що повертає search condition та буде показаний на формі:
-
-
на вкладці API заповніть поле
Property Name
значеннямstaffStatus
; -
натисніть кнопку
Save
для збереження змін.
З панелі зліва перетягніть компонент Checkbox в поле компонента Edit Grid та налаштуте компонент:
-
на вкладці Display заповніть поле
Label
значеннямСтроковий трудовий договір
; -
на вкладці API заповніть поле
Property Name
значеннямfixedTermContractFlag
; -
натисніть кнопку
Save
для збереження змін:
З панелі зліва перетягніть компонент Day в поле компонента Edit Grid та виконайте наступні налаштування:
* на вкладці *Display заповніть поле Label
значенням Дата закінчення строкового договору
:
-
на вкладці API заповніть поле
Property Name
значеннямcontractEndDate
: -
на вкладці Conditional заповніть поля:
-
This component should Display:
-True
; -
When the form component:
-Строковий трудовий договір (personnelGrid.fixedTermContractFlag)
; -
Has the value:
-true
.-
Це означає, що компонент буде показаний лише при значенні компонента
Строковий трудовий договір (personnelGrid.fixedTermContractFlag)
-true
.
-
-
-
натисніть кнопку
Save
для збереження змін:-
З панелі зліва перетягніть компоненти Textfield ПОЗА межами компонента Edit Grid та виконайте наступні налаштування:
-
-
Компонент 1 - Textfield:
-
на вкладці Display заповніть:
-
поле
Label
значеннямПовна назва лабораторії або ПІБ ФОП
; -
чекбокс
Disabled
-true
-
-
на вкладці API заповніть поле
Property Name
значеннямname
;
-
-
Компонент 2 - Textfield:
-
на вкладці Display заповніть:
-
поле
Label
значеннямКод ЄДРПОУ або РНОКПП
; -
чекбокс
Disabled
-true
-
-
на вкладці API заповніть поле
Property Name
значеннямedrpou
;
-
-
Ці поля будуть заповнені даними з бізнес-процесу.
-
Збережіть форму, натиснувши кнопку
Створити форму
у правому верхньому куті:Щоб обрати поля, які необхідно показувати у вигляді стовпчиків на компоненті
Edit Grid
, у кожного поля в налаштуваннях на вкладціDisplay
внизу екрану розміщено прапорець (checkbox)Table View
, встановивши його, поле показано в окремому стовпчику, якщо вимкнено — ні.
-
3.2.3. Створення форми для підпису даних
Після завершення попереднього кроку та створення форми для внесення даних, створіть ще одну форму для підпису даних.
Для цього скопіюйте попередньо змодельовану форму, натиснувши іконку копіювання — це дозволить створити форму із готового шаблону.
Налаштуйте параметри форми:
-
введіть назву користувацької задачі
Підписати відомості про кадровий склад
в поліБізнес-назва форми
; -
заповніть поле
Службова назва форми
значеннямadd-personnel-bp-sign-personnel
; -
В усіх компонентах:
-
на вкладці Display встановіть прапорець для параметра Disabled;
-
Натисніть кнопку
Save
для збереження змін.
-
3.2.4. Збереження змодельованих форм бізнес-процесу
-
Збережіть форму, натиснувши кнопку
Створити форму
у правому верхньому куті. -
Завантажте форми, натиснувши іконку завантаження, та помістіть їх до регламентної папки forms проєкту в локальному Gerrit-репозиторії.
3.3. Моделювання доступу до бізнес-процесу
На цьому етапі необхідно надати доступ до бізнес-процесу в Кабінеті посадової особи для стандартної ролі Параметри доступу налаштовуються у конфігураційному файлі, що має назву officer.yml із директорії bp-auth. |
Відредагуйте файл bp-auth/officer.yml додавши наступні параметри:
authorization:
realm: 'officer'
process_definitions:
- process_definition_id: 'add-lab-test'
process_name: 'Створення лабораторії'
process_description: 'Регламент для створення лабораторій'
roles:
- officer
- process_definition_id: 'add-lab'
process_name: 'Створення лабораторії'
process_description: 'Регламент для створення лабораторій'
roles:
- officer
- process_definition_id: 'add-personnel'
process_name: 'Внесення даних в кадровий склад'
process_description: 'Внесення даних в кадровий склад'
roles:
- officer
3.3.1. Збереження файлу з налаштування доступу
Збережіть файл officer.yml до регламентної папки bp-auth проєкту в локальному Gerrit-репозиторії.
4. Завантаження файлів регламенту до віддаленого репозиторію Gerrit
Для успішного розгортання бізнес-процесу, форм, а також застосування правильних налаштувань доступу до бізнес-процесу у цільовому середовищі, адміністратор регламенту має завантажити збережені локально файли регламенту реєстру до віддаленого сховища коду Gerrit.
Для цього виконайте кроки з інструкції Операції з регламентом в Gerrit.