Commit c63d2f80 authored by Natalia Klimova's avatar Natalia Klimova

Update route_setting.rst

parent 17f45918
...@@ -6,11 +6,12 @@ ...@@ -6,11 +6,12 @@
Для этого используется маршрут типа **«Активация»**. Для этого используется маршрут типа **«Активация»**.
.. admonition:: Основная рабочая область. .. admonition:: Основная рабочая область.
Редактор маршрутов состоит из трёх панелей, каждая из которых отвечает за свой тип этапов маршрута. Редактор маршрутов состоит из трёх панелей, каждая из которых отвечает за свой тип этапов маршрута.
**Панели редактора маршрутов** **Панели редактора маршрутов**
**Предварительные этапы** **Предварительные этапы** - содержат только стандартные процессы, которые выполняются до основных действий:
Содержат только стандартные процессы, которые выполняются до основных действий:
* Работа * Работа
* Согласование * Согласование
...@@ -20,8 +21,7 @@ ...@@ -20,8 +21,7 @@
* Регистрация * Регистрация
* Маршрут * Маршрут
**Действия** **Действия** - ключевая часть маршрута.
Ключевая часть маршрута.
Этапы в этой панели: Этапы в этой панели:
...@@ -29,8 +29,7 @@ ...@@ -29,8 +29,7 @@
* изменяют объекты и состояние процесса в системе; * изменяют объекты и состояние процесса в системе;
* выполняются только после успешного завершения предварительных этапов (если они есть). * выполняются только после успешного завершения предварительных этапов (если они есть).
**Последующие этапы** **Последующие этапы** - также содержат только стандартные процессы и выполняются после действий (при необходимости).
Также содержат только стандартные процессы и выполняются после действий (при необходимости).
Переход к созданию маршрута Переход к созданию маршрута
---------------------------- ----------------------------
...@@ -59,7 +58,7 @@ ...@@ -59,7 +58,7 @@
Этап 1. Заполнение заявки Этап 1. Заполнение заявки
--------------------------- ---------------------------
**Входом** операции является форма заявки, разработанная в системе и данные клиента, которые он вносит при заполнении формы. **Вход** - форма заявки, разработанная в системе и данные клиента, которые он вносит при заполнении формы.
**Выход** - заполненная по форме заявка на услугу. **Выход** - заполненная по форме заявка на услугу.
...@@ -72,7 +71,7 @@ ...@@ -72,7 +71,7 @@
**Выход** - заявка подписанная в системе. **Выход** - заявка подписанная в системе.
Для реализации данного этапа нам потребуется тип действия "Работа по форме" с типом "Согласование" Для реализации данного этапа нам потребуется тип действия **"Работа по форме"** с типом **"Согласование"**
Данный тип этапа требует указания поля из заявки, в котором будет находится текущий пользователь, создающий заявку. Данный тип этапа требует указания поля из заявки, в котором будет находится текущий пользователь, создающий заявку.
...@@ -83,11 +82,11 @@ ...@@ -83,11 +82,11 @@
**Шаг 2.** Добавляем на форму комопнент таблицы, и включаем для нее настройки скрытности, чтобы системные поля не отображались пользователю **Шаг 2.** Добавляем на форму комопнент таблицы, и включаем для нее настройки скрытности, чтобы системные поля не отображались пользователю
**Шаг 3.** Внутрь таблицы добавляем компонент "Объекты Synergy" **Шаг 3.** Внутрь таблицы добавляем компонент **"Объекты Synergy"**
* задаем ему код например "entity_author" * задаем ему код например "entity_author"
* включаем настройку "Заполнять текущим пользователем" * включаем настройку **"Заполнять текущим пользователем"**
**Шаг 4.** Полю задаем наименование "Автор" **Шаг 4.** Полю задаем наименование "Автор"
...@@ -117,6 +116,7 @@ ...@@ -117,6 +116,7 @@
.. figure:: ../resources/img/step1.jpeg .. figure:: ../resources/img/step1.jpeg
Этап 3. Регистрация заявки Этап 3. Регистрация заявки
----------------------------
**Вход** - подписанная в системе заявка **Вход** - подписанная в системе заявка
...@@ -126,7 +126,7 @@ ...@@ -126,7 +126,7 @@
.. note:: .. note::
Счётчик — это базовая сущность системы, предназначенная для генерации последовательных числовых значений. **Счётчик** — это базовая сущность системы, предназначенная для генерации последовательных числовых значений.
Он используется для нумерации заявок, документов и других объектов. Он используется для нумерации заявок, документов и других объектов.
Создание счетчика Создание счетчика
...@@ -138,21 +138,24 @@ ...@@ -138,21 +138,24 @@
**Шаг 3.** Открывается панель редактирования информации о счётчике: **Шаг 3.** Открывается панель редактирования информации о счётчике:
* **Код** - Обязательное поле. .. figure:: ../resources/img/couner_new.jpeg
Используется для обращения к счётчику в шаблоне номера.
* **Код** - Обязательное поле. Используется для обращения к счётчику в шаблоне номера.
* **Начальное значение** - значение, с которого начинается нумерация. * **Начальное значение** - значение, с которого начинается нумерация.
* **Следующее значение** - должно быть не меньше начального. * **Следующее значение** - должно быть не меньше начального.
* **Период сброса** - определяет, когда следующее значение будет сбрасываться к начальному. * **Период сброса** - определяет, когда следующее значение будет сбрасываться к начальному.
Возможные варианты: Возможные варианты:
* Никогда (по умолчанию) * Никогда (по умолчанию)
* Каждый день * Каждый день
* Каждую неделю * Каждую неделю
* Каждый месяц * Каждый месяц
* Каждый год * Каждый год
**Шаг 4.** Вводим необходимые значения и нажимаем кнопку "Сохранить" **Шаг 4.** Вводим необходимые значения и нажимаем кнопку "Сохранить"
.. figure:: ../resources/img/couner.jpeg
После создания счетчика нам необходимо привязать его к шаблону номера, который мы потом поместим на форму. После создания счетчика нам необходимо привязать его к шаблону номера, который мы потом поместим на форму.
Привязка счетчика к шаблону номера Привязка счетчика к шаблону номера
...@@ -162,9 +165,11 @@ ...@@ -162,9 +165,11 @@
**Шаг 2.** В открывшемся окне создания шаблона номера указываем: **Шаг 2.** В открывшемся окне создания шаблона номера указываем:
* Наименование - название счетчика или его назначение (например "Номер заявки на услуги ATLAS") * Наименование - название счетчика или его назначение (например "Номер заявки на услуги ATLAS")
* Код - ставим логически правильный код или оставляем автоматически сгенерированный транслит * Код - ставим логический код или оставляем автоматически сгенерированный транслит
* Значение - помещаем сюда код ранее созданного нами счетчика в формате {код_счетчика} * Значение - помещаем сюда код ранее созданного нами счетчика в формате {код_счетчика}
.. figure:: ../resources/img/number_template.jpeg
**Шаг 3.** Сохраняем шаблон номера. **Шаг 3.** Сохраняем шаблон номера.
...@@ -173,9 +178,11 @@ ...@@ -173,9 +178,11 @@
**Шаг 1.** Возвращаемся к форме заявки **Шаг 1.** Возвращаемся к форме заявки
**Шаг 2.** В поле "Порядковый номер заявки" выделяем компонент "номер" **Шаг 2.** В поле **"Порядковый номер заявки"** выделяем его компонент **"Номер"**
**Шаг 3.** В строке **"Шаблон номера"** выбираем созданный нами шаблон
**Шаг 3.** В строке "Шаблон номера" выбираем созданный нами шаблон .. figure:: ../resources/img/number_template_in_form.jpeg
**Шаг 4.** Сохраняем форму **Шаг 4.** Сохраняем форму
...@@ -190,33 +197,26 @@ ...@@ -190,33 +197,26 @@
На данном этапе на почту клиента отправляется уведомление о регистрации заявки с указанием её номера. На данном этапе на почту клиента отправляется уведомление о регистрации заявки с указанием её номера.
**Шаг 1.** В редакторе маршрута нажимаем кнопку "+" для добавления нового этапа **Шаг 1.** В редакторе маршрута нажимаем кнопку "+" для добавления нового этапа
**Шаг 2.** В настройках этапа выбираем тип действия **"Отправка письма на почту"** **Шаг 2.** В настройках этапа выбираем тип действия **"Отправка письма на почту"**
**Шаг 3.** Указываем: **Шаг 3.** Указываем:
* Наименование этапа, например **"Отправка уведомления о номере заказа"** * Наименование этапа, например **"Отправка уведомления о номере заказа"**
* Код - указывается при необходимости * Код - указывается при необходимости
* Код поля на форме - подразумевает поле на форме с почтой клиента, на которую необходимо отправить уведомление. У нас например это textbox_mail * Код поля на форме - подразумевает поле на форме с почтой клиента, на которую необходимо отправить уведомление. У нас например это textbox_mail
* Тема письма с поддержкой HTML разметки - будет содержать тему письма * Тема письма с поддержкой HTML разметки - будет содержать тему письма
* Тело письма с поддержкой HTML разметки - будет содержать основной текст письма с данными из нужных нам полей * Тело письма с поддержкой HTML разметки - будет содержать основной текст письма с данными из нужных нам полей
В нашем случае, согласно ТЗ (ордера) HTML шаблон письма будет выглядеть следующим образом: В нашем случае, согласно ТЗ (ордера) HTML шаблон письма будет выглядеть следующим образом:
``Ваша заявка на “ + $listbox_type + ” зарегистрирована под номером “ + $counter_number + ”.`` ``Ваша заявка на “ + $listbox_type + ” зарегистрирована под номером “ + $counter_number + ”.``
где listbox_type - код поля "Тип заявки" * где ``listbox_type`` - код поля **"Тип заявки"**
* ``counter_number`` - код поля **"Номер заявки"**
counter_number - код поля "Номер заявки" * **"Ваша заявка на"** и **"зарегистрирована под номером"** - это статический текст, который будет одинаковым в каждом письме.
* Символ $ - обращение к переменной.
"Ваша заявка на" и "зарегистрирована под номером" - это статический текст, который будет одинаковым в каждом письме.
Символ $ - обращение к переменной.
Символ $ обязательный и означает, что далее указывается переменная, значение которой будет взято из данных заявки: Символ $ обязательный и означает, что далее указывается переменная, значение которой будет взято из данных заявки:
* $listbox_type — значение поля Тип заявки * $listbox_type — значение поля Тип заявки
...@@ -224,6 +224,8 @@ counter_number - код поля "Номер заявки" ...@@ -224,6 +224,8 @@ counter_number - код поля "Номер заявки"
Во время отправки письма система автоматически подставляет фактические значения этих полей из данных заявки. Во время отправки письма система автоматически подставляет фактические значения этих полей из данных заявки.
.. figure:: ../resources/img/step3_notification.jpeg
**Шаг 3.** Проверяем корректность письма и сохраняем этап. **Шаг 3.** Проверяем корректность письма и сохраняем этап.
.. note:: .. note::
...@@ -232,11 +234,11 @@ counter_number - код поля "Номер заявки" ...@@ -232,11 +234,11 @@ counter_number - код поля "Номер заявки"
Этап 4. Назначение исполнителя Этап 4. Назначение исполнителя
------------------------------- -------------------------------
Вход - заявка поступившая менеджеру **Вход** - заявка поступившая менеджеру
Выход - заявка с назначенным по ней исполнителем **Выход** - заявка с назначенным по ней исполнителем
Для реализации данного шага, будем использовать тип "Работа по форме" Для реализации данного шага, будем использовать тип **"Работа по форме"**
Назначение исполнителя выполняется менеджером. Назначение исполнителя выполняется менеджером.
Так как конкретный исполнитель может отличаться от заявки к заявке, его необходимо указать вручную в процессе выполнения этапа. Так как конкретный исполнитель может отличаться от заявки к заявке, его необходимо указать вручную в процессе выполнения этапа.
...@@ -250,7 +252,7 @@ counter_number - код поля "Номер заявки" ...@@ -250,7 +252,7 @@ counter_number - код поля "Номер заявки"
**Шаг 2.** В скрытой таблице под полем "Автор" добавляем еще одно поле **"Менеджер"** с компонентом **"Объекты Synergy"** **Шаг 2.** В скрытой таблице под полем "Автор" добавляем еще одно поле **"Менеджер"** с компонентом **"Объекты Synergy"**
**Шаг 3.** В настройках компонента присваиваем ему код содержащий смысловую нагрузку (например entity_manager) и в настройке "Тип данных" выбираем тип "Пользователь", «Должности» либо «Подразделения». **Шаг 3.** В настройках компонента присваиваем ему код содержащий смысловую нагрузку (например entity_manager) и в настройке **"Тип данных"** выбираем тип "Пользователь", «Должности» либо «Подразделения».
.. note:: .. note::
Если мы хотим чтобы заявка на данном этапе падала конкретному человеку – мы прикрепляем к заявке конкретно его учетную запись, выбрав для этого тип данных **«Пользователь»** и выбрав в поле конкретного человека. Если мы хотим чтобы заявка на данном этапе падала конкретному человеку – мы прикрепляем к заявке конкретно его учетную запись, выбрав для этого тип данных **«Пользователь»** и выбрав в поле конкретного человека.
...@@ -259,6 +261,9 @@ counter_number - код поля "Номер заявки" ...@@ -259,6 +261,9 @@ counter_number - код поля "Номер заявки"
Если необходимо направлять работу целому подразделению, с вложенными в него должностями, то используется тип данных **«Подразделения»**, тогда работа будет поступать всем людям, состоящим на всех вложенных должностях выбранного подразделения. Если необходимо направлять работу целому подразделению, с вложенными в него должностями, то используется тип данных **«Подразделения»**, тогда работа будет поступать всем людям, состоящим на всех вложенных должностях выбранного подразделения.
.. figure:: ../resources/img/field_manager.jpeg
Пример созданного поля с предзаполненным пользователем
**Шаг 4.** Сохраняем форму **Шаг 4.** Сохраняем форму
Создание этапа маршрута Создание этапа маршрута
...@@ -293,13 +298,15 @@ counter_number - код поля "Номер заявки" ...@@ -293,13 +298,15 @@ counter_number - код поля "Номер заявки"
**Шаг 2.** Задаем форме: **Шаг 2.** Задаем форме:
* понятное наименование, отличающее её от основной формы * понятное наименование, отличающее её от основной формы
* понятный код * аналогичный код
**Шаг 3.** Добавляем поле для указания исполнителя: **Шаг 3.** Добавляем поле для указания исполнителя:
* Наименование - Исполнитель * Наименование - Исполнитель
* компонент «Объекты Synergy» * компонент «Объекты Synergy»
.. figure:: ../resources/img/completion_form.jpeg
делаем поле обязательным, так как исполнитель является обязательным участником следующего шага процесса. делаем поле обязательным, так как исполнитель является обязательным участником следующего шага процесса.
**Шаг 4.** Сохраняем форму. **Шаг 4.** Сохраняем форму.
...@@ -307,15 +314,17 @@ counter_number - код поля "Номер заявки" ...@@ -307,15 +314,17 @@ counter_number - код поля "Номер заявки"
Привязка формы завершения к этапу Привязка формы завершения к этапу
^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^
**Шаг 1.** Возвращаемся к настройке этапа "Назначение исполнителя" **Шаг 1.** Возвращаемся к настройке этапа **"Назначение исполнителя"**
**Шаг 2.** В строке **«Форма завершения»** нажимаем кнопку «+». **Шаг 2.** В строке **«Форма завершения»** нажимаем кнопку «+».
В открывшемся окне: В открывшемся окне:
* выбираем тип завершения «Форма»; * выбираем тип завершения «Форма»;
* задаём код и наименование (для уджобства делаем их аналогичными созданной форме); * задаём код и наименование (для удобства делаем их аналогичными созданной форме);
* в поле «Форма» выбираем созданную форму. * в поле «Форма» выбираем созданную форму.
.. figure:: ../resources/img/step_fz.jpeg
**Шаг 3.** Сохраняем этап. **Шаг 3.** Сохраняем этап.
.. important:: .. important::
...@@ -335,13 +344,13 @@ counter_number - код поля "Номер заявки" ...@@ -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.** В дереве приложения выбираем папку для хранения скриптов. **Шаг 1.** В дереве приложения выбираем папку для хранения скриптов.
...@@ -364,7 +373,7 @@ counter_number - код поля "Номер заявки" ...@@ -364,7 +373,7 @@ counter_number - код поля "Номер заявки"
* По логину и паролю - понадобится логин и пароль учетной записи с правами администратора * По логину и паролю - понадобится логин и пароль учетной записи с правами администратора
* По ключу - понадобится ключ администратора * По ключу - понадобится ключ администратора
**Шаг 4.** Выбираем тип авторизации "По логину и паролю" и указываем учетную запись администратора **Шаг 4.** Выбираем тип авторизации **"По логину и паролю"** и указываем учетную запись администратора
.. important:: При смене логина и пароля учетной записи администратора логин и пароль нужно будет обновить во всех скриптах интерпретатора, использующих эту учетную запись .. important:: При смене логина и пароля учетной записи администратора логин и пароль нужно будет обновить во всех скриптах интерпретатора, использующих эту учетную запись
...@@ -385,11 +394,15 @@ counter_number - код поля "Номер заявки" ...@@ -385,11 +394,15 @@ counter_number - код поля "Номер заявки"
**Шаг 3.** Вместо слов: **Шаг 3.** Вместо слов:
* "код справочника" - указываем код поля в котором находится выпадающий список статусов, например у нас это listbox_status * **"код справочника"** - указываем код поля в котором находится выпадающий список статусов, например у нас это ``listbox_status``
* "код значения" - значение, на которое должен смениться статус, согласно справочнику у нас это значение 4 ("В работе") * **"код значения"** - значение, на которое должен смениться статус, согласно справочнику у нас это значение 4 ("В работе")
.. figure:: ../resources/img/listbox_status.jpeg
Если все сделано правильно, код будет выглядеть так: Если все сделано правильно, код будет выглядеть так:
.. figure:: ../resources/img/script_status_work.jpeg
**Шаг 4.** Сохраняем скрипт интерпретатора и возвращаемся к настройке этапа **Шаг 4.** Сохраняем скрипт интерпретатора и возвращаемся к настройке этапа
Создание этапа маршрута Создание этапа маршрута
...@@ -402,6 +415,8 @@ counter_number - код поля "Номер заявки" ...@@ -402,6 +415,8 @@ counter_number - код поля "Номер заявки"
* указываем наименование этапа (например, «Смена статуса на "В работе"»); * указываем наименование этапа (например, «Смена статуса на "В работе"»);
* в поле **«Событие»** вставляем название созданного скрипта интерпретатора. * в поле **«Событие»** вставляем название созданного скрипта интерпретатора.
.. figure:: ../resources/img/step_status_work.jpeg
**Шаг 3.** Сохраняем этап. **Шаг 3.** Сохраняем этап.
Скрипт интерпретатора для этапа 4 Скрипт интерпретатора для этапа 4
...@@ -411,6 +426,9 @@ counter_number - код поля "Номер заявки" ...@@ -411,6 +426,9 @@ counter_number - код поля "Номер заявки"
**Шаг 1.** Для начала добавляем на основную форму заявки поле **«Исполнитель»** из формы завершения. Поле должно иметь аналогичный код. **Шаг 1.** Для начала добавляем на основную форму заявки поле **«Исполнитель»** из формы завершения. Поле должно иметь аналогичный код.
.. figure:: ../resources/img/entity_responsible.jpeg
**Шаг 2.** Сохраняем форму заявки **Шаг 2.** Сохраняем форму заявки
**Шаг 3.** Правой кнопкой мыши по нужной папке → добавить → интеграция → скрипт интерпретатора **Шаг 3.** Правой кнопкой мыши по нужной папке → добавить → интеграция → скрипт интерпретатора
...@@ -583,8 +601,11 @@ counter_number - код поля "Номер заявки" ...@@ -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`` **Шаг 6.** Присваиваем скрипту интерпретатора наименование, например ``event.blocking.interpreter.completion_form_responsible``
...@@ -600,11 +621,15 @@ counter_number - код поля "Номер заявки" ...@@ -600,11 +621,15 @@ counter_number - код поля "Номер заявки"
* Наименование - перенос данных с формы завершения * Наименование - перенос данных с формы завершения
* Событие - вставляем код созданного нами скрипта интерпретатора для переноса данных из формы завершения (``event.blocking.interpreter.completion_form_responsible``) * Событие - вставляем код созданного нами скрипта интерпретатора для переноса данных из формы завершения (``event.blocking.interpreter.completion_form_responsible``)
.. figure:: ../resources/img/step4.jpeg
**Шаг 2.** Сохраняем этап и переходим к формированию правильного порядка этапов. Нам необходимо передвинуть этап с переносом формы завершения непосредственно под этап с формой завершения. **Шаг 2.** Сохраняем этап и переходим к формированию правильного порядка этапов. Нам необходимо передвинуть этап с переносом формы завершения непосредственно под этап с формой завершения.
**Шаг 3.** Для переноса этапа зажимаем кнопку (пример кнопки) рядом с цифрой этапа и двигая строку в нужное место **Шаг 3.** Для переноса этапа зажимаем кнопку переноса этапа рядом с цифрой этапа
.. image:: ../resources/img/button_dragndrop.jpeg
и двигая строку в нужное место
(скрин) .. figure:: ../resources/img/steps.jpeg
Теперь все этапы располагаются в правильном порядке. Теперь все этапы располагаются в правильном порядке.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment