**Шаг 3.** Проверяем корректность письма и сохраняем этап.
.. note::
...
...
@@ -232,11 +234,11 @@ counter_number - код поля "Номер заявки"
Этап 4. Назначение исполнителя
-------------------------------
Вход - заявка поступившая менеджеру
**Вход** - заявка поступившая менеджеру
Выход - заявка с назначенным по ней исполнителем
**Выход** - заявка с назначенным по ней исполнителем
Для реализации данного шага, будем использовать тип "Работа по форме"
Для реализации данного шага, будем использовать тип **"Работа по форме"**
Назначение исполнителя выполняется менеджером.
Так как конкретный исполнитель может отличаться от заявки к заявке, его необходимо указать вручную в процессе выполнения этапа.
...
...
@@ -250,7 +252,7 @@ counter_number - код поля "Номер заявки"
**Шаг 2.** В скрытой таблице под полем "Автор" добавляем еще одно поле **"Менеджер"** с компонентом **"Объекты Synergy"**
**Шаг 3.** В настройках компонента присваиваем ему код содержащий смысловую нагрузку (например entity_manager) и в настройке "Тип данных" выбираем тип "Пользователь", «Должности» либо «Подразделения».
**Шаг 3.** В настройках компонента присваиваем ему код содержащий смысловую нагрузку (например entity_manager) и в настройке **"Тип данных"** выбираем тип "Пользователь", «Должности» либо «Подразделения».
.. note::
Если мы хотим чтобы заявка на данном этапе падала конкретному человеку – мы прикрепляем к заявке конкретно его учетную запись, выбрав для этого тип данных **«Пользователь»** и выбрав в поле конкретного человека.
...
...
@@ -259,6 +261,9 @@ counter_number - код поля "Номер заявки"
Если необходимо направлять работу целому подразделению, с вложенными в него должностями, то используется тип данных **«Подразделения»**, тогда работа будет поступать всем людям, состоящим на всех вложенных должностях выбранного подразделения.
.. figure:: ../resources/img/field_manager.jpeg
Пример созданного поля с предзаполненным пользователем
**Шаг 4.** Сохраняем форму
Создание этапа маршрута
...
...
@@ -293,13 +298,15 @@ counter_number - код поля "Номер заявки"
**Шаг 2.** Задаем форме:
* понятное наименование, отличающее её от основной формы
* понятный код
* аналогичный код
**Шаг 3.** Добавляем поле для указания исполнителя:
* Наименование - Исполнитель
* компонент «Объекты Synergy»
.. figure:: ../resources/img/completion_form.jpeg
делаем поле обязательным, так как исполнитель является обязательным участником следующего шага процесса.
**Шаг 4.** Сохраняем форму.
...
...
@@ -307,15 +314,17 @@ counter_number - код поля "Номер заявки"
Привязка формы завершения к этапу
^^^^^^^^^^^^^^^
**Шаг 1.** Возвращаемся к настройке этапа "Назначение исполнителя"
**Шаг 1.** Возвращаемся к настройке этапа **"Назначение исполнителя"**
**Шаг 2.** В строке **«Форма завершения»** нажимаем кнопку «+».
В открывшемся окне:
* выбираем тип завершения «Форма»;
* задаём код и наименование (для уджобства делаем их аналогичными созданной форме);
* задаём код и наименование (для удобства делаем их аналогичными созданной форме);
* в поле «Форма» выбираем созданную форму.
.. figure:: ../resources/img/step_fz.jpeg
**Шаг 3.** Сохраняем этап.
.. important::
...
...
@@ -335,13 +344,13 @@ counter_number - код поля "Номер заявки"
Смена статуса выполняется автоматически с помощью скрипта интерпретатора, запускаемого этапом маршрута типа **«Блокирующий процесс»**.
.. note:: Скрипт интерпретатора - это программный код на JavaScript внутри системы Synergy, который выполняется без компиляции и позволяет автоматизировать логику работы системы.
.. note:: **Скрипт интерпретатора** - это программный код на JavaScript внутри системы Synergy, который выполняется без компиляции и позволяет автоматизировать логику работы системы.
Он используется для расчетов, обработки данных форм и карточек, а также для реакции на внутренние события системы.
Скрипт выполняется сразу при запуске или событии и возвращает результат выполнения системе.
Подробнее о том, что такое скрипт интерпретатора можно найти здесь http://rtd.lan.arta.kz/docs/guide/ru/minsky/interpreter.html
Подробнее о том, что такое скрипт интерпретатора http://rtd.lan.arta.kz/docs/guide/ru/minsky/interpreter.html
Создание скрипт интерпретатора
Создание скрипта интерпретатора
^^^^^^^^^^^^^^^^^^^^^^^^^^
**Шаг 1.** В дереве приложения выбираем папку для хранения скриптов.
...
...
@@ -364,7 +373,7 @@ counter_number - код поля "Номер заявки"
* По логину и паролю - понадобится логин и пароль учетной записи с правами администратора
* По ключу - понадобится ключ администратора
**Шаг 4.** Выбираем тип авторизации "По логину и паролю" и указываем учетную запись администратора
**Шаг 4.** Выбираем тип авторизации **"По логину и паролю"** и указываем учетную запись администратора
.. important:: При смене логина и пароля учетной записи администратора логин и пароль нужно будет обновить во всех скриптах интерпретатора, использующих эту учетную запись
...
...
@@ -385,11 +394,15 @@ counter_number - код поля "Номер заявки"
**Шаг 3.** Вместо слов:
* "код справочника" - указываем код поля в котором находится выпадающий список статусов, например у нас это listbox_status
* "код значения" - значение, на которое должен смениться статус, согласно справочнику у нас это значение 4 ("В работе")
* **"код справочника"** - указываем код поля в котором находится выпадающий список статусов, например у нас это ``listbox_status``
* **"код значения"** - значение, на которое должен смениться статус, согласно справочнику у нас это значение 4 ("В работе")
.. figure:: ../resources/img/listbox_status.jpeg
Если все сделано правильно, код будет выглядеть так:
**Шаг 3.** Правой кнопкой мыши по нужной папке → добавить → интеграция → скрипт интерпретатора
...
...
@@ -583,8 +601,11 @@ counter_number - код поля "Номер заявки"
Пример:
До:
.. figure:: ../resources/img/matching_before.jpeg
После:
.. figure:: ../resources/img/matching_after.jpeg
**Шаг 6.** Присваиваем скрипту интерпретатора наименование, например ``event.blocking.interpreter.completion_form_responsible``
...
...
@@ -600,11 +621,15 @@ counter_number - код поля "Номер заявки"
* Наименование - перенос данных с формы завершения
* Событие - вставляем код созданного нами скрипта интерпретатора для переноса данных из формы завершения (``event.blocking.interpreter.completion_form_responsible``)
.. figure:: ../resources/img/step4.jpeg
**Шаг 2.** Сохраняем этап и переходим к формированию правильного порядка этапов. Нам необходимо передвинуть этап с переносом формы завершения непосредственно под этап с формой завершения.
**Шаг 3.** Для переноса этапа зажимаем кнопку (пример кнопки) рядом с цифрой этапа и двигая строку в нужное место
**Шаг 3.** Для переноса этапа зажимаем кнопку переноса этапа рядом с цифрой этапа
.. image:: ../resources/img/button_dragndrop.jpeg
и двигая строку в нужное место
(скрин)
.. figure:: ../resources/img/steps.jpeg
Теперь все этапы располагаются в правильном порядке.