TrainingMaterials 4 2 Ch3

Материал из RunaWFE
Версия от 11:35, 26 декабря 2020; WikiSysop (обсуждение | вклад) (1 версия импортирована)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску

RunaWFE. Расширенный лабораторный практикум по процессному управлению. Часть 3

Версия 4.2

© 2004-2015, ЗАО "Руна", материалы этого документа распространяются свободно на условиях лицензии GNU FDL. RunaWFE является системой с открытым кодом и распространяется в соответствии с LGPL лицензией (http://www.gnu.org/licenses/lgpl.html).


Введение

Для автоматизации процессного управления предприятием разработан специальный класс компьютерных систем – системы управления бизнес-процессами и административными регламентами (далее СУБПиАР). Основная задача таких систем - раздавать задания исполнителям и контролировать их выполнение. Последовательность заданий определяется схемой бизнес-процесса, которую можно разработать и в дальнейшем быстро модифицировать при помощи среды разработки.

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

  • перспектива потока управления (control-flow perspective)
  • перспектива ресурсов (resource perspective)
  • перспектива данных (data perspective)

Первую и вторую части практикума можно найти на сайте проекта RunaWFE в разделе "Документация/Документация для пользователя", документ "RunaWFE. Учебные материалы по процессному управлению".

Адрес сайта проекта RunaWFE - http://runawfe.ru/rus.

В настоящей, третьей части практикума рассмотрена последняя, четвертая перспектива исполнимых бизнес-процессов, объяснена работа с MS Word-ботом, приведено описание самостоятельного занятия.

Система RunaWFE свободно распространяется вместе со своими исходными кодами на условиях открытой лицензии LGPL. Система бесплатная, ее можно свободно установить на любое количество компьютеров без каких-либо ограничений. Скачать дистрибутивы и исходный код ее можно через интернет с портала разработчиков свободного программного обеспечения sourceforge.net по адресу: http://sourceforge.net/projects/runawfe.

Практическое занятие "Изучение перспективы операций"

Цель занятия

Целью занятия является изучение перспективы операций.

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

На занятии для разрабатываемого бизнес-процесса создаются бот (автоматический исполнитель заданий) и содержащая его бот-станция. На условном примере объясняется как боты используются для организации взаимодействия экземпляров бизнес-процессов с информационными системами предприятия.

Теоретические сведения

Необходимые теоретические сведения изложены в первой части лабораторного практикума в пункте "Перспектива операций" раздела "Исполнимые бизнес-процессы и административные регламенты", а также в пункте "Концепция ботов и бот-станций" раздела "Стандарты и концепции, связанные с СУБПиАР".

Порядок выполнения работы

  1. Запустите среду разработки
  2. Создайте новый проект - "Занятие 4"
  3. Создайте новый бизнес-процесс "Пример 4-1" (Бизнес-процесс соответствует рассмотрению заявки на покупку услуги).
  4. Создайте роли "Сотрудник", "Директор" и "Бот работы с данными", добавьте элементы на схему бизнес-процесса в соответствии с рисунком 2.1
  5. R153e2.png
    Рисунок 2.1 Схема бизнес-процесса рассмотрения заявки на покупку услуги ("Пример 4-1")


    Замечание: обратите внимание, в названии задачи "Ввести даные о заявке учетную систему" специально допущена опечатка. Причина этого будет объяснена при описании выполнения данного бизнес-процесса.


  6. Свяжите с начальным узлом бизнес-процесса роль "Сотрудник", с остальными узлами свяжите роли в соответствии с рисунком 2.1
  7. Создайте переменные бизнес-процесса в соответствии с рисунком 2.2
  8. R154 ru.png
    Рисунок 2.2 Переменные бизнес-процесса рассмотрения заявки на покупку услуги


  9. Запустите RunaWFE симулятор (Подробнее см. Вводное занятие, Порядок выполнения работы, Пункт 1)
  10. Войдите в web-интерфейс системы RunaWFE под пользователем Administrator. (Подробнее см. Вводное занятие, Порядок выполнения работы, Пункт 2, Рис. 5.2). По умолчанию пароль пользователя Administrator - "wf".
  11. Перейдите к списку исполнителей, кликнув по ссылке «Исполнители» в левой части экрана.
  12. Создайте группы:
    • Сотрудники
    • Директор
    • Bots (если эта группа уже существует в системе, то создавать ее не надо)
    (см. Вводное занятие, Порядок выполнения работы, Пункт 5, Рис. 5.5) Добавьте пользователей
    • Мотыльков
    • Мухин
    • Гусеницын
    • Личинкин
    в группу "Сотрудники" Добавьте пользователя "Стрекозин" в группу "Директор". Создайте пользователя:
    • Бот данных
    Задайте для него пароль (предлагается задавать для созданных пользователей пароль "123"). Добавьте пользователя "Бот данных" в группу "Bots". Дайте группе "Bots" права на вход в систему. Дайте полномочия группам "Сотрудники" и "Директор" на вход в систему. Подробнее см. Вводное занятие, Порядок выполнения работы, Пункты 4 - 13.
  13. Создайте бот станцию и бота.
  14. Замечание. Если в систему уже существует бот станция localbotstation, то либо пропустите действия данного раздела, либо удалите ее командой "Удалить". Кликните на меню «Бот станции» в левой части экрана. Кликните на ссылке "Добавить бот станцию" (См. Рис. 2.3)
    R155 ru.png
    Рисунок 2.3 Создание новой бот станции


    В появившейся форме (См. Рис. 2.4) в поле "Название" введите "localbotstation", в поле "Адрес" введите "localhost:10099", кликните на "Добавить бот станцию".


    R156 ru.png
    Рисунок 2.4 Создание бот станции "localbotstation"


    Будет создана бот станция localbotstation, правами на которую будет обладать "Administrator".

    Замечание. С бот станцией должен быть связан один из пользователей. От имени этого пользователя бот станция будет обращаться к RunaWFE серверу для того, чтобы прочитать свои параметры. Логин и пароль этого пользователя вводится в специальном конфигурационном файле (botstation.properties). По умолчанию в системе в качестве пользователя с правами на работу с бот станцией указан Administrator.


    В появившейся форме кликните на бот-станцию "localbotstation" (См. Рис. 2.5)

    R157 ru.png
    Рисунок 2.5. Список бот-станций


    В появившейся форме кликните "Добавить бота" (См. Рис. 2.6)


    R158 ru.png
    Рисунок 2.6 Форма бот-станции


    В открывшейся форме создания бота (См. Рис. 2.7) выберите из списка пользователя "Бот данных", в поле "Пароль бота" введите пароль этого пользователя ("123").


    R159 ru.png
    Рисунок 2.7 Создание бота "Бот данных"


    Будет создан бот, который будет обращаться к RunaWFE симулятору от имени пользователя "Бот данных".

  15. Создайте задание бота
  16. Кликните на созданного бота (См. Рис. 2.8).
    R160 ru.png
    Рисунок 2.8 Список ботов


    В появившейся форме кликните на "Добавить" в разделе "Задания" (См. Рис. 2.9).


    R161 ru.png
    Рисунок 2.9 Добавление задания боту


    В появившейся строке введите в поле "Задание" строку "Ввести данные о заявке в учетную систему" (в данном случае уже без опечатки), в поле "Обработчик задания" выберите обработчик "DoNothingTaskHandler" (См. Рис. 2.10), в поле "Конфигурация" ничего вводить не надо. Кликните "Применить".

    R162 ru.png
    Рисунок 2.10 Задание "Ввести данные о заявке в учетную систему"


    Замечание. Данное применение бота является условным. Обработчик "DoNothingTaskHandler" автоматически сообщает бизнес-процессу, что задание выполнено, при этом никаких реальных действий не производит. Предполагается, что на этом примере (без реальной интеграции) студенты знакомятся с общим механизмом реализации интеграции СУБПиАР с другими информационными системами.

    Для реальной организации взаимодействия экземпляров бизнес-процессов с информационными системами предприятия используются другие обработчики, например, "DatabaseTaskHandler" (обработчик для взаимодействия с реляционными базами данных) или "WebServiceTaskHandler" (обработчик для взаимодействия с веб-сервисами). Для этих обработчиков в конфигурации заданий задаются параметры коннекторов к информационным системам (ссылки на источники данный, типы протоколов, URL-адреса и т.п.). Работа конкретных ботов будет подробно рассмотрена в следующих занятиях.

  17. Запустите периодическую активацию бот-станции
  18. Войдите в меню "Бот станции", кликните на бот-станции "localbotstation", в открывшейся форме выполните команду "Запустить периодическую активацию ботов" (См. Рис. 2.11)
    R163 ru.png
    Рисунок 2.11 Запуск периодической активации бот-станции


  19. Инициализируйте роли
  20. Войдите в среду разработки, откройте вкладку "Роли" бизнес-процесса "Пример 4-1". Роль "Сотрудник" оставьте без инициализатора, эта роль будет инициализирована узлом-началом, то есть на роль "Сотрудник" в экземпляре бизнес-процесса будет назначен пользователь, запустивший этот экземпляр бизнес-процесса. Инициализируйте роль "Директор" группой "Директор", для этого кликните на командной кнопке "Изменить" (См. Рис. 2.12). В появившейся форме кликните на нижней вкладке "Задать роль с помощью оргфункции" и верхней вкладке "Группы и пользователи WF" (См. Рис. 2.13).
    R164 ru.png
    Рисунок 2.12 Редактирование инициализатора роли "Директор"


    R165 ru.png
    Рисунок 2.13 Форма редактирование инициализатора роли "Директор"


    Кликните на ссылке "Настройки соединения" (Подробнее см. Занятие 2, Порядок выполнения работы, Пункт 26, Рис. 3.16).

    В появившейся форме введите URL RunaWFE симулятора, а также логин и пароль пользователя, под которым будет установлено соединение. Если Вы не меняли установки по умолчанию, то можно использовать значения, которые установлены в форме (Подробнее см. Занятие 2, Порядок выполнения работы, Пункт 26, Рис. 3.17).

    Проверьте соединение, кликнув на кнопку "Проверить соединение". Если соединение будет установлено, то появится сообщение об этом (См. Рис 3.18).

    Если появится сообщение об ошибке соединения, проверьте что RunaWFE симулятор запущен (См. Вводное занятие, Порядок выполнения работы, Пункт 1).

    Кликните на "ОК". В появившейся форме кликните на "Синхронизация". Затем кликните на "Группа" и ссылку "Выбрать" (См. Рис. 2.14)


    R166 ru.png
    Рисунок 2.14 Инициализация роли группой пользователей


    В открывшемся окне выберите группу "Директор". Кликните "ОК".

    Перейдите к редактированию инициализатора роли "Бот работы с данными". В форме редактирования инициализатора кликните на нижней вкладке "Задать роль с помощью оргфункции" и верхней вкладке "Группы и пользователи WF" (См. Рис. 2.13).

    Затем кликните на "пользователь" и ссылку "Выбрать". В появившейся форме выберите пользователя "Бот данных" (См. Рис. 2.15) Кликните на "ОК".


    R167 ru.png
    Рисунок 2.15 Инициализация роли пользователем


  21. Создайте графические формы заданий
  22. Перейдите на вкладку "Граф". Кликните правой кнопкой мыши на узле-начале. В появившемся контекстном меню выберите Форма/Создать форму (См. Рис. 2.16).
    R168e2 ru.png
    Рисунок 2.16 Создание графической формы узла-начала.


    Будет создана новая форма, при этом автоматически откроется панель "Компоненты формы", содержащая список доступных для использования компонентов. В появившейся форме введите текст "Название услуги" и расположите напротив компонент "Ввод переменной". Для этого выделите его в списке компонентов и с помощью мыши перетащите в окно формы (См. Рис. 2.17)


    R169e ru.png
    Рисунок 2.17 Добавление компонента форм


    Сделайте двойной клик мышью по добавленному на форму компоненту "Ввод переменной" или вызовите на нем контекстное меню и выберите пункт "Параметры компонента". Будет открыто окно для редактирования параметров компонента. Выберите переменную "Название услуги" (См. Рис. 2.18).


    R170e ru.png
    Рисунок 2.18 Ввод переменной "Название услуги"


    Аналогично добавьте на форму ввод переменных: "Поставщик услуги", "Дата начала действия услуги", "Дата окончания действия услуги", "Стоимость услуги" и "Комментарий" (См. Рис. 2.19).


    R171e ru.png
    Рисунок 2.19 Стартовая форма "Подать заявку на покупку услуги"


    Сохраните форму стартового узла.

    Создайте форму узла-действия "Рассмотреть заявку на покупку услуги" (См. Рис. 2.16). В форме введите текст "Название услуги" и расположите напротив компонент "Отобразить переменную". Для этого выделите его в списке компонентов и с помощью мыши перетащите в окно формы (См. Рис. 2.20)


    R172e ru.png
    Рисунок 2.20 Компонент форм - "Отобразить переменную"


    Дважды кликните по добавленному компоненту, будет открыто окно параметров, в поле "Название переменной" выберите "Название услуги", форма отображения - "Как строку" (См. Рис. 2.21).


    R173e ru.png
    Рисунок 2.21 Параметры компонента "Отобразить переменную"


    Аналогичным образом поместите на форму элементы для отображения переменных "Поставщик услуги", "Дата начала действия услуги", "Дата окончания действия услуги" и "Стоимость услуги" (См. Рис. 2.22).


    R174e ru.png
    Рисунок 2.22 Отображение переменных "Поставщик услуги", "Дата начала действия услуги", "Дата окончания действия услуги" и "Стоимость услуги"


    Также добавьте вывод переменной "Комментарий", т.к. данная переменная представляет собой многострочный текст, то используйте форму отображения - "Как неактивный компонент ввода" (См. Рис. 2.23).


    R175e ru.png
    Рисунок 2.23 Отобразить переменную "Комментарий" как неактивный компонент ввода


    Далее поместите на форму текст "Подавший заявку", после чего используя компонент "Отобразить переменную" добавьте вывод роли "Сотрудник" (См. Рис. 2.24)


    R176e ru.png
    Рисунок 2.24 Вывод значения роли "Сотрудник"


    Далее введите "Комментарий директора" и поместите компонент "Ввод переменной" для "Комментарий директора" (См. Рис. 2.25).


    R177e ru.png
    Рисунок 2.25 Ввод переменной "Комментарий директора"


    В результате форма должна выглядеть как на Рис. 2.26


    R178e ru.png
    Рисунок 2.26 Форма "Рассмотреть заявку на покупку услуги"


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

    Замечание. Из одной формы в другую можно переносить графические элементы путем выделения, копирования и вставки. Кроме того, формы "Ознакомиться с одобрением заявки" и "Ознакомиться с отказом" будут отличаться лишь заголовками, поэтому удобно воспользоваться созданием формы на основе существующей (Подробнее см. Занятие 3, Порядок выполнения работы, Пункт 6, Рис. 4.24, 4.25).


  23. Установите ограничения на вводимые в графические элементы форм данные
  24. Кликните на узле-начале правой кнопкой мыши, выполните команду "Форма / Проверка переменных формы" (См. Рис. 2.27).
    R179e2.png
    Рисунок 2.27 Вызов формы задания ограничений на значения переменных


    В появившейся форме кликните на строку, соответствующую переменной "Название услуги". Установите галочку для строки "Обязательное поле". В появившееся внизу поле впишите текст сообщения об ошибке (См. Рис. 2.28).


    R180 ru.png
    Рисунок 2.28 Признак обязательности заполнения поля


    При запуске экземпляра бизнес-процесcа система проверит, что в поле "Название услуги" введено значение. Если значение не введено, то система не будет запускать экземпляр бизнес-процесса и выведет сообщение об ошибке, текст которого помещен в поле "Сообщение об ошибке".

    Далее кликните на строку, соответствующую переменной "Поставщик услуги". Установите галочку для строки "Обязательное поле". Введите текст сообщения об ошибке.

    Кликните на строку, соответствующую переменной "Дата начала действия услуги". Установите галочку для строки "Обязательное поле". Введите текст сообщения об ошибке. Установите галочку для строки "Диапазон даты относительно текущей", установите возможный сдвиг в прошлое - 0 дней и в будущее - 30 дней, в поле "Рабочее время" выберите значение false. Введите текст сообщения об ошибке "Дата не может быть в прошлом, или более, чем на 30 дней превышать текущую" (См. Рис. 2.29).


    R181 ru.png
    Рисунок 2.29 Ограничение на вводимую дату


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

    Для переменной "Стоимость услуги" установите признак обязательности ввода значения и разрешенный диапазон значений от нуля до 25 000. Введите текст сообщения об ошибке (См. Рис. 2.30).


    R182 ru.png
    Рисунок 2.30 Ограничение на вводимое числовое значение


    Для переменной "Комментарий" не устанавливайте признак обязательности ввода значения, но задайте ограничение на максимальный размер вводимого текста (См. Рис. 2.31).


    R183 ru.png
    Рисунок 2.31 Ограничение на длину вводимого текста


    Нажмите "Далее". В появившейся форме кликните на "Добавить", в поле ввода сообщения об ошибке вставьте "Дата окончания действия услуги не может быть раньше даты начала действия услуги".

    В конструкторе проверяемого соотношения в нижней части формы выберите две переменные: "Дата_окончания_действия_услуги" и "Дата_начала_действия_услуги" и установите между ними соотношение "не раньше" (См. Рис. 2.32).

    Кликните на "Finish".


    R184 ru.png
    Рисунок 2.32 Ограничение на соотношение дат


    Кликните на узле-действии "Рассмотреть заявку на покупку услуги" правой кнопкой мыши, выполните команду "Форма / Проверка переменных формы" (См. Рис. 2.27).

    В этом узле-действии в бизнес-процесс может быть введена только одна переменная - "Комментарий директора". Не устанавливая для нее признак обязательности ввода значения, задайте ограничение на максимальный размер вводимого текста (См. Рис. 2.33).


    R185 ru.png
    Рисунок 2.33 Ограничение на длину комментария директора


  25. Бизнес-процесс готов. Загрузите его на RunaWFE сервер.
  26. Для этого кликните на разработанный бизнес-процесс, в меню выберите команду "Файл / Экспорт процесса" (Подробнее см. Занятие 1, Порядок выполнения работы, Пункты 11-14)
  27. Войдите в web-интерфейс системы RunaWFE под пользователем Administrator. (Подробнее см. Вводное занятие, Порядок выполнения работы, Пункт 2, Рис. 5.2). По умолчанию пароль пользователя Administrator - "wf".
  28. Перейдите к списку бизнес-процессов, кликнув по ссылке «Запустить процесс» в левой части экрана.
  29. Найдите бизнес-процесс в списке "Пример 4-1" и перейдите в его свойства, кликнув по одноименной ссылке «Свойства» напротив процесса.
  30. Дайте полномочия группам "Сотрудники" и "Директор" на чтение определения и экземпляров разработанного бизнес-процесса. Дайте полномочия группе "Сотрудники" на запуск бизнес-процесса (Подробнее см. Занятие 2, Порядок выполнения работы, Пункт 31, Рис. 3.23).
  31. Далее рассмотрим выполнение данного бизнес-процесса.
  32. Войдите в web-интерфейс системы RunaWFE под пользователем входящим в группу "Сотрудники", например пользователь "Паучков".
  33. Запустите бизнес-процесс, для этого перейдите по ссылке "Запустить процесс" и кликните по строке "Пример 4-1"
  34. Введите данные на стартовой форме процесса
  35. Проверьте работу всех заданных ограничений на ввод данных в стартовой форме. Например, на следующем рисунке видно как сработал валидатор для "Дата начала действия услуги"
    R185 2 e.png
    Рисунок 2.34 Ограничение на диапазон для "Дата начала действия услуги"


  36. Запустите бизнес-процесс с помощью соответствующей кнопки, расположенной на стартовой форме
  37. Пользователь, входящий в группу "Директор" получит задание "Рассмотреть заявку на покупку услуги"
  38. Войдите в web-интерфейс системы RunaWFE под пользователем "Стрекозин".
  39. Выполните задание "Рассмотреть заявку на покупку услуги", одобрив заявку.
  40. Для этого нажмите кнопку "Одобрить" расположенной на форме данного задания.
    R185 3 e.png
    Рисунок 2.35 Одобрение директором заявки на покупку услуги


    Сотрудник "Паучков" будет проинформирован о решении директора с помощью соответствующего задания.


  41. Войдите в web-интерфейс системы RunaWFE под пользователем "Паучков".
  42. Выполните задание "Ознакомиться с одобрением услуги"
  43. Параллельно с созданием задачи "Ознакомиться с одобрением услуги", должна была быть назначена задача и для "Бот работы с данными"
  44. Проверьте , выполнил ли "Бот работы с данными" задачу внесения данных о заявке в учетную систему.
  45. Для этого перейдите в раздел "Запущенные процессы" и кликните по текущему запущенному экземпляру бизнес-процесса "Пример 4-1"
    R185 4 e.png
    Рисунок 2.36 Запущенные процессы


    Прокрутите окно со свойствами экземпляра процесса "Пример 4-1" до отображения графа,


    R185 5 e.png
    Рисунок 2.37 Граф выполнения бизнес-процесса "Пример 4-1"


    Как видите, "Бот работы с данными" до сих пор не выполнил задание. Это произошло потому, что при разработке бизнес-процесса "Пример 4-1" была допущена опечатка в названии задания бота "Ввести даные о заявке в учетную систему", вследствие чего название задания бота (заведенного на сервере) не совпало с названием задания в бизнес-процессе.


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


    Сообщения об ошибках выполнения бизнес-процесса, можно увидеть либо в свойствах экземпляра выполняемого бизнес-процесса, либо в разделе "Система".

    Прокрутите окно свойств выполняемого экземпляра бизнес-процесс в самый верх. Как видите, здесь имеется сообщение об ошибке.

    Нажмите на "Ввести даные о заявке в учетную систему", будет открыто окно с техническим подробностями данной проблемы.


    R185 6 e.png
    Рисунок 2.38 Сообщение об ошибке


    Кроме того, сообщение об ошибках в процессах и конфигурациях заданий ботов можно наблюдать в разделе "Система" (доступен только Администратору).


  46. Войдите в web-интерфейс системы RunaWFE под пользователем "Administrator" (пароль wf).
  47. Перейдите по ссылке «Система» в левой части экрана.
  48. Прокрутите окно вниз, как видите, здесь тоже имеется сообщение об ошибке при выполнении бизнес-процесса "Пример 4-1"
    R185 7 e.png
    Рисунок 2.39 Ошибки в процессах


  49. Откройте среду разработки и исправьте опечатку в названии узла "Ввести даные о заявке в учетную систему" бизнес-процесса "Пример 4-1"
  50. Повторите выполнение бизнес-процесса по шагам. Удостоверьтесь, что теперь "Бот работы с данными" выполняет задачу "Ввести данные о заявке в учетную систему" и процесс выполняется без ошибок.

Задание для самостоятельной работы

Разработайте бизнес-процесс сдачи экзамена "Пример 4-2", схема которого изображена на рисунке 2.40.

Роль «Студент» должна быть инициализирована стартовым узлом, а роль «Преподаватель» - отношением «Преподаватель», примененным к роли «Студент» (см. предыдущие занятия). Роль "Старший преподаватель" должна быть инициализирована группой "Преподаватели".

В бизнес-процессе должны быть следующие переменные.


Переменные типа "Строка":

  • Предмет
  • Место экзамена

Переменные типа "Текст":

  • Комментарий
  • Комментарий-преподавателя
  • Вопрос по теории
  • Ответ на вопрос по теории
  • Комментарий по теории
  • Задача
  • Решение задачи
  • Комментарий по задаче
  • Комментарий старшего преподавателя

Переменные типа "Дата-время":

  • Дата-время экзамена

Переменные типа "Целое":

  • Оценка за теорию
  • Оценка за задачу
  • Итоговая оценка


R188.png
Рисунок 2.40 Схема бизнес-процесса сдачи экзамена ("Пример 4-2") для самостоятельной разработки


В стартовой форме бизнес-процесса должны быть введены следующие переменные:

  • Предмет
  • Комментарий

Переменная "Предмет" должна быть обязательной, Комментарий - не обязательной. На длину переменной "Предмет" должно быть наложено ограничение в 50 символов, на длину переменной Комментарий - в 200 символов.

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

В узлах "Ознакомиться с недопуском к экзамену" и "Ознакомиться с получением экзамена автоматом" должно быть выведено значение роли "Преподаватель", а также значения всех веденных в бизнес-процесс переменных.

В форме узла-действия "Назначить дату и время экзамена" должно быть выведено значение роли "Студент", а также значения всех веденных в бизнес-процесс переменных. На форме должен быть ввод переменных "Дата-время экзамена" и "Место экзамена".

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

На переменную "Место экзамена" должны быть наложены следующие ограничения: поле должно быть обязательно для ввода, длина вводимого в переменную текста не может превышать 100 символов.

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

Форма узла-действия "Сформулировать задачу" должна быть подобна форме узла-действия "Сформулировать теоретический вопрос", только вместо переменной "Вопрос по теории" на форме должна вводиться переменная "Задача".

В формах узлов-действий "Написать ответ на теоретический вопрос" и "Написать решение задачи" должны быть введены соответственно переменные "Ответ на вопрос по теории" и "Решение задачи". Вывод переменных и ограничения должны быть аналогичны ранее описанным формам.

В формах узлов-действий "Написать ответ на теоретический вопрос" и "Написать решение задачи" должны быть введены соответственно переменные "Ответ на вопрос по теории" и "Решение задачи". Вывод переменных и ограничения должны быть аналогичны ранее описанным формам.

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

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

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

В узлах-действиях "Ознакомиться с необходимостью пересдачи экзамена" и "Ознакомиться с необходимостью пересдачи экзамена" должны быть введены значения всех введенных в бизнес-процесс переменных и значения всех ролей.

Узел-действие "Внести данные в учетную систему" и соответствующая задача боту настраиваются аналогично тому, как это было сделано в бизнес-процессе "Пример 4-1".

После разработки бизнес-процесса "Пример 4-2" загрузите его на RunaWFE сервер и выполните под разными пользователями. Добейтесь прохождения точек управления по всем возможным маршрутам. Проверьте выполнение ограничений и работу бота.

Требования к представлению результатов занятия

В результате выполнения лабораторной работы должны быть представлены преподавателю отчет и файл с данными archive.datafile (как получить файл данных), содержащие разработанные на занятии бизнес-процессы.

В отчете должны содержаться следующие выходные данные:

1) Скриншоты основных действий, совершенных на занятии, с пояснениями

2) Скриншоты, содержащие маршруты точек управления для экземпляров бизнес-процессов, доведенных до завершения.

3) Скриншоты, содержащие созданные на занятии роли, переменные, настройки ботов, основные формы и их ограничения

4) Описание возникших при выполнении задания проблем и найденных путей их решения (не обязательно, только если возникли проблемы при выполнении задания)

Контрольные вопросы

  1. Что такое перспектива операций?
  2. Что такое бот-станция?
  3. Как используется в бизнес-процессе определенное в бот-станции задание для бота?
  4. Можно ли в форме бизнес-процесса ввести ограничение, в соответствии с которым одна вводимая в форму дата обязательно должна быть больше другой?

Практическое занятие "Работа с Word-ботом"

Цель занятия

Целью занятия является изучение работы с Word-ботом.

Теоретические сведения

Необходимые теоретические сведения изложены в первой части лабораторного практикума в пункте "Концепция ботов и бот-станций" раздела "Стандарты и концепции, связанные с СУБПиАР".

Порядок выполнения работы

  1. Запустите среду разработки
  2. Создайте новый проект - Занятие 5 Создайте новый бизнес-процесс "Пример 5-1". Используйте следующие элементы для создания бизнес-процесса в соответствии с рисунком 3.1
    • Начало
    • Задача сценария
    • Действие
    • Параллельный шлюз
    • Исключающий шлюз
    • Подпроцесс
    R187e ru.png
    Рисунок 3.1 Схема бизнес процесса "Пример 5-1"


    Замечание: для "Задача сценария" используйте компактный вид, кликните на элементе правой клавишей мыши и выберите пункт "Опции - Компактный вид" (см. рис. 3.2), после чего элемент примет вид изображенный на рис. 3.1. Используйте данную опцию для всех 4 задач сценариев.


    R188 ru.png
    Рисунок 3.2 Компактный вид для задач сценариев


    Создайте роли:

    • Руководитель
    • Сотрудник
    • Отдел кадров
    • Директор
    • Бухгалтер
    • Word бот

    Далее выберите для узлов роли в соответствии с рисунком 3.1

    Замечание. Роль "Руководитель" инициализируется в стартовом узле бизнес-процесса.

  3. Запустите симулятор. Войдите в web-интерфейс системы RunaWFE под пользователем Administrator.
  4. Создайте отношение "Руководитель" (См. пример создания отношения в пунктах 10-11 раздела "Практическое занятие "Изучение перспективы ресурсов", рис. 3.5, 3.6)
  5. Откройте отношение "Руководитель" и создайте пару "Паучков " - "Сверчков" (см. рис. 3.3)
    R189 ru.png
    Рисунок 3.3 Отношение Руководитель


    Таким образом, Паучков руководитель Сверчкова.

  6. Создайте группы
    • Отдел кадров
    • Бухгалтеры
    (см. Вводное занятие. Пункт 5, рис. 5.5)
  7. Инициализирйте роли "Директор", "Отдел кадров" и "Бухгалтер" с помощью соответствующих групп (директор, отдел кадров, бухгалтеры)
  8. Для этого вернитесь в среду разработки к разрабатываемому процессу, перейдите на вкладку Роли, выделите роль и нажмите на "Изменить". Используйте инициализацию с помощью групп wf (подробнее см. Практическое занятие "Изучение перспективы операций", Порядок выполнения работы, Пункт 13, рис. 2.13-2.14)
  9. Создайте переменные в соответствии с рисунком 3.4
  10. R190e ru.png
    Рисунок 3.4 Переменные бизнес-процесса


    Для переменной "Отношение" необходимо использовать значение по умолчанию, для этого выделите переменную и нажмите "Изменить", затем "Далее" Переключитесь на строку "Использовать значение по умолчанию", после чего в текстовое поле введите "Руководитель" (см. Рис. 3.5).


    R190be ru.png
    Рисунок 3.5 Ввод значения по умолчанию переменной


    R190c ru.png
    Рисунок 3.6 Список переменных в случае установленного IE11
  11. Создайте форму для стартового узла "Подать заявку на премию"
  12. Замечание. По умолчанию в качестве редактора форм используется CKEditor4, но в случае если у вас в системе установлен браузер Microsoft Internet Explorer устаревшей версии - 6 (IE6) или 7 (IE7), то с формами могут возникнуть проблемы. Поэтому следует переключить редактор на FCKEditor2, Практическое занятие "Изучение перспективы данных", Пункт 6, Рис. 4.9, 4.10 На данной форме Руководитель будет вводить данные (сотрудник, размер премии, выполненные работы) для подачи заявки на премию.
    R191ae ru.png
    Рисунок 3.7 Форма стартового узла


    Напротив строки "Сотрудник" расположите компонент форм "Выбрать пользователя по отношению с параметром". Данный компонент формирует список выбора пользователя по отношению, отфильтрованного по параметру отношения (при этом группы в список не попадают).

    Дважды кликните по добавленному на форму компоненту, далее в поле "Пользователь" выберите роль "Сотрудник".

    Поля "Название отношения" и "Параметр" необходимо заполнить с помощью переменных, для этого нажмите на кнопку "..." напротив поля, а затем кликните на ссылку "Выберите переменную" (см. рис. 3.8), после чего откроется список доступных для выбора переменных.

    В поле "Название отношения" выберите строковую переменную "Отношение", в качестве параметра выберите роль "Руководитель".

    Кроме того, используйте обратное отношение (см. рис. 3.9).


    R191be ru.png
    Рисунок 3.8 Выбор переменной в качестве названия отношения


    R191ce ru.png
    Рисунок 3.9 Выбор пользователя по обратному отношению "Руководитель"


    Таким образом будет сформирован список выбора пользователя по отношению "Руководитель", при этом используем обратное отношение т.е. параметр роль "Руководитель" соответствует "левой" части в паре, в список же попадут пользователи из "правой части" (подробнее об отношениях см. в "Стандарты и концепции, связанные с СУБПиАР. Использование бинарных отношений для упрощения инициализации ролей").

    Напротив строки "Сумма" расположите компонент для ввода переменной "Размер премии" (см. рис. 3.10). Также разместите компонент для ввода переменной "Описание выполненных работ".


    R192e ru.png
    Рисунок 3.10 Ввод переменной "Размер премии"


    Сохраните и закройте форму.

  13. Задайте валидацию для переменных и роли стартовой формы
  14. Для переменных "Размер премии" и "Описание выполненных работ" добавьте валидатор "обязательное поле" (см. Практическое занятие "Изучение перспективы операций", Пункт 15, рис. 2.27, 2.28). В форме валидации перейдите на вкладку Роли, и таким же образом, как и для переменных, добавьте валидатор "обязательное поле" для роли "Сотрудник" (см. рис. 3.11)
    R193 ru.png
    Рисунок 3.11 Валидатор для роли "Сотрудник"


    Нажмите Finish и сохраните процесс.

  15. Настройте задачи сценариев
  16. Выделите первую задачу сценария, перейдите в свойства, здесь введите название - "ФИО сотрудника". Кликните на выбор класса обработчика и выберите из списка - обработчик "Получить информацию об исполнителе", нажмите ОК (см. рис. 3.12, 3.13)
    R194a ru.png
    Рисунок 3.12 Задача сценария "определение ФИО Сотрудника"


    R194b ru.png
    Рисунок 3.13 Выбор класса обработчика


    Далее вызовите конфигурацию данного обработчика, выберите параметры "Исполнитель", "Формат", "Результат" в соответствии с рисунком 3.14


    R194c ru.png
    Рисунок 3.14 Конфигурация обработчика "Получить информацию об исполнителе"


    Данный обработчик определяет полное имя (ФИО) Сотрудника и сохраняет результат в строковую переменную "ФИО сотрудника", однако в служебной записке и приказе на премирование должно использоваться ФИО в "Дательном" падеже.


    Настройте следующую задачу сценария. Название - "ФИО сотрудника в дательном падеже", класс обработчика - "Выполнить формулу". Добавьте конфигурацию данного обработчика, следующего вида

    'ФИО сотрудника 3'=FIO_case_ru('ФИО сотрудника', 3, "F i o")
    

    'ФИО сотрудника 3' - переменная, в которую будет сохранено ФИО в дательном падеже,

    FIO_case_ru(fio, caseNumber, mode) - функция склоняющая ФИО, имеет параметры:

    • fio - фамилия, имя и отчество в именительном падеже (в нашем случае задана с помощью переменной 'ФИО сотрудника')
    • caseNumber - номер падежа от 1 до 6 (в нашем случае 3 - это Дательный падеж)
    • mode - строка форматирования
       Символы F, I и O заменяются на фамилию, имя или отчество в соответствующем падеже. 
       Символы f, i и o заменяются на первую букву фамилии, имени или отчества.
    

    т.е. данный обработчик сформирует Фамилию в дательном падеже, первую букву Имени и первую букву Отчества, например Иванову И.И.

    Для вставки в конфигурацию переменных воспользуйтесь пунктом "Вставить переменную", соответственно для вставки функции используйте "Вставить функцию"


    R195 ru.png
    Рисунок 3.15 Получение ФИО сотрудника в дательном падеже


    Следующая задача сценария (см. рис. 3.16) - это "Определение текущей даты". Здесь также используется "Выполнить формулу" в качестве обработчика. Конфигурация имеет следующее выражение

    'Текущая дата' = current_date();
    

    функция current_date определяет текущую дату и сохраняет результат в переменную "Текущая дата"


    R196 ru.png
    Рисунок 3.16 Определение текущей даты


    Следующая задача сценария будет генерировать файл служебной записки. Выделите задачу, дайте ей название "Генерации служебной записки", в качестве класса обработчика выберите - "Word: Формирование документа DOCX использую шаблон" (см. рис. 3.17)


    R197a ru.png
    Рисунок 3.17 Задача "Генерировать служебную записку"


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


    R197b ru.png
    Рисунок 3.18 Конфигуратор docx обработчика


    Для создания шаблона в процессе кликните "Создать", затем "Изменить", будет открыт редактор Word, в котором необходимо создать шаблон вида, изображенного на рисунке 3.19


    R198 ru.png
    Рисунок 3.19 Шаблон служебной записки на премирование


    При выполнении обработчик заменит выражения вида ${Переменная} на значения переменных из процесса в формате, определенном в среде разработки. Кроме ранее рассмотренных переменных, тут также используется поле fullName, определяющее ФИО пользователя (в именительном падеже) роли Руководитель.

    Сохраните шаблон и закройте редактор word файлов.

  17. Создайте форму для узла "Подписать служебную записку и отдать ее в отдел кадров"
  18. Отобразите файловую переменную "Служебная записка"
    R199e ru.png
    Рисунок 3.20 Форма "Подписать служебную записку и отдать ее в отдел кадров"


    т.е. на данной форме Руководитель получит ссылку на файл служебной записки, которую необходимо подписать и отдать в отдел кадров.

  19. Создайте форму для узла "Рассмотреть заявку на премию"
  20. R200e ru.png
    Рисунок 3.21 Форма "Рассмотреть заявку на премию"


    Здесь расположите компоненты "Отобразить переменную". Для отображение роли "Руководитель" (будет выведены ФИО Руководителя), переменных "ФИО сотрудника", "размер премии" - используйте форму отображения "Как строку". Для отображения переменной "Описание выполненных работ" используйте в качестве формы отображения вариант "Как неактивный компонент ввода"

    Также добавьте компонент для ввода переменной "Комментарий директора"

    Здесь Директор рассматривает заявку, вводит комментарии и одобряет или отказывает в премировании.

    Для переменной "Комментарий директора" добавьте валидатор "обязательное поле"

  21. Создайте форму для узла "Ознакомиться с сообщением об отказе"
  22. R201e ru.png
    Рисунок 3.22 Форма "Ознакомиться с сообщением об отказе"

    Сделайте отображение значений переменных "ФИО сотрудника", "Размер премии", "Описание выполненных работ", "Комментарий директора". При этом для строковых переменных используйте отображение "Как строка", для текстовых переменных - "Как неактивный компонент ввода"


  23. Создайте форму для узла "Ознакомиться с сообщением о согласии"
  24. Т.к. данная форма отличается от формы "Ознакомиться с сообщением об отказе" лишь заголовком, то можно воспользоваться функцией создания формы на основе существующей (Подробнее см. Занятие 3, Порядок выполнения работы, Пункт 6, Рис. 4.24, 4.25).
    R202e ru.png
    Рисунок 3.23 Форма "Ознакомиться с сообщением о согласии"


  25. Создайте композицию "Издание приказа и начисление премии"
  26. Композиция похожа на подпроцесс, однако является более «легкой» конструкцией, т.к. для композиции не порождается нового экземпляра процесса, следовательно у нее нет своих собственных переменных, инициализаторов ролей и т.д. Выделите на схеме элемент подпроцесс, дайте ему название "Издание приказа и начисление премии", затем кликните на данном элементе правой клавишей мыши и выберите "Использовать композицию. Новый подпроцесс" (см. рис. 3.24)
    R203 ru.png
    Рисунок 3.24 Вызов функции создание композиции


    В появившемся окне введите название "Издание приказа и начисление премии"


    R204 ru.png
    Рисунок 3.25 Форма создания композиции


  27. Создайте композицию вида изображенного на рисунке 3.26
  28. R205e ru.png
    Рисунок 3.26 Схема композиции "Издание приказа и начисление премии"


    Проинициализируйте задачи ролями в соответствии с рисунком. При этом для задач у которых роль - "Отдел кадров" (Издать приказ о премировании, Получить подпись сотрудника об ознакомлении с приказом) используйте опцию "Переинициализация роли" (см. рис. 3.27)


    R206e ru.png
    Рисунок 3.27 Переинициализация роли Отдел кадров


  29. Создайте форму для узла "Издать приказ о премировании"
  30. Расположите здесь компонент для ввода переменной "номер приказа"
    R207e ru.png
    Рисунок 3.28 Форма "Издать приказ о премировании"


    Для переменной "номер приказа" добавьте валидатор "обязательное поле" (см. рис. 3.29)


    R208 ru.png
    Рисунок 3.29 Валидатор для переменной "Номер приказа"


  31. Настройте задачи сценария
  32. В задаче сценария "ФИО директора" используя класс обработчика "Получить информацию об исполнителе" определите фамилию, имя и отчество Директора (см. рис. 3.30)
    R209 ru.png
    Рисунок 3.30 Определение ФИО директора


    Выберите класс обработчика "Выполнить формулу" для задачи сценария "Сформировать текст приказа"


    R210 ru.png
    Рисунок 3.31 Задача "Сформировать текст приказа"


    Используйте следующую конфигурацию для данного обработчика:

    'Текст приказа о премировании'="Начислить сотруднику " + 'ФИО сотрудника 3' + " премию за высокие достижения в работе в сумме " + 'Размер премии' + " руб."
    

    Здесь используются переменные: 'Текст приказа о премировании', 'ФИО сотрудника 3' и 'Размер премии'

    Сохраните и закройте процесс с композицией.

  33. Разработайте Word бота и задачу бота "Сгенерировать приказ" непосредственно в среде разработки
  34. Откройте вкладку "Боты" (см. рис. 3.32)
    R211 ru.png
    Рисунок 3.32 Вкладка "Боты"


    Сделайте импорт бот станции с wfe (была создана ранее в "Практическое занятие "Изучение перспективы операций"), для этого кликните правой клавишей мыши в окне боты, и выберите пункт "Импорт бот станции" (см. рис. 3.33)


    R212 ru.png
    Рисунок 3.33 Меню вызова импорта бот станции


    В появившемся окне переключитесь на "Импорт с сервера WFE" и нажмите "Синхронизация". Выделите бот станцию localbotstation и нажмите "Готово" (см. рис. 3.34)


    R213e ru.png
    Рисунок 3.34 Импорт бот localbotstation с WFE сервера


    localbotstation будет добавлена в среду разработки. Перейдем к созданию бота Word бот.

    Сделайте клик правой клавишей мыши на localbotstation и выберите пункт "Новый бот"


    R214 ru.png
    Рисунок 3.35 Создание нового бота


    Введите имя бота - "Word бот" и нажмите "Готово" (см. рис. 3.36)


    R215e ru.png
    Рисунок 3.36 Форма создания нового бота


    Теперь создайте задачу бота "Сгенерировать приказ", данная задача должна быть с формальными параметрами, поэтому воспользуйтесь пунктом "Новая задача бота с формальными параметрами" (см. рис. 3.37)


    R216 ru.png
    Рисунок 3.37 Меню для создания задачи бота с формальными параметрами


    Введите название задания - "Сгенерировать приказ" и нажмите "Готово"


    R217e ru.png
    Рисунок 3.38 Создание задачи бота


    Будет создана задача с формальными параметрами. Нажмите "Выбрать" для показа списка обработчиков (см. рис. 3.39)


    R218a ru.png
    Рисунок 3.39 Вызов списка обработчиков


    Выделите обработчик "Word: формирование документа DOCX используя шаблон" и нажмите ОК (см. рис. 3.40)


    R218b ru.png
    Рисунок 3.40 Список обработчиков


    Нажмите кнопку "Добавить" в окне "Входные параметры" (см. рис. 3.41)


    R219 ru.png
    Рисунок 3.41 "Добавить" входные параметры


    Откроется форма в которой необходимо ввести название параметра и выбрать его тип (см. рис. 3.42)


    R220 ru.png
    Рисунок 3.42 Форма создания входного параметра


    Выходные параметры создаются аналогично.

    Создайте входные и выходные параметры согласно рисунку 3.43


    R221 ru.png
    Рисунок 3.43 Параметры задачи "Сгенерировать приказ"


    Сохраните задачу.

    Перейдем к созданию шаблона для приказа. Запустите редактор для Word файлов и создайте "Шаблон приказа.docx" следующего вида:


    R222e1.png
    Рисунок 3.44 Шаблон приказа


    Сохраните файл "Шаблон приказа.docx" в корне диска C:\

    Как видно из шаблона, в конструкции ${..} заданы названия входных формальных параметров задачи "Сгенерировать приказ": "Текст приказа", "дата", "имя директора", "полное имя сотрудника". Кроме того, здесь используется "Номер приказа", который не входит в список параметров задачи "Сгенерировать приказ" т.е. процесс который будет использовать данную задачу бота, должен содержать переменную с названием "Номер приказа".


    Замечание: обратите внимание, в представленном шаблоне допущена ошибка. Вместо формального параметра с названием "полное имя директора" используется "имя директора". Причина этого будет объяснена при описании выполнения данного бизнес-процесса.


    Вернитесь в среду разработки, к задаче "Сгенерировать приказ". Вызовите окно конфигуратора обработчика docx, для этого нажмите на кнопку "Изменить" в окне конфигурации (см. рис. 3.45)


    R223 ru.png
    Рисунок 3.45 Вызов конфигуратора обработчика


    Входной файл шаблона задайте с помощью пути к файлу, для выходного файла используйте файловую переменную параметр "Файл приказа", в поле "имя выходного файла" введите "Приказ.docx" (см. рис. 3.46)


    R224 ru.png
    Рисунок 3.46 Конфигурация обработчика docx файлов


    Нажмите OK, и сохраните задачу.

    Вернитесь к процессу "Пример 5-1", здесь необходимо инициализировать роль Word бот. Перейдите на вкладку "Роли", выделите Word бот, нажмите "Изменить".

    На вкладке "Бот" выберите исполнителя по имени "Word бот" (см. рис. 3.47)


    R225 ru.png
    Рисунок 3.47 Инициализатор роли Word бот


    Нажмите ОК, сохраните процесс.

    Перейдите к композиции "Издание приказа и начисление премии", здесь необходимо привязать Word бота к задаче. Кликните правой клавишей мыши на узле "Сгенерировать приказ" и выберите пункт "Привязать"


    R226 ru.png
    Рисунок 3.48 Вызов списка задач бота


    В списке выберите "Сгенерировать приказ" (см. рис. 3.49)


    R227 ru.png
    Рисунок 3.49 Список доступных для привязки задач


    Нажмите ОК, будет открыта форма редактирования параметров задачи, выберите параметры в соответствии с рисунком 3.50


    R228 ru.png
    Рисунок 3.50 Выбор параметров для задачи Word бота


  35. Создайте форму "Ознакомиться с приказом" (см. рис. 3.51)
  36. Отобразите на ней файловую переменную "Приказ" с помощью компонента "Отобразить переменную" как строку.
    R229e ru.png
    Рисунок 3.51 Форма "Ознакомиться с приказом"


    Создайте форму для узла "Начислить премию сотруднику", выведите значения переменных "ФИО сотрудника", "Размер премии", "Описание выполненных работ", "Приказ", при этом для текстовых переменных используйте форму отображения "как неактивный компонент ввода" (см. рис. 3.52)


    R230e ru.png
    Рисунок 3.52 Форма "Начислить премию сотруднику"


    Форма для узла "Ознакомиться с начислением премии" (см. рис. 3.53)


    R231e ru.png
    Рисунок 3.53 Форма "Ознакомиться с начислением премии"


  37. Экспортируйте разработанный процесс и Word бот с задачей на сервер WFE
  38. Кликните на разработанный бизнес-процесс, в меню выберите команду "Файл / Экспорт процесса" (Подробнее см. Занятие 1, Порядок выполнения работы, Пункты 11-14). Для экспорта бота с задачей, перейдите на вкладку "Боты", кликните правой клавишей мыши на Word бот, и выберите "Экспорт бота" (см. рис 3.54) В появившемся окне выберите "Экспорт на WFE сервер", далее нажмите Готово (см. рис 3.55).
    R232 ru.png
    Рисунок 3.54 Экспорт бота с задачей


    R232be ru.png
    Рисунок 3.55 Экспорт бота с задачей на WFE сервер


  39. Войдите на сервер под пользователем Administrator
  40. Выберите пункт "Бот станции", и перейдите в ранее созданную бот станцию "localbotstation" (см. рис 3.56)
    R232c ru.png
    Рисунок 3.56 Бот станции


    Будет открыт список ботов входящих в бот станцию "localbotstation", проверьте присутствие в списке "Word бот" (см. рис 3.57)


    R232de ru.png
    Рисунок 3.57 Word бот


    Процесс "Пример 5-1" должен запускать "Руководитель", поэтому дайте права на чтение и запуск для пользователя "Паучков" (который является руководителем Сверчкова). Подробнее см. 1-ая Часть, Вводное занятие, Порядок выполнения работы, Пункты 28-32.

    Также дайте право на чтение процесса для Word бота. (см. рис. 3.58)


    R233 ru.png
    Рисунок 3.58 Обладатели полномочий на процесс "Пример 5-1"


    Добавьте в группу "Бухгалтеры" пользователей "Жукова" и "Бражникова".

    Добавьте в группу "Отдел кадров" пользователей "Личинкин" и "Гусеницын".

    Добавьте в группу "Сотрудники" пользователей: Жукова, Бражникова, Личинкин, Гусеницын, а также Сверчков и Паучков.

    Разрешите для группы "Сотрудники" вход в систему (см. 1-ая Часть, Вводное занятие, пункты 7-9, Рис. 5.6 - 5.8 ).

    Дайте полномочия группе "Сотрудники" на чтение на всех созданных пользователей (см. 1-ая Часть, Вводное занятие, Порядок выполнения работы, Пункты 12-13, Рис. 5.11-5.12).

    Дайте на отношение "Руководитель" право на чтение для группы "Сотрудники" (см. Практическое занятие "Изучение перспективы данных", Пункт 15)

  41. Запустите периодическую активацию ботов (см. Практическое занятие "Изучение перспективы операций", Пункт 12)
  42. Выполните процесс "Пример 5-1"
  43. Войдите в систему под пользователем "Паучков", запустите процесс. Введите данные на стартовой форме, и нажмите "Запустить" (см. рис. 3.59)
    R234 ru.png
    Рисунок 3.59 Стартовая форма процесса "Пример 5-1"


    "Паучков" получит задачу "Подписать служебную записку и передать ее в отдел кадров", откройте задание, и нажмите на ссылку "служебная записка о начислении премии.docx", скачайте/откройте сформированную с помощью обработчика DocxHandler на основе шаблона, служебную записку (см. рис. 3.60).


    R235 ru.png
    Рисунок 3.60 Служебная записка о начислении премии


    Распечатайте служебную записку. Выполните задание.

    Параллельно, "Отдел кадров" получает задание "Получить подписанную служебную записку на премию сотруднику".

    Войдите в систему под пользователем входящем в группу "отдел кадров", например "Личинкин". Возьмите задачу на выполнение, и исполните ее (см. рис. 3.61).


    R236 ru.png
    Рисунок 3.61 Задание "Получить подписанную служебную записку на премию сотруднику"


    Член группы "Директор" (в нашем случае это пользователь Стрекозин) получает задание "Рассмотреть заявку на премию".

    Войдите в систему под пользователем "Стрекозин", возьмите задание на выполнение, введите комментарий и одобрите заявку на премию (см. рис. 3.62)


    R237 ru.png
    Рисунок 3.62 Задание "Рассмотреть заявку на премию"


    Руководитель (Паучков) получит задание "Ознакомиться с сообщением о согласии", параллельно с этим будет запущена композиция "Издание приказа и начисление премии", в которой "Отделу кадров" поступит задание "Издать приказ о премировании".

    Войдите в систему под пользователем "Паучков", выполните активное задание (см. рис. 3.63).


    R238 ru.png
    Рисунок 3.63 Задание "Ознакомиться с сообщением о согласии"


    Т.к. в узле "Издание приказа и начисление премии" была настроена переинициализация для роли "Отдел кадров", то соответствующее задание снова поступит всем членам группы "отдел кадров".

    Войдите в систему под пользователем "Гусеницын", входящим в группу "Отдел кадров", возьмите на выполнение задание, введите "Номер приказа" и выполните задачу (см. рис. 3.64)


    R239 ru.png
    Рисунок 3.64 Задание "Издание приказа и начисление премии"


    Проверьте, выполнил ли Word бот задание "Сгенерировать приказ"

    Для этого войдите в систему под Administrator, меню "Запущенные процессы", найдите соответствующий экземпляр бизнес-процесса "Пример 5-1" и кликните на его номер. В появившейся форме свойств экземпляра бизнес-процесса будет показана его схема с отмеченным на ней положением точек управления и их маршрутами.

    Найдите узел композицию "Издание приказа и начисление премии" (см. рис. 3.65), и кликните на него.


    R240a ru.png
    Рисунок 3.65 Граф выполнения экземпляра бизнес процесса "Пример 5-1"


    Откроется схема композиции с отмеченным положением точек управления. Word бот не выполнил задание "Сгенерировать приказ" (см. рис. 3.66).

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


    R240b2 ru.png
    Рисунок 3.66 Граф выполнения композиции "Издание приказа и начисление премии". Задание "Сгенерировать приказ" не выполнено


    Закройте граф выполнения композиции, и вернитесь к свойствам экземпляра бизнес-процесса "Пример 5-1", прокрутите страницу вверх. Обратите внимание на сообщение "Ошибки в процессе". Кликните по строке "Сгенерировать приказ" - будет открыто окно с техническими подробностями ошибки (см. рис. 3.67).


    R240b3.png
    Рисунок 3.67 Ошибки при выполнении бизнес-процесса "Пример 5-1"


    Кроме того, сообщение об ошибках в процессах и конфигурациях заданий ботов можно наблюдать в разделе "Система" (доступен только Администратору).


    R240b4.png
    Рисунок 3.68 Информация об ошибках в процессах, представленная на странице "Система"


    Из ошибки следует, что "имя директора" не найдено среди формальных параметров задания бота, и при этом не определено как переменная бизнес-процесса.

    Исправьте эту ошибку. Для этого откройте шаблон приказа ("Шаблон приказа.docx" в корне диска C:) и измените конструкцию ${имя директора} на ${полное имя директора} т.е. используем существующий формальный параметр (см. рис. 3.69). Сохраните шаблон.


    R240b5.png
    Рисунок 3.69 Исправленный шаблон приказа


    Откройте веб интерфейс системы RunaWFE и перейдите по ссылке "Бот станции", расположенной в меню. Откройте ботстанцию localbotstation, остановите и заново запустите периодическую активацию ботов (см. Практическое занятие "Изучение перспективы операций", Пункт 12).

    Вернитесь к свойствам запущенного экземпляра бизнес-процесса "Пример 5-1", ошибка должна пропасть. Перейдите к схеме выполняемого процесса, найдите узел композицию "Издание приказа и начисление премии" и кликните на него. Будет открыта схема композиции с отмеченным положением точек управления.


    Узел "Сгенерировать приказ" должен быть отмечен как выполненный (см. рис. 3.70).

    R240b ru.png
    Рисунок 3.70 Граф выполнения композиции "Издание приказа и начисление премии"


    Войдите в систему под пользователем "Сверчков", откройте задание "Ознакомиться с приказом".

    Нажмите ссылку на сгенерированный с помощью Word бота файл "Приказ.docx"


    R241 ru.png
    Рисунок 3.71 Задание "Ознакомиться с приказом"


    R242 ru.png
    Рисунок 3.72 Сгенерированный приказ


    Распечатайте сгенерированный ботом документ. Завершите запущенный экземпляр бизнес-процесса, последовательно выполнив соответствующие задания под пользователями Личинкин (входит в группу Отдел кадров), Бражникова (входит в группу Бухгалтеры), и Сверчков (сотрудник которому начисляется премия).

    Задание для самостоятельной работы

    Разработайте бизнес-процесс "Пример 5-2", схема которого изображена на рисунке 3.73 Для генерации приказа на отпуск используйте того же Word бота с задачей "Сгенерировать приказ" что и в процессе "Пример 5-1", и тот же шаблон для документа "приказ".


    Замечание. Задача "Сгенерировать приказ" бота "Word бот" имеет формальные параметры, поэтому переменные в процессе "Пример 5-2" могут иметь отличные названия от переменных из "Процесс 5-1", но также в шаблоне приказа используется и непосредственно переменная "Номер приказа", поэтому она должна существовать в процессе "Пример 5-2".


    "Заявление на отпуск" должно формироваться в задаче сценария с помощью обработчика "Word: Формирование документа DOCX используя шаблон". При этом создайте новый шаблон для документа "Заявление на отпуск" непосредственно в процессе.

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


    Замечание. По умолчанию в качестве редактора форм используется CKEditor4, но в случае если у вас в системе установлен браузер Microsoft Internet Explorer устаревшей версии - 6 (IE6) или 7 (IE7), то с формами могут возникнуть проблемы. Поэтому следует переключить редактор на FCKEditor2. (Подробнее см. Практическое занятие "Изучение перспективы данных", Порядок выполнения работы, Пункт 6, Рис. 4.9, 4.10).

    В компоненте форм "Выбор из членов группы" в качестве параметра "Группа" можно использовать предварительно созданную переменную формата "Группа", проинициализированную значением "Директор и заместители" (подобный пример см. в Практическое занятие "Изучение перспективы данных", Порядок выполнения работы, Пункт 6, Рис. 4.16)

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

    • ФИО сотрудника
    • Даты запуска процесса
    • Даты ввода номера приказа
    • ФИО директора
    • ФИО сотрудника в необходимом падеже
    • Текста приказа
    R243e ru.png
    Рисунок 3.73 Схема бизнес-процесса "Пример 5-2" для самостоятельной разработки


    В бизнес-процессе "Пример 5-2" должны быть автоматически сгенерированы документы "Заявление на отпуск" и "Приказ на отпуск".

    Документ "Заявление на отпуск" должен содержать:

    • ФИО Сотрудника
    • Даты начала и окончания отпуска
    • Дату заявления (совпадает с датой запуска бизнес-процесса)

    Документ "Приказ" должен содержать

    • Номер приказа
    • Текст приказа с ФИО сотрудника в необходимом падеже, с датами начала и окончания отпуска
    • Дату приказа (совпадает с датой ввода номера приказа сотрудником отдела кадров)
    • ФИО Сотрудника
    • ФИО Директора

    Замечание. В отличии от приказа из процесса "Пример 5-1", в приказе на отпуск используется дата совпадающая с датой ввода номера приказа сотрудником отдела кадров, а не с датой запуска бизнес-процесса.

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

    Требования к представлению результатов занятия

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

    В отчете должны содержаться следующие выходные данные:

    1) Скриншоты основных действий, совершенных на занятии, с пояснениями

    2) Скриншоты, содержащие маршруты точек управления для экземпляров бизнес-процессов, доведенных до завершения.

    3) Скриншоты, содержащие созданные на занятии роли, переменные, настройки ботов, основные формы

    4) Описание возникших при выполнении задания проблем и найденных путей их решения (не обязательно, только если возникли проблемы при выполнении задания)

    Контрольные вопросы

    1. В каком месте шаблона документа ставится в соответствие переменная бизнес-процесса?
    2. Где задается имя файла, в который будет помещен сгенерированный документ?

    Практическое занятие "Задания для самостоятельной работы"

    Цель работы

    На основе представленных описаний одного из условных бизнес-процессов реализовать этот бизнес-процесс в системе RunaWFE

    Теоретические сведения

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

    Порядок выполнения работы

    Ниже представлено десять описаний условных бизнес-процессов. Требуется в соответствии с описанием разработать бизнес-процесс в среде разработки системы RunaWFE, отладить разработанный бизнес-процесс в симуляторе RunaWFE и сдать бизнес-процесс преподавателю.


    Общие замечания для всех заданий.


    Замечание 1.

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

    Замечание 2.

    Рассмотрим ситуацию, в которой действие должно быть выполнено одновременно двумя пользователям - например, сотрудник должен расписаться в документе должностного лица. Интуитивная реализация такого сценария обычно соответствует последовательному расположению двух узлов на схеме бизнес-процесса, при этом исполнителем в первом узле является сотрудник, а во втором — должностное лицо. Практика показывает, что такое решение является неудачным, так как в этом случае в момент выполнения действия соответствующие задания не могут находиться в списках заданий обоих сотрудников. Поэтому на схеме бизнес-процесса узлы, в которых даются задания двум исполнителям, в данном случае должны располагаться не последовательно, а параллельно, то есть они должны находиться в параллельных ветках (см. рис. 4.1)

    R213.png
    Рисунок 4.1 Пример действия, выполняемого одновременно двумя лицами


    Замечание 3.

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

    Замечание 4.

    Разделения и парные им слияния должны быть расположены на одной (горизонтальной, или вертикальной) линии, причем на этой оси должны быть только два этих элемента, остальные парные элементы должны располагаться на других (параллельных друг другу) осях. В этом случае на схеме бизнес-процесса для одного элемента можно легко найти парный ему элемент.

    Замечание 5.

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

    Замечание 6.

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

    Замечание 7.

    Практика эксплуатации СУБП на предприятиях показывает, что роли должностных лиц (например, Бухгалтер, Инспектор кадровой службы) соответствуют ответственным сотрудникам, а роли "Сотрудник" и "Подавший заявку" - гораздо менее ответственным сотрудникам, которые могут неделями не отмечать выполнение заданий. Поэтому требуется так составить схему бизнес-процесса, чтобы в таких случаях задание типа "ознакомиться с ..." у этих сотрудников было, но чтобы его невыполнение не останавливало дальнейшее выполнение бизнес-процесса. То есть эта задача и остальные шаги бизнес-процесса должны выполняться в параллельных ветках.


    R214.png
    Рисунок 4.2 Пример неправильной схемы


    На рисунке 4.2 показан пример неправильной схемы, в котором задача (в меньшем овале) останавливает выполнение блока действий (в большем овале).

    На рисунке 4.3 также показан пример неправильной схемы, в котором задача "Ознакомиться с положительным решением" в некоторых случаях останавливает издание приказа.


    R215.png
    Рисунок 4.3 Пример неправильной схемы


    R216.png
    Рисунок 4.4 Пример правильной схемы


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


    Замечание 8.

    В заданиях настоящего занятия используется страница описания бизнес-процесса. Если эта страница задана в определении бизнес-процесса, то она открывается при клике на строку описания бизнес-процесса в web-интерфейсе системы (см. рисунок 4.5)


    R217.png
    Рисунок 4.5 Строка описания бизнес-процесса (при клике на нее открывается форма описания бизнес-процесса)


    R218.png
    Рисунок 4.6 Форма описания бизнес-процесса


    Задать форму описания бизнес-процесса можно в среде разработки. Делается это следующим образом:

    В свойствах определения бизнес-процесса заполняется поле "Значение" для свойства "Описание" (см. рис. 4.7)


    R219.png


    Рисунок 4.7 Поле "Значение" свойства "Описание" бизнес-процесса


    Далее надо кликнуть правой кнопкой мыши на белом фоне на схеме бизнес-процесса. - Откроется контекстное меню, в котором надо кликнуть на команду "Описание" (см. рис. 4.8). После этого откроется форма редактирования страницы описания бизнес-процесса (см. рис. 4.9).


    R220.png


    Рисунок 4.8 Команда "Описание" контекстного меню


    R221.png


    Риснок 4.9 Форма для редактирования страницы "Описание" бизнес-процесса


    Задания по разработке бизнес-процессов.

    Задание по разработке бизнес-процесса "Ежегодный отпуск"

    1. Возможное содержание страницы описания бизнес-процесса (не обязательно):

    Оплачиваемый отпуск предоставляется ежегодно.


    2. Описание последовательностей действий в бизнес-процессе


    Если сотрудник собирается пойти в отпуск, то запускает бизнес-процесс на выполнение. В появившейся стартовой форме надо ввести  требуемые данные: ввести даты начала и окончания отпуска, причину и комментарий.

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

    Следующее задание «Рассмотреть заявку на отпуск» получит руководитель сотрудника (руководитель определяется отношением "Руководитель"). Руководитель одобряет или не одобряет заявку. Подавший заявку знакомится с решением руководителя. Если решение руководителя было отрицательным, то далее процесс завершается.

    Если решение руководителя было положительным, то следующее задание «Проверить соблюдение технологий и законов» получит инспектор кадровой службы (определяется членством в группе "Инспекторы КС"). В содержащейся в задании форме он отмечает, соблюдены ли законы и технологии (то есть, положен ли сотруднику ежегодный отпуск в соответствии с договором, заключенным с предприятием, не отгулял ли уже сотрудник все положенные дни отпуска за текущий год и т.п.).

    Если законы или технологии не соблюдены, то бизнес-процесс сообщает руководителю сотрудника и подавшему заявку (то есть - самому сотруднику) о несоблюдении технологий. Далее процесс завершается. Если законы и технологии соблюдены, то сотрудник получает задание "Ознакомиться с подтверждением ежегодного отпуска", инспектору кадровой службы направляется задание "Издать приказ". В форме задания "Издать приказ" инспектор кадровой службы вводит номер приказа (значение типа строка). После выполнения задания инспектором кадровой службы Word-бот получает задание "Сгенерировать приказ на ежегодный отпуск". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом").

    Приказ должен содержать:

    1. В верхней части листа - название условной компании
    2. Фразу "Приказ номер"
    3. Справа от этой фразы - значение "номер приказа", введенное инспектором кадровой службы"
    4. слово "от"
    5. Справа от этого слова - дату запуска экземпляра бизнес-процесса
    6. Далее - "Предоставить сотруднику" ФИО сотрудника "ежегодный основной оплачиваемый отпуск"
    7. Далее - "с" дата начала отпуска, введенная на стартовой форме
    8. Далее - "по" дата окончания отпуска, введенная на стартовой форме
    9. Далее - место для подписи Генерального директора (несколько знаков подчеркивания), ФИО условного генерального директора компании, дата запуска экземпляра бизнес-процесса
    10. Внизу - "С приказом ознакомлен", место для подписи сотрудника (несколько знаков подчеркивания), ФИО сотрудника, дата запуска экземпляра бизнес-процесса

    Далее Word-бот получает задание "Сгенерировать заявление на ежегодный отпуск"

    Приказ должен содержать:

    1. В верхней части листа "Генеральному директору" - название условной компании, ФИО условного Генерального директора, "от сотрудника"
    2. ФИО уходящего в отпуск сотрудника
    3. Фразу "Заявление"
    4. На следующей строке "Прошу предоставить мне ежегодный основной оплачиваемый отпуск с", дата начала отпуска, введенная на стартовой форме, "по", дата окончания отпуска, введенная на стартовой форме
    5. Внизу - ФИО сотрудника, место для подписи сотрудника (несколько знаков подчеркивания), дата запуска экземпляра бизнес-процесса

    После выполнения этих заданий Word-ботом сотрудник должен выполнить задачу «Сдать в КС заявление и подписать приказ». В форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Заявление на ежегодный отпуск". Инспектору кадровой службы направляется задача «Получить заявление и подпись на приказе». В форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Приказ на ежегодный отпуск". После выполнения этого задания бизнес-процесс должен дождаться момента времени за две недели до начала отпуска, после этого задание "выплатить отпускные" получает бухгалтер (определяется членством в группе "Бухгалтеры").

    После выполнения всех заданий бизнес-процесс завершается.


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


    Задание по разработке бизнес-процесса "Больничный"

    1. Возможное содержание страницы описания бизнес-процесса (не обязательно):

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

     

    2. Описание последовательностей действий в бизнес-процессе


    Если сотрудник заболел, то он или какой-то другой сотрудник запускает на выполнение бизнес-процесс "больничный".

    В появившейся стартовой форме он вводит данные: выбирает из списка (список соответствует членам группы "Все сотрудники") заболевшего сотрудника, вводит дату начала болезни, причину и комментарий.

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

    Следующее задание получает инспектор кадровой службы (определяется членством в группе "Инспекторы КС"). Задание называется "Проверить соблюдение технологий и законов". В содержащейся в задании форме он отмечает, соблюдены ли законы и технологии (то есть, положен ли больничный сотруднику в соответствии с договором, заключенным с предприятием).

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

    Если законы и технологии соблюдены, то подавший заявку уведомляется о регистрации заявки на больничный, руководитель сотрудника (руководитель определяется отношением "Руководитель") уведомляется о болезни сотрудника, сотруднику направляется задание "Сообщить о выздоровлении и выходе на работу". Бухгалтер (определяется членством в группе "Бухгалтеры") получает задание "отразить факт болезни сотрудника в бухучете".

    После выхода сотрудника на работу после болезни инспектору кадровой службы направляется задание "Получить от сотрудника больничный", а сотруднику направляется задание "Отдать в КС больничный". В задании задания "Получить от сотрудника больничный" инспектор кадровой службы вводит дату окончания больничного.

    После выполнения задания "Получить от сотрудника больничный" инспектором кадровой службы Word-бот получает задание "Сгенерировать справку о болезни сотрудника". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом").

    Справка должна содержать:

    1. В верхней части листа - название условной компании
    2. Фразу "Справка о болезни сотрудника"
    3. Далее - ФИО сотрудника
    4. Далее - "Начало болезни" дата начала болезни, введенная на стартовой форме
    5. Далее - "Окончание болезни" дата окончания болезни, введенная инспектором КС в задании "Получить от сотрудника больничный"
    6. Далее - место для подписи бухгалтера (несколько знаков подчеркивания)

    После выполнения задания Word-ботом, задание "рассчитать больничный" получает бухгалтер. Форма задания должна содержать сгенерированный Word-ботом файл.

    После выполнения всех заданий бизнес-процесс завершается.


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

    Задание по разработке бизнес-процесса "Командировка в другой регион"

    1. Возможное содержание страницы описания бизнес-процесса (не обязательно):

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


    2. Описание последовательностей действий в бизнес-процессе


    Бизнес-процесс начинается с того, что пользователь в стартовой форме заполняет данные, относящиеся к командировке:

    • выбирает из списка (список соответствует членам группы "Все сотрудники") сотрудника, который отправляется в командировку
    • вводит:
    • дату начала командировки
    • дату окончания командировки
    • город
    • организацию, в которую направляется сотрудник
    • цель командировки
    • причину
    • комментарий

    данные для бухгалтера (стоимость билетов, гостиницы и т.п.). Все данные для бухгалтера вводятся в одно текстовое поле.

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

    Далее задание «рассмотреть заявку на командировку» направляется непосредственному руководителю отправляемого в командировку сотрудника (руководитель определяется отношением "Руководитель"). Руководитель одобряет или не одобряет командировку. В случае неодобрения заявки Подавший заявку знакомится с отрицательным решением руководителя, после чего бизнес-процесс завершается.

    Если командировка одобрена, то Подавший заявку знакомится с положительным решением руководителя, инспектор кадровой службы (определяется членством в группе "Инспекторы КС") получает задание "издать приказ".

    В форме задания "Издать приказ" инспектор кадровой службы вводит номер приказа (значение типа строка). После выполнения задания инспектором кадровой службы Word-бот получает задание "Сгенерировать приказ на командировку". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом"). Приказ должен содержать:

    1. В верхней части листа - название условной компании
    2. Фразу "Приказ о направлении в командировку номер"
    3. Справа от этой фразы - значение "номер приказа", введенное инспектором кадровой службы"
    4. слово "от"
    5. Справа от этого слова - дату запуска экземпляра бизнес-процесса
    6. Далее - "Направить в командировку сотрудника" ФИО сотрудника "ежегодный основной оплачиваемый отпуск"
    7. "в г." город, введенный на стартовой форме
    8. "в организацию:" организация, введенная на стартовой форме
    9. "с целью:" организация, введенная на стартовой форме
    10. Далее - "с" дата начала командировки, введенная на стартовой форме
    11. Далее - "по" дата окончания командировки, введенная на стартовой форме
    12. Далее - место для подписи Генерального директора (несколько знаков подчеркивания), ФИО условного генерального директора компании, дата запуска экземпляра бизнес-процесса
    13. Внизу - "С приказом ознакомлен", место для подписи сотрудника (несколько знаков подчеркивания), ФИО сотрудника, дата запуска экземпляра бизнес-процесса

    Далее Word-бот получает задание "Сгенерировать командировочное удостоверение"

    Командировочное удостоверение должно содержать:

    1. В верхней части листа - название условной компании
    2. Фразу "Командировочное удостоверение"
    3. ФИО сотрудника
    4. Организация
    5. Внизу:
    6. "Генеральный директор", название условной компании, место для подписи Генерального директора (несколько знаков подчеркивания), ФИО условного генерального директора компании
    7. "Работник", место для подписи сотрудника (несколько знаков подчеркивания), ФИО сотрудника
    8. Дата запуска экземпляра бизнес-процесса

    На следующей (обороте) странице:

    1. "Отметки о выбытии в служебную поездку, прибытии в пункты назначения и выбытии из них и прибытии в место постоянной работы
    2. Далее содержится таблица из четырех блоков


    R a1.png


    (из двух строк и двух колонок)


    После выполнения этих заданий Word-ботом сотрудник получает задание "подписать приказ", инспектор кадровой службы получает задание "получить подпись на приказе" (в форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Приказ на командировку").

    После выполнения задания "получить подпись на приказе" инспектором кадровой службы, инспектор кадровой службы выдает сотруднику командировочное удостоверение: Инспектор получает задачу "выдать командировочное удостоверение" (в форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Командировочное удостоверение"), Сотрудник получает задачу "получить командировочное удостоверение" .

    После выполнения задания "выдать командировочное удостоверение" инспектором кадровой службы бухгалтер (определяется членством в группе "Бухгалтеры") получает задание "Ознакомиться с данными для бухгалтера", в этом задании бухгалтер знакомится с данными, которые были введены на стартовой форме (это требуется бухгалтеру, чтобы рассчитать сумму денег, которую ему надо будет выдать сотруднику).

    Далее бухгалтер получает задачу "выдать деньги на командировку", сотрудник получает задание "получить деньги на командировку". После выполнения задачи бухгалтером бизнес-процесс ждет момента окончания командировки. ("Дата окончания командировки" плюс один день)

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

    После выполнения всех заданий бизнес-процесс завершается.


    Замечание. В бизнес-процессе необходимо проверять, что дата начала командировки не позже даты окончания.

    Задание по разработке бизнес-процесса "Местная командировка"

    1. Возможное содержание страницы описания бизнес-процесса (не обязательно):

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


    2. Описание последовательностей действий в бизнес-процессе


    Бизнес-процесс начинается с того, что пользователь в стартовой форме заполняет данные, относящиеся к командировке: выбирает из списка (список соответствует членам группы "Все сотрудники") сотрудника, который отправляется в командировку, вводит дату, время начала, время окончания командировки, организацию, в которую направляется сотрудник, причину, комментарий. После клика на команду "выполнить" создается новый экземпляр бизнес-процесса. Далее задание «рассмотреть заявку на командировку» направляется непосредственному руководителю отправляемого в командировку сотрудника (руководитель определяется отношением "Руководитель"). Руководитель одобряет или не одобряет командировку. Подавший заявку знакомится с положительным или отрицательным решением руководителя.

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

    Служебная записка должна содержать:

    1. Фразу "Служебная записка"
    2. Фразу "Прошу направить меня в местную командировку"
    3. Дату, время начала и время окончания местной командировки, введенные на стартовой форме
    4. Организацию и причину, введенные на стартовой форме
    5. Дату запуска экземпляра бизнес-процесса
    6. Место для подписи сотрудника (несколько знаков подчеркивания)
    7. ФИО сотрудника

    Далее сотрудник получает задание "Подписать и отдать служебную записку руководителю", в форме задания должна быть ссылка для загрузки сформированного ботом документа "Служебная записка".

    Руководитель сотрудника получает задание "Получить служебную записку".

    После выполнения всех заданий бизнес-процесс завершается.


    Замечание. В бизнес-процессе необходимо проверять, что время начала командировки не позже времени окончания.


    Задание по разработке бизнес-процесса "Отгул"

    1. Возможное содержание страницы описания бизнес-процесса (не обязательно):

    Руководитель может предоставить сотруднику отгул в качестве поощрения за хорошую работу. Отгул дается не более чем на 4 часа рабочего времени.


    2. Описание последовательностей действий в бизнес-процессе


    Бизнес-процесс начинается с того, что сотрудник, желающий получить отгул, в стартовой форме заполняет данные: дату и время начала отгула (не может быть более чем на 30 дней в прошлом), количество часов отсутствия (целое положительное число, не может быть больше четырех). После клика на команду "выполнить" создается новый экземпляр бизнес-процесса.

    Далее задание «рассмотреть заявку на отгул» направляется непосредственному руководителю сотрудника (руководитель определяется отношением "Руководитель"). Руководитель одобряет или не одобряет отгул. Подавший заявку знакомится с решением руководителя.

    Если отгул одобрен, то бизнес-процесс проверяет, запущен ли отгул задним числом. Если отгул запущен задним числом, то задание «утвердить заявку на отгул» получает руководитель отдела (определяется отношением "Руководитель отдела"), после чего подавший заявку знакомится с решением руководителя отдела.

    Если отгул подтвержден всеми необходимыми лицами, то сотрудник получает сообщение об этом, Word-бот получает задание "Сгенерировать служебную записку на отгул". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - " Word-бот " (См. Практическое занятие "Работа с Word-ботом"). Служебная записка должна содержать:

    1. Фразу "Служебная записка"
    2. Фразу "Прошу предоставить мне отгул"
    3. Дату, время начала и количество часов отгула, введенные на стартовой форме
    4. Дату запуска экземпляра бизнес-процесса
    5. Место для подписи сотрудника (несколько знаков подчеркивания)
    6. ФИО сотрудника

    Далее сотрудник получает задание "Подписать и отдать служебную записку руководителю", в форме задания должна быть ссылка для загрузки сформированного ботом документа "Служебная записка".

    Руководитель сотрудника получает задание "Получить служебную записку".

    Если отгул не подтвержден, то соответствующие лица получают об этом сообщения.

    После выполнения всех заданий бизнес-процесс завершается.


    Задание по разработке бизнес-процесса "Отпуск по уходу за ребенком"

    1. Возможное содержание страницы описания бизнес-процесса (не обязательно):

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


    2. Описание последовательностей действий в бизнес-процессе


    Бизнес-процесс начинается с того, что пользователь в стартовой форме заполняет данные, относящиеся к отпуску по уходу за ребенком: выбирает из списка (список соответствует членам группы "Все сотрудники") сотрудника (сотрудницу), вводит даты начала и окончания отпуска, причину и комментарий. После клика на команду "выполнить" будет создан новый экземпляр бизнес-процесса.

    Следующее задание «Проверить соблюдение технологий и законов» получит инспектор кадровой службы (определяется членством в группе "Инспекторы КС"). В содержащейся в задании форме он отмечает, соблюдены ли законы и технологии. Если законы или технологии не соблюдены, то подавшему заявку направляется уведомление об отказе регистрации заявки и далее бизнес-процесс завершается.

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

    В форме задания "Издать приказ" инспектор кадровой службы вводит номер приказа (значение типа строка). После выполнения задания инспектором кадровой службы Word-бот получает задание "Сгенерировать приказ на отпуск по уходу за ребенком". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом"). Приказ должен содержать:

    1. В верхней части листа - название условной компании
    2. Фразу "Приказ номер"
    3. Справа от этой фразы - значение "номер приказа", введенное инспектором кадровой службы"
    4. слово "от"
    5. Справа от этого слова - дату запуска экземпляра бизнес-процесса
    6. Далее - "Предоставить сотруднику" ФИО сотрудника "отпуск по уходу за ребенком"
    7. Далее - "с" дата начала отпуска, введенная на стартовой форме
    8. Далее - "по" дата окончания отпуска, введенная на стартовой форме
    9. Далее - место для подписи Генерального директора (несколько знаков подчеркивания), ФИО условного генерального директора компании, дата запуска экземпляра бизнес-процесса
    10. Внизу - "С приказом ознакомлен", место для подписи сотрудника (несколько знаков подчеркивания), ФИО сотрудника, дата запуска экземпляра бизнес-процесса

    Далее Word-бот получает задание "Сгенерировать заявление на отпуск по уходу за ребенком"

    Приказ должен содержать:

    1. В верхней части листа "Генеральному директору" - название условной компании, ФИО условного Генерального директора, "от сотрудника"
    2. ФИО уходящего в отпуск сотрудника
    3. Фразу "Заявление"
    4. На следующей строке "Прошу предоставить мне отпуск по уходу за ребенком с", дата начала отпуска, введенная на стартовой форме, "по", дата окончания отпуска, введенная на стартовой форме
    5. Внизу - ФИО сотрудника, место для подписи сотрудника (несколько знаков подчеркивания), дата запуска экземпляра бизнес-процесса

    После выполнения этих заданий Word-ботом сотрудник должен выполнить задачу «Отдать в КС заявление и подписать приказ». В форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Заявление на отпуск по уходу за ребенком". Инспектору кадровой службы направляется задача «Получить заявление и подпись на приказе». В форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Приказ на отпуск по уходу за ребенком".

    После выполнения этого задания инспектором кадровой службы бухгалтер (определяется членством в группе "Бухгалтеры") получает задание "отразить в бухучете отпуск по уходу за ребенком". Далее (после выполнения задачи бухгалтером) в качестве подпроцесса запускается бизнес-процесс "Оповещение о завершении отпуска". После выполнения подпроцесса и выполнения всех заданий бизнес-процесс завершается.

    В бизнес-процесс "Оповещение о завершении отпуска" передаются данные отпуска по уходу за ребенком. После старта этот бизнес-процес ждет момента времени за две недели перед окончанием отпуска и далее передает управление в узел, в котором руководитель сотрудника получает задание ознакомиться с тем, что отпуск по уходу за ребенком подходит к концу. В этой форме также должны содержаться все данные, которые были введены на стартовой форме бизнес-процесса "Отпуск по уходу за ребенком" (и переданы в качестве параметров в подпроцесс).

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


    Задание по разработке бизнес-процесса "Сдвиг  графика работы"

    1. Возможное содержание страницы описания бизнес-процесса (не обязательно):

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


    2. Описание последовательностей действий в бизнес-процессе

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

    • день недели (содержится в строке таблицы, не вводится пользователем, значения в строках таблицы - пн. вт. ср. чт. пт. сб. вс.)
    • время прихода (вводится пользователем для каждой строки, если прихода не предполагается, то это 00:00)
    • время ухода (вводится пользователем для каждой строки, если прихода не предполагается, то это 00:00)
    • величина обеденного перерыва (выбор из списка: 30 минут, 1 час)

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

    Руководитель одобряет или не одобряет заявку.

    Если решение руководителя отрицательно, то Сотрудник знакомится с отрицательным решением руководителя, далее бизнес-процесс завершается.

    Если решение руководителя положительно, то Сотрудник знакомится с положительным решением руководителя, параллельно с этим заданием задание на утверждение заявки направляется руководителю руководителя сотрудника. Руководитель руководителя также может подтвердить или не подтвердить заявку. Сотрудник и руководитель сотрудника знакомятся с положительным (или отрицательным) решением руководителя руководителя.

    Если решение руководителя руководителя положительно, то Word-бот получает задание "Сгенерировать служебную записку на сдвиг графика". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - " Word-бот " (См. Практическое занятие "Работа с Word-ботом"). Служебная записка должна содержать:

    1. Фразу "Служебная записка"
    2. Фразу "Прошу утвердить мой индивидуальный график работы для периода времени:"
    3. Даты начала и окончания действия графика работы, введенные на стартовой форме
    4. Таблицу введенных на стартовой форме приходов и уходов по дням недели
    5. Дату запуска экземпляра бизнес-процесса
    6. Место для подписи сотрудника (несколько знаков подчеркивания)
    7. ФИО сотрудника

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


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


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


    Задание по разработке бизнес-процесса "Отпуск без сохранения зарплаты"

    1. Возможное содержание страницы описания бизнес-процесса (не обязательно):

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

     

    2. Описание последовательностей действий в бизнес-процессе


    В случае ухода сотрудника в отпуск без сохранения зарплаты он запускает бизнес-процесс на выполнение.

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

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

    Следующее задание «Рассмотреть заявку на отпуск» получит руководитель сотрудника (руководитель определяется отношением "Руководитель"). Руководитель одобряет или не одобряет заявку. Если решение руководителя было отрицательным, то Подавший заявку знакомится с отрицательным решением руководителя, далее процесс завершается.

    Если решение руководителя было положительным, то Подавший заявку знакомится с положительным решением руководителя, задание «Проверить соблюдение технологий и законов» получает инспектор кадровой службы (определяется членством в группе "Инспекторы КС"). В содержащейся в задании форме он отмечает, соблюдены ли законы и технологии

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

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

    Если решение директора положительное – инспектору кадровой службы направляется задание "Издать приказ". В форме задания "Издать приказ" инспектор кадровой службы вводит номер приказа (значение типа строка). После выполнения задания инспектором кадровой службы Word-бот получает задание "Сгенерировать приказ на отпуск без сохранения зарплаты". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом"). Приказ должен содержать:

    1. В верхней части листа - название условной компании
    2. Фразу "Приказ номер"
    3. Справа от этой фразы - значение "номер приказа", введенное инспектором кадровой службы"
    4. слово "от"
    5. Справа от этого слова - дату запуска экземпляра бизнес-процесса
    6. Далее - "Предоставить сотруднику" ФИО сотрудника "отпуск без сохранения зарплаты"
    7. Далее - "с" дата начала отпуска, введенная на стартовой форме
    8. Далее - "по" дата окончания отпуска, введенная на стартовой форме
    9. Далее - место для подписи Генерального директора (несколько знаков подчеркивания), ФИО условного генерального директора компании, дата запуска экземпляра бизнес-процесса
    10. Внизу - "С приказом ознакомлен", место для подписи сотрудника (несколько знаков подчеркивания), ФИО сотрудника, дата запуска экземпляра бизнес-процесса

    Далее Word-бот получает задание "Сгенерировать заявление на отпуск без сохранения зарплаты"

    Приказ должен содержать:

    1. В верхней части листа "Генеральному директору" - название условной компании, ФИО условного Генерального директора, "от сотрудника"
    2. ФИО уходящего в отпуск сотрудника
    3. Фразу "Заявление"
    4. На следующей строке "Прошу предоставить мне отпуск без сохранения зарплаты с", дата начала отпуска, введенная на стартовой форме, "по", дата окончания отпуска, введенная на стартовой форме
    5. Внизу - ФИО сотрудника, место для подписи сотрудника (несколько знаков подчеркивания), дата запуска экземпляра бизнес-процесса

    После выполнения этих заданий Word-ботом сотрудник должен выполнить задачу «Сдать в КС заявление и подписать приказ». В форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Заявление на отпуск без сохранения зарплаты". Инспектору кадровой службы одновременно направляется задача «Получить заявление и подпись на приказе». В форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Приказ на отпуск без сохранения зарплаты".


    После выполнения всех заданий бизнес-процесс завершается.


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


    Задание по разработке бизнес-процесса "Сверхурочные"

    1. Предлагаемое содержание страницы описания бизнес-процесса (не обязательно):

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


    2. Описание последовательностей действий в бизнес-процессе


    Бизнес-процесс начинается с того, что пользователь в стартовой форме заполняет данные, относящиеся к сверхурочным работам: выбирает из списка (список соответствует членам группы "Все сотрудники") сотрудника, которому предлагается выйти на сверхурочную работу, вводит дату, время начала, время окончания сверхурочных, причину, комментарий.

    После клика на команду "выполнить" создается новый экземпляр бизнес-процесса. Далее задание "рассмотреть предложение о сверхурочных работах" направляется сотруднику.

    Сотрудник соглашается, или не соглашается на сверхурочные работы. Подавший заявку знакомится с решением сотрудника. Если решение сотрудника было положительным, то задание «рассмотреть заявку на сверхурочные» направляется руководителю сотрудника (руководитель определяется отношением "Руководитель").

    Руководитель одобряет или не одобряет сверхурочные. Подавший заявку и сотрудник знакомятся с решением руководителя. Если руководитель одобрил заявку, то далее задание «Утвердить заявку» направляется в Директорат (определяется членством в группе "Директор и заместители").

    Директорат утверждает или не утверждает заявку. Если Директорат не утвердил заявку, то происходит оповещение соответствующих лиц об этом и бизнес-процесс завершается. Если Директорат утвердил заявку, то бизнес-процесс ждет даты сверхурочных, после этого руководитель сотрудника получает задачу "подтвердить выполнение сверхурочных" (руководитель выполняет это задание для того, чтобы подтвердить/не подтвердить, что сверхурочные работы действительно были выполнены). Если руководитель не подтвердил выполнение сверхурочных работ, то все ранее участвующие в бизнес-процессе лица получают уведомления об этом и после выполнения задач уведомления бизнес-процесс завершается.

    Если руководитель сотрудника подтвердил выполнение сверхурочных, то инспектор кадровой службы (определяется членством в группе "Инспекторы КС") получает задание "издать приказ".

    В форме задания "Издать приказ" инспектор кадровой службы вводит номер приказа (значение типа строка). После выполнения задания инспектором кадровой службы Word-бот получает задание "Сгенерировать приказ на сверхурочные работы". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом"). Приказ должен содержать:

    1. В верхней части листа - название условной компании
    2. Фразу "Приказ о сверхурочных работах номер"
    3. Справа от этой фразы - значение "номер приказа", введенное инспектором кадровой службы"
    4. слово "от"
    5. Справа от этого слова - дату запуска экземпляра бизнес-процесса
    6. Далее - "Привлечь к сверхурочным работам сотрудника" ФИО сотрудника
    7. Далее - "в период", время начала, время окончания, дата сверхурочных работ (введенные на стартовой форме)
    8. Далее - место для подписи Генерального директора (несколько знаков подчеркивания), ФИО условного генерального директора компании, дата запуска экземпляра бизнес-процесса
    9. Внизу - "С приказом ознакомлен", место для подписи сотрудника (несколько знаков подчеркивания), ФИО сотрудника, дата запуска экземпляра бизнес-процесса

    После выполнения этого задания Word-ботом сотрудник получает задание "подписать приказ на сверхурочные работы", инспектор кадровой службы получает задание "получить подпись на приказе" (в форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Приказ на сверхурочные работы").

    После выполнения задания "получить подпись сотрудника на приказе" инспектором КС бухгалтер (определяется членством в группе "Бухгалтеры") получает задание "Начислить деньги за сверхурочные". 


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


    Задание по разработке бизнес-процесса "Отсутствие по неизвестной причине"

    1. Возможное содержание страницы описания бизнес-процесса (не обязательно):

    Это отсутствие на работе, причина которого неизвестна.


    2. Описание последовательностей действий в бизнес-процессе


    В случае незапланированного отсутствия сотрудника его руководитель запускает бизнес-процесс на выполнение.

    В появившейся стартовой форме он вводит данные: выбирает из списка (список соответствует членам группы "Все сотрудники") сотрудника, вводит дату начала отсутствия и комментарий.

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

    Далее запустившему бизнес-процесс направляется задание "сообщить об окончании отсутствия".

    После появления сотрудника на работе запустившей процесс должен выполнить это задание ("сообщить об окончании отсутствия"). В форме задания надо ввести дату появления сотрудника на работе.


    Далее процесс разделяется на две параллельные ветки.


    В первой ветке сотруднику направляется задание "Написать объяснительную записку", в форме которого содержится текстовая область для ввода текста объяснительной записки. Это поле должно быть обязательным для ввода.

    Далее Word-бот получает задание "Сгенерировать объяснительную записку по незапланированному отсутствию". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом"). Объяснительная записка должна содержать:

    1. Фразу " Объяснительная записка по факту отсутствия на работе в период с"
    2. Дату начала отсутствия
    3. "по", дату окончания отсутствия
    4. Текст объяснительной записки, введенный в форме предыдущего узла-действия
    5. Текущую дату
    6. Место для подписи сотрудника (несколько знаков подчеркивания)
    7. ФИО сотрудника

    Далее сотрудник получает задание "Подписать и отдать объяснительную записку руководителю", в форме задания должна быть ссылка для загрузки сформированного ботом документа "Объяснительная записка".

    Руководитель сотрудника получает задание "Получить объяснительную записку".


    Во второй ветке запустившему процесс направляется задание "выбрать тип отсутствия". Это задание служит для облегчения запуска процесса, "покрывающего" незапланированное отсутствие (больничного, отпуска и т.д.), если интервал незапланированного отсутствия можно покрыть одним видом отсутствия. В форме содержится список выбора:

    • Больничный
    • Ежегодный отпуск
    • Отпуск без сохранения зарплаты
    • Другое отсутствие

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

    Далее запустившему бизнес-процесс направляется задание «Ознакомиться с сообщением о завершении процесса», после чего бизнес-процесс завершается.


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


    Замечание 2. В качестве подпроцессов, запускаемых для покрытия незапланированного отсутствия, предполагается использовать бизнес-процессы, разрабатываемые другими студентами группы в рамках настоящего практикума. Начать надо с единственного варианта выбора "Другое отсутствие", к которому постепенно добавлять варианты вызова покрывающих подпроцессов.


    Требования к представлению результатов занятия

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

    В отчете должны содержаться следующие выходные данные:

    1) Скриншоты основных действий, совершенных на занятии, с пояснениями

    2) Скриншоты, содержащие маршруты точек управления для экземпляров бизнес-процессов, доведенных до завершения.

    3) Скриншоты, содержащие созданные на занятии роли, переменные, группы пользователей, отношения, боты, настройки ботов, основные формы.

    4) Описание возникших при выполнении задания проблем и найденных путей их решения (не обязательно, только если возникли проблемы при выполнении задания)

    Ссылки

    1. Документация Runa WFE [официальный сайт проекта]. URL: http://runawfe.ru/rus/Документация