TrainingMaterialsCh3: различия между версиями
>WikiSysop |
WikiSysop (обсуждение | вклад) м (1 версия импортирована) |
(нет различий)
|
Текущая версия на 11:35, 26 декабря 2020
RunaWFE. Расширенный лабораторный практикум по процессному управлению. Часть 3
Версия 4.6.0
© 2015-2023, ООО "Процессные технологии"
Введение
Для автоматизации процессного управления предприятием разработан специальный класс компьютерных систем – системы управления бизнес-процессами и административными регламентами (далее СУБПиАР). Основная задача таких систем - раздавать задания исполнителям и контролировать их выполнение. Последовательность заданий определяется схемой бизнес-процесса, которую можно разработать и в дальнейшем быстро модифицировать при помощи среды разработки.
В первой части практикума были рассмотрены исполнимые бизнес-процессы и административные регламенты, дано определение исполнимого бизнес-процесса, основанное на четырех перспективах. Также в первой части практикума было дано описание основных элементов систем управления бизнес-процессами и административными регламентами на примере свободного ПО с открытым кодом 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.
Практическое занятие "Изучение перспективы операций"
Цель занятия
Целью занятия является изучение перспективы операций.
В данном занятии объясняется, как создавать графические элементы форм, через которые исполнители - сотрудники предприятия получают и вносят информацию в рамках выполнения заданий, сгенерированных в узлах-действиях. Также показывается, как устанавливать ограничения на вводимые в графические элементы форм данные.
На занятии для разрабатываемого бизнес-процесса создаются бот (автоматический исполнитель заданий) и содержащая его бот-станция. На условном примере объясняется как боты используются для организации взаимодействия экземпляров бизнес-процессов с информационными системами предприятия.
Теоретические сведения
Необходимые теоретические сведения изложены в первой части лабораторного практикума в пункте "Перспектива операций" раздела "Исполнимые бизнес-процессы и административные регламенты", а также в пункте "Концепция ботов и бот-станций" раздела "Стандарты и концепции, связанные с СУБПиАР".
Порядок выполнения работы
- Запустите среду разработки
- Создайте новый проект - "Занятие 4"
- Создайте новый бизнес-процесс "Пример 4-1" (Бизнес-процесс соответствует рассмотрению заявки на покупку услуги).
- Создайте роли "Сотрудник", "Директор" и "Бот работы с данными", добавьте элементы на схему бизнес-процесса в соответствии с рисунком 2.1
- Свяжите с начальным узлом бизнес-процесса роль "Сотрудник", с остальными узлами свяжите роли в соответствии с рисунком 2.1
- Создайте переменные бизнес-процесса в соответствии с рисунком 2.2
- Запустите RunaWFE симулятор (Подробнее см. Вводное занятие, Порядок выполнения работы, Пункт 1)
- Войдите в web-интерфейс системы RunaWFE под пользователем Administrator. (Подробнее см. Вводное занятие, Порядок выполнения работы, Пункт 2, Рис. 5.2). По умолчанию пароль пользователя Administrator - "wf".
- Перейдите к списку исполнителей, кликнув по ссылке «Исполнители» в левой части экрана. Создайте группы:
- Сотрудники
- Директор
- Bots (если эта группа уже существует в системе, то создавать ее не надо)
- Мотыльков
- Мухин
- Гусеницын
- Личинкин
- Бот данных
- Создайте бот станцию и бота. Замечание. Если в систему уже существует бот станция localbotstation, то либо пропустите действия данного раздела, либо удалите ее командой "Удалить". Кликните на меню «Бот станции» в левой части экрана. Кликните на ссылке "Добавить бот станцию" (См. Рис. 2.3)
- Создайте задание бота Кликните на созданного бота (См. Рис. 2.8).
- Запустите периодическую активацию бот-станции Войдите в меню "Бот станции", кликните на бот-станции "localbotstation", в открывшейся форме выполните команду "Запустить периодическую активацию ботов" (См. Рис. 2.11)
- Инициализируйте роли Войдите в среду разработки, откройте вкладку "Роли" бизнес-процесса "Пример 4-1". Роль "Сотрудник" оставьте без инициализатора, эта роль будет инициализирована узлом-началом, то есть на роль "Сотрудник" в экземпляре бизнес-процесса будет назначен пользователь, запустивший этот экземпляр бизнес-процесса. Инициализируйте роль "Директор" группой "Директор", для этого кликните на командной кнопке "Изменить" (См. Рис. 2.12). В появившейся форме кликните на нижней вкладке "Задать роль с помощью оргфункции" и верхней вкладке "Группы и пользователи WF" (См. Рис. 2.13).
- Создайте графические формы заданий Перейдите на вкладку "Граф". Кликните правой кнопкой мыши на узле-начале. В появившемся контекстном меню выберите Форма/Создать форму (См. Рис. 2.16).
- Установите ограничения на вводимые в графические элементы форм данные Кликните на узле-начале правой кнопкой мыши, выполните команду "Форма / Проверка переменных формы" (См. Рис. 2.27).
- Бизнес-процесс готов. Загрузите его на RunaWFE сервер. Для этого кликните на разработанный бизнес-процесс, в меню выберите команду "Файл / Экспорт процесса" (Подробнее см. Занятие 1, Порядок выполнения работы, Пункты 11-14) Дайте полномочия группам "Сотрудники" и "Директор" на чтение определения и экземпляров разработанного бизнес-процесса. Дайте полномочия группе "Сотрудники" на запуск бизнес-процесса (Подробнее см. Занятие 2, Порядок выполнения работы, Пункт 31, Рис. 3.23).
- Выполните бизнес-процесс под разными пользователями. Проверьте работу бота и всех заданных ограничений на ввод данных в формы.
В появившейся форме (См. Рис. 2.4) в поле "Название" введите "localbotstation", в поле "Адрес" введите "localhost:10099", кликните на "Добавить бот станцию".
Будет создана бот станция localbotstation, правами на которую будет обладать "Administrator".
Замечание. С бот станцией должен быть связан один из пользователей. От имени этого пользователя бот станция будет обращаться к RunaWFE серверу для того, чтобы прочитать свои параметры. Логин и пароль этого пользователя вводится в специальном конфигурационном файле (botstation.properties). По умолчанию в системе в качестве пользователя с правами на работу с бот станцией указан Administrator.
В появившейся форме кликните на бот-станцию "localbotstation" (См. Рис. 2.5)
В появившейся форме кликните "Добавить бота" (См. Рис. 2.6)
В открывшейся форме создания бота (См. Рис. 2.7) выберите из списка пользователя "Бот данных", в поле "Пароль бота" введите пароль этого пользователя ("123").
Будет создан бот, который будет обращаться к RunaWFE симулятору от имени пользователя "Бот данных".
В появившейся форме кликните на "Добавить" в разделе "Задания" (См. Рис. 2.9).
В появившейся строке введите в поле "Задание" строку, совпадающую с именем узла-действия "Ввести данные о заявке в учетную систему", в поле "Обработчик задания" выберите обработчик "DoNothingTaskHandler" (См. Рис. 2.10), в поле "Конфигурация" ничего вводить не надо. Кликните "Применить".
Замечание. Данное применение бота является условным. Обработчик "DoNothingTaskHandler" автоматически сообщает бизнес-процессу, что задание выполнено, при этом никаких реальных действий не производит. Предполагается, что на этом примере (без реальной интеграции) студенты знакомятся с общим механизмом реализации интеграции СУБПиАР с другими информационными системами.
Для реальной организации взаимодействия экземпляров бизнес-процессов с информационными системами предприятия используются другие обработчики, например, "DatabaseTaskHandler" (обработчик для взаимодействия с реляционными базами данных) или "WebServiceTaskHandler" (обработчик для взаимодействия с веб-сервисами). Для этих обработчиков в конфигурации заданий задаются параметры коннекторов к информационным системам (ссылки на источники данный, типы протоколов, URL-адреса и т.п.). Работа конкретных ботов будет подробно рассмотрена в следующих занятиях.
Кликните на ссылке "Настройки соединения" (Подробнее см. Занятие 2, Порядок выполнения работы, Пункт 26, Рис. 3.16).
В появившейся форме введите URL RunaWFE симулятора, а также логин и пароль пользователя, под которым будет установлено соединение. Если Вы не меняли установки по умолчанию, то можно использовать значения, которые установлены в форме (Подробнее см. Занятие 2, Порядок выполнения работы, Пункт 26, Рис. 3.17).
Проверьте соединение, кликнув на кнопку "Проверить соединение". Если соединение будет установлено, то появится сообщение об этом (См. Рис 3.18).
Если появится сообщение об ошибке соединения, проверьте что RunaWFE симулятор запущен (См. Вводное занятие, Порядок выполнения работы, Пункт 1).
Кликните на "ОК". В появившейся форме кликните на "Синхронизация". Затем кликните на "Группа" и ссылку "Выбрать" (См. Рис. 2.14)
В открывшемся окне выберите группу "Директор". Кликните "ОК".
Перейдите к редактированию инициализатора роли "Бот работы с данными". В форме редактирования инициализатора кликните на нижней вкладке "Задать роль с помощью оргфункции" и верхней вкладке "Группы и пользователи WF" (См. Рис. 2.13).
Затем кликните на "пользователь" и ссылку "Выбрать". В появившейся форме выберите пользователя "Бот данных" (См. Рис. 2.15) Кликните на "ОК".
В появившейся форме введите текст "Название услуги" и кликните на иконку вставки Freemarker тега (См. Рис. 2.17).
В появившемся диалоге выберите из списка тег "Ввод переменной", в качестве параметра, выберете переменную "Название услуги" (См. Рис. 218).
Аналогично добавьте на форму ввод переменных: "Поставщик услуги", "Дата начала действия услуги", "Дата окончания действия услуги", "Стоимость услуги" и "Комментарий" (См. Рис. 2.19).
Сохраните форму стартового узла. Создайте форму узла-действия "Рассмотреть заявку на покупку услуги" (См. Рис. 2.16).
В форме введите текст "Название услуги" и кликните на иконку графического элемента Freemarker тег "<F>". (См. Рис. 2.20).
В появившемся окне выберите тег "отобразить переменную", в поле "Название переменной" выберите "Название услуги", форма отображения - "Как строку" (См. Рис. 2.21).
Аналогичным образом поместите на форму элементы для отображения переменных "Поставщик услуги", "Дата начала действия услуги", "Дата окончания действия услуги" и "Стоимость услуги" (См. Рис. 2.22).
Также добавьте вывод переменной "Комментарий", т.к. данная переменная представляет собой многострочный текст, то используйте форму отображения - "Как неактивный компонент ввода" (См. Рис. 2.23).
Далее поместите на форму текст "Подавший заявку", после чего используя тег "Отобразить переменную" добавьте вывод роли "Сотрудник" (См. Рис. 2.24)
Далее введите "Комментарий директора" и поместите тег "Ввод переменной" для переменной "Комментарий директора" (См. Рис. 2.25).
В результате форма должна выглядеть как на Рис. 2.26
Создайте формы для узлов-действий "Ознакомиться с одобрением заявки" и "Ознакомиться с отказом", в которые поместите вывод значений всех переменных бизнес-процесса, а также значение роли "Директор" с помощью тега "Отобразить переменную". Форма узла-действия "Ознакомиться с одобрением заявки" также должна содержать фразу "Ваша заявка одобрена директором", а форма узла-действия "Ознакомиться с отказом" должна содержать фразу "В заявке отказано".
Замечание. Из одной формы в другую можно переносить графические элементы путем выделения, копирования и вставки. Кроме того, формы "Ознакомиться с одобрением заявки" и "Ознакомиться с отказом" будут отличаться лишь заголовками, поэтому удобно воспользоваться созданием формы на основе существующей (Подробнее см. Занятие 3, Порядок выполнения работы, Пункт 6, Рис. 4.24, 4.25).
В появившейся форме кликните на строку, соответствующую переменной "Название услуги". Установите галочку для строки "Обязательное поле". В появившееся внизу поле впишите текст сообщения об ошибке (См. Рис. 2.28).
При запуске экземпляра бизнес-процесcа система проверит, что в поле "Название услуги" введено значение. Если значение не введено, то система не будет запускать экземпляр бизнес-процесса и выведет сообщение об ошибке, текст которого помещен в поле "Сообщение об ошибке".
Далее кликните на строку, соответствующую переменной "Поставщик услуги". Установите галочку для строки "Обязательное поле". Введите текст сообщения об ошибке.
Кликните на строку, соответствующую переменной "Дата начала действия услуги". Установите галочку для строки "Обязательное поле". Введите текст сообщения об ошибке. Установите галочку для строки "Диапазон даты относительно текущей", установите возможный сдвиг в прошлое - 0 дней и в будущее - 30 дней, в поле "Рабочее время" выберите значение false. Введите текст сообщения об ошибке "Дата не может быть в прошлом, или более, чем на 30 дней превышать текущую" (См. Рис. 2.29).
Для переменной "Дата окончания действия услуги" установите признак обязательности ввода значения и разрешенный диапазон значений от нуля до 366 дней относительно текущей даты.
Для переменной "Стоимость услуги" установите признак обязательности ввода значения и разрешенный диапазон значений от нуля до 25 000. Введите текст сообщения об ошибке (См. Рис. 2.30).
Для переменной "Комментарий" не устанавливайте признак обязательности ввода значения, но задайте ограничение на максимальный размер вводимого текста (См. Рис. 2.31).
Кликните на кнопку "Next". В появившейся форме кликните на "Добавить", в поле ввода сообщения об ошибке вставьте "Дата окончания действия услуги не может быть раньше даты начала действия услуги".
В конструкторе проверяемого соотношения в нижней части формы выберите две переменные: "Дата_окончания_действия_услуги" и "Дата_начала_действия_услуги" и установите между ними соотношение "не раньше" (См. Рис. 2.32).
Кликните на "Finish".
Кликните на узле-действии "Рассмотреть заявку на покупку услуги" правой кнопкой мыши, выполните команду "Форма / Проверка переменных формы" (См. Рис. 2.27).
В этом узле-действии в бизнес-процесс может быть введена только одна переменная - "Комментарий директора". Не устанавливая для нее признак обязательности ввода значения, задайте ограничение на максимальный размер вводимого текста (См. Рис. 2.33).
Задание для самостоятельной работы
Разработайте бизнес-процесс сдачи экзамена "Пример 4-2", схема которого изображена на рисунке 2.34.
Роль «Студент» должна быть инициализирована стартовым узлом, а роль «Преподаватель» - отношением «Преподаватель», примененным к роли «Студент» (см. предыдущие занятия). Роль "Старший преподаватель" должна быть инициализирована группой "Преподаватели".
В бизнес-процессе должны быть следующие переменные.
Переменные типа "Строка":
- Предмет
- Место экзамена
Переменные типа "Текст":
- Комментарий
- Комментарий-преподавателя
- Вопрос по теории
- Ответ на вопрос по теории
- Комментарий по теории
- Задача
- Решение задачи
- Комментарий по задаче
- Комментарий старшего преподавателя
Переменные типа "Дата-время":
- Дата-время экзамена
Переменные типа "Целое":
- Оценка за теорию
- Оценка за задачу
- Итоговая оценка
В стартовой форме бизнес-процесса должны быть введены следующие переменные:
- Предмет
- Комментарий
Переменная "Предмет" должна быть обязательной, Комментарий - не обязательной. На длину переменной "Предмет" должно быть наложено ограничение в 50 символов, на длину переменной Комментарий - в 200 символов.
В форме узла-действия "Принять решение о допуске студента к экзамену" должно быть выведено значение роли "Студент", а также выведены значения переменных, введенных на стартовой форме. На форме должен быть ввод переменной "Комментарий-преподавателя". На длину переменной "Комментарий-преподавателя" должно быть наложено ограничение в 200 символов. Ввод переменной "Комментарий-преподавателя" должен быть необязательным.
В узлах "Ознакомиться с недопуском к экзамену" и "Ознакомиться с получением экзамена автоматом" должно быть выведено значение роли "Преподаватель", а также значения всех веденных в бизнес-процесс переменных.
В форме узла-действия "Назначить дату и время экзамена" должно быть выведено значение роли "Студент", а также значения всех веденных в бизнес-процесс переменных. На форме должен быть ввод переменных "Дата-время экзамена" и "Место экзамена".
На переменную "Дата-время экзамена" должны быть наложены следующие ограничения: поле должно быть обязательно для ввода, дата-время экзамена не может быть в прошлом, а также превышать текущую дату-время более чем на 30 календарных дней.
На переменную "Место экзамена" должны быть наложены следующие ограничения: поле должно быть обязательно для ввода, длина вводимого в переменную текста не может превышать 100 символов.
В форме узла-действия "Сформулировать теоретический вопрос" должно быть выведено значение роли "Студент", а также значения всех веденных в бизнес-процесс переменных. На форме должен быть ввод переменной "Вопрос по теории". На длину вводимого в переменную текста должно быть наложено ограничение в 300 символов. Ввод значения этой переменной должен быть обязательным.
Форма узла-действия "Сформулировать задачу" должна быть подобна форме узла-действия "Сформулировать теоретический вопрос", только вместо переменной "Вопрос по теории" на форме должна вводиться переменная "Задача".
В формах узлов-действий "Написать ответ на теоретический вопрос" и "Написать решение задачи" должны быть введены соответственно переменные "Ответ на вопрос по теории" и "Решение задачи". Вывод переменных и ограничения должны быть аналогичны ранее описанным формам.
В формах узлов-действий "Написать ответ на теоретический вопрос" и "Написать решение задачи" должны быть введены соответственно переменные "Ответ на вопрос по теории" и "Решение задачи". Вывод переменных и ограничения должны быть аналогичны ранее описанным формам.
В формах узлов-действий "Проверить ответ на теоретический вопрос, поставить оценку за теорию" и "Проверить решение задачи, поставить оценку за задачу" должны быть введены соответственно значения переменных "Комментарий по теории", "Оценка за теорию" и "Комментарий по задаче", "Оценка за задачу". Вывод переменных и ограничения должны быть аналогичны ранее описанным формам.
В форме узла-действия "Поставить итоговую оценку за экзамен" должны быть введены значения переменных "Комментарий старшего преподавателя" и "Итоговая оценка". Вывод переменных и ограничения должны быть аналогичны ранее описанным формам.
В следующим за узлом-действием ветвлении проверяется, больше ли двух значение переменной "Итоговая оценка".
В узлах-действиях "Ознакомиться с необходимостью пересдачи экзамена" и "Ознакомиться с необходимостью пересдачи экзамена" должны быть введены значения всех введенных в бизнес-процесс переменных и значения всех ролей.
Узел-действие "Внести данные в учетную систему" и соответствующая задача боту настраиваются аналогично тому, как это было сделано в бизнес-процессе "Пример 4-1".
После разработки бизнес-процесса "Пример 4-2" загрузите его на RunaWFE сервер и выполните под разными пользователями. Добейтесь прохождения точек управления по всем возможным маршрутам. Проверьте выполнение ограничений и работу бота.
Требования к представлению результатов занятия
В результате выполнения лабораторной работы должны быть представлены преподавателю отчет, бот Бот данных, полученный командой экспорта бота, а также файлы "Пример4-1.par" и "Пример4-2.par", содержащие разработанные на занятии бизнес-процессы.
В отчете должны содержаться следующие выходные данные:
1) Скриншоты основных действий, совершенных на занятии, с пояснениями
2) Скриншоты, содержащие маршруты точек управления для экземпляров бизнес-процессов, доведенных до завершения.
3) Скриншоты, содержащие созданные на занятии роли, переменные, настройки ботов, основные формы и их ограничения
4) Описание возникших при выполнении задания проблем и найденных путей их решения (не обязательно, только если возникли проблемы при выполнении задания)
Контрольные вопросы
- Что такое перспектива операций?
- Что такое бот-станция?
- Как используется в бизнес-процессе определенное в бот-станции задание для бота?
- Можно ли в форме бизнес-процесса ввести ограничение, в соответствии с которым одна вводимая в форму дата обязательно должна быть больше другой?
Практическое занятие "Работа с Word-ботом"
Цель занятия
Целью занятия является изучение работы с Word-ботом.
Теоретические сведения
Необходимые теоретические сведения изложены в первой части лабораторного практикума в пункте "Концепция ботов и бот-станций" раздела "Стандарты и концепции, связанные с СУБПиАР".
Порядок выполнения работы
- Запустите среду разработки Создайте новый проект - Занятие 5 Создайте новый бизнес-процесс "Пример 5-1". Используйте следующие элементы для создания бизнес-процесса в соответствии с рисунком 3.1
- Начало
- Задача сценария
- Действие
- Параллельный шлюз
- Исключающий шлюз
- Подпроцесс
- Руководитель
- Сотрудник
- Отдел кадров
- Директор
- Бухгалтер
- Word бот
- Запустите симулятор. Войдите в web-интерфейс системы RunaWFE под пользователем Administrator.
- Создайте отношение "Руководитель" (См. пример создания отношения в пунктах 10-11 раздела "Практическое занятие "Изучение перспективы ресурсов", рис. 3.5, 3.6) Откройте отношение "Руководитель" и создайте пару "Паучков " - "Сверчков" (см. рис. 3.3)
- Создайте группы
- Отдел кадров
- Бухгалтеры
- Инициализирйте роли "Директор", "Отдел кадров" и "Бухгалтер" с помощью соответствующих групп (директор, отдел кадров, бухгалтеры) Для этого вернитесь в среду разработки к разрабатываемому процессу, перейдите на вкладку Роли, выделите роль и нажмите на "Изменить". Используйте инициализацию с помощью групп wf (подробнее см. Практическое занятие "Изучение перспективы операций", Порядок выполнения работы, Пункт 13, рис. 2.13-2.14)
- Создайте переменные в соответствии с рисунком 3.4
- Создайте форму для стартового узла "Подать заявку на премию" Замечание. В случае если в системе установлен браузер Microsoft Internet Explorer 11 (IE11), то перед созданием формы обратите внимание на важные замечания, описанные в Практическое занятие "Изучение перспективы данных", Пункт 6, Рис. 4.9, 4.10 На данной форме Руководитель будет вводить данные (сотрудник, размер премии, выполненные работы) для подачи заявки на премию.
- Задайте валидацию для переменных и роли стартовой формы Для переменных "Размер премии" и "Описание выполненных работ" добавьте валидатор "обязательное поле" (см. Практическое занятие "Изучение перспективы операций", Пункт 15, рис. 2.27, 2.28). В форме валидации перейдите на вкладку Роли, и таким же образом, как и для переменных, добавьте валидатор "обязательное поле" для роли "Сотрудник" (см. рис. 3.11)
- Настройте задачи сценариев Выделите первую задачу сценария, перейдите в свойства, здесь введите название - "ФИО сотрудника". Кликните на выбор класса обработчика и выберите из списка - обработчик "Получить информацию об исполнителе", нажмите ОК (см. рис. 3.12, 3.13)
- fio - фамилия, имя и отчество в именительном падеже (в нашем случае задана с помощью переменной 'ФИО сотрудника')
- caseNumber - номер падежа от 1 до 6 (в нашем случае 3 - это Дательный падеж)
- mode - строка форматирования
- Создайте форму для узла "Подписать служебную записку и отдать ее в отдел кадров" Отобразите файловую переменной "Служебная записка"
- Создайте форму для узла "Рассмотреть заявку на премию"
- Создайте форму для узла "Ознакомиться с сообщением об отказе"
- Создайте форму для узла "Ознакомиться с сообщением о согласии" Т.к. данная форма отличается от формы "Ознакомиться с сообщением об отказе" лишь заголовком, то можно воспользоваться функцией создания формы на основе существующей (Подробнее см. Занятие 3, Порядок выполнения работы, Пункт 6, Рис. 4.24, 4.25).
- Создайте композицию "Издание приказа и начисление премии" Композиция похожа на подпроцесс, однако является более «легкой» конструкцией, т.к. для композиции не порождается нового экземпляра процесса, следовательно у нее нет своих собственных переменных, инициализаторов ролей и т.д. Выделите на схеме элемент подпроцесс, дайте ему название "Издание приказа и начисление премии", затем кликните на данном элементе правой клавишей мыши и выберите "Использовать композицию. Новый подпроцесс" (см. рис. 3.24)
- Создайте композицию вида изображенного на рисунке 3.26
- Создайте форму для узла "Издать приказ о премировании" Расположите здесь тег для ввода переменной "номер приказа"
- Настройте задачи сценария В задаче сценария "ФИО директора" используя класс обработчика "Получить информацию об исполнителе" определите фамилию, имя и отчество Директора (см. рис. 3.30)
- Разработайте Word бота и задачу бота "Сгенерировать приказ" непосредственно в среде разработки Откройте вкладку "Боты" (см. рис. 3.32)
- Создайте форму "Ознакомиться с приказом" (см. рис. 3.51) Отобразите на ней файловую переменную "Приказ" с помощью тега "Отобразить переменную" как строку.
- Экспортируйте разработанный процесс и Word бот с задачей на сервер WFE Кликните на разработанный бизнес-процесс, в меню выберите команду "Файл / Экспорт процесса" (Подробнее см. Занятие 1, Порядок выполнения работы, Пункты 11-14). Для экспорта бота с задачей, перейдите на вкладку "Боты", кликните правой клавишей мыши на Word бот, и выберите "Экспорт бота" (см. рис 3.54) В появившемся окне выберите экспорт в файл, нажмите кнопку "Browse" и укажите куда экспортировать бот с задачей, например в корень диска C, далее нажмите Finish (см. рис 3.55).
- Войдите на сервер под пользователем Administrator Процесс "Пример 5-1" должен запускать "Руководитель", поэтому дайте права на чтение и запуск для пользователя "Паучков" (который является руководителем Сверчкова). Подробнее см. 1-ая Часть, Вводное занятие, Порядок выполнения работы, Пункты 29-34. Также дайте право на чтение процесса для Word бота. (см. рис. 3.58)
- Запустите периодическую активацию ботов
- Выполните процесс "Пример 5-1" Войдите в систему под пользователем "Паучков", запустите процесс. Введите данные на стартовой форме, и нажмите "Запустить" (см. рис. 3.59)
- ФИО сотрудника
- Даты запуска процесса
- Даты ввода номера приказа
- ФИО директора
- ФИО сотрудника в необходимом падеже
- Текста приказа
- ФИО Сотрудника
- Даты начала и окончания отпуска
- Дату заявления (совпадает с датой запуска бизнес-процесса)
- Номер приказа
- Текст приказа с ФИО сотрудника в необходимом падеже, с датами начала и окончания отпуска
- Дату приказа (совпадает с датой ввода номера приказа сотрудником отдела кадров)
- ФИО Сотрудника
- ФИО Директора
- В каком месте шаблона документа ставится в соответствие переменная бизнес-процесса?
- Где задается имя файла, в который будет помещен сгенерированный документ?
- В верхней части листа - название условной компании
- Фразу "Приказ номер"
- Справа от этой фразы - значение "номер приказа", введенное инспектором кадровой службы"
- слово "от"
- Справа от этого слова - дату запуска экземпляра бизнес-процесса
- Далее - "Предоставить сотруднику" ФИО сотрудника "ежегодный основной оплачиваемый отпуск"
- Далее - "с" дата начала отпуска, введенная на стартовой форме
- Далее - "по" дата окончания отпуска, введенная на стартовой форме
- Далее - место для подписи Генерального директора (несколько знаков подчеркивания), ФИО условного генерального директора компании, дата запуска экземпляра бизнес-процесса
- Внизу - "С приказом ознакомлен", место для подписи сотрудника (несколько знаков подчеркивания), ФИО сотрудника, дата запуска экземпляра бизнес-процесса
- В верхней части листа "Генеральному директору" - название условной компании, ФИО условного Генерального директора, "от сотрудника"
- ФИО уходящего в отпуск сотрудника
- Фразу "Заявление"
- На следующей строке "Прошу предоставить мне ежегодный основной оплачиваемый отпуск с", дата начала отпуска, введенная на стартовой форме, "по", дата окончания отпуска, введенная на стартовой форме
- Внизу - ФИО сотрудника, место для подписи сотрудника (несколько знаков подчеркивания), дата запуска экземпляра бизнес-процесса
- В верхней части листа - название условной компании
- Фразу "Справка о болезни сотрудника"
- Далее - ФИО сотрудника
- Далее - "Начало болезни" дата начала болезни, введенная на стартовой форме
- Далее - "Окончание болезни" дата окончания болезни, введенная инспектором КС в задании "Получить от сотрудника больничный"
- Далее - место для подписи бухгалтера (несколько знаков подчеркивания)
- выбирает из списка (список соответствует членам группы "Все сотрудники") сотрудника, который отправляется в командировку
- вводит:
- дату начала командировки
- дату окончания командировки
- город
- организацию, в которую направляется сотрудник
- цель командировки
- причину
- комментарий
- В верхней части листа - название условной компании
- Фразу "Приказ о направлении в командировку номер"
- Справа от этой фразы - значение "номер приказа", введенное инспектором кадровой службы"
- слово "от"
- Справа от этого слова - дату запуска экземпляра бизнес-процесса
- Далее - "Направить в командировку сотрудника" ФИО сотрудника "ежегодный основной оплачиваемый отпуск"
- "в г." город, введенный на стартовой форме
- "в организацию:" организация, введенная на стартовой форме
- "с целью:" организация, введенная на стартовой форме
- Далее - "с" дата начала командировки, введенная на стартовой форме
- Далее - "по" дата окончания командировки, введенная на стартовой форме
- Далее - место для подписи Генерального директора (несколько знаков подчеркивания), ФИО условного генерального директора компании, дата запуска экземпляра бизнес-процесса
- Внизу - "С приказом ознакомлен", место для подписи сотрудника (несколько знаков подчеркивания), ФИО сотрудника, дата запуска экземпляра бизнес-процесса
- В верхней части листа - название условной компании
- Фразу "Командировочное удостоверение"
- ФИО сотрудника
- Организация
- Внизу:
- "Генеральный директор", название условной компании, место для подписи Генерального директора (несколько знаков подчеркивания), ФИО условного генерального директора компании
- "Работник", место для подписи сотрудника (несколько знаков подчеркивания), ФИО сотрудника
- Дата запуска экземпляра бизнес-процесса
- "Отметки о выбытии в служебную поездку, прибытии в пункты назначения и выбытии из них и прибытии в место постоянной работы
- Далее содержится таблица из четырех блоков
- Фразу "Служебная записка"
- Фразу "Прошу направить меня в местную командировку"
- Дату, время начала и время окончания местной командировки, введенные на стартовой форме
- Организацию и причину, введенные на стартовой форме
- Дату запуска экземпляра бизнес-процесса
- Место для подписи сотрудника (несколько знаков подчеркивания)
- ФИО сотрудника
- Фразу "Служебная записка"
- Фразу "Прошу предоставить мне отгул"
- Дату, время начала и количество часов отгула, введенные на стартовой форме
- Дату запуска экземпляра бизнес-процесса
- Место для подписи сотрудника (несколько знаков подчеркивания)
- ФИО сотрудника
- В верхней части листа - название условной компании
- Фразу "Приказ номер"
- Справа от этой фразы - значение "номер приказа", введенное инспектором кадровой службы"
- слово "от"
- Справа от этого слова - дату запуска экземпляра бизнес-процесса
- Далее - "Предоставить сотруднику" ФИО сотрудника "отпуск по уходу за ребенком"
- Далее - "с" дата начала отпуска, введенная на стартовой форме
- Далее - "по" дата окончания отпуска, введенная на стартовой форме
- Далее - место для подписи Генерального директора (несколько знаков подчеркивания), ФИО условного генерального директора компании, дата запуска экземпляра бизнес-процесса
- Внизу - "С приказом ознакомлен", место для подписи сотрудника (несколько знаков подчеркивания), ФИО сотрудника, дата запуска экземпляра бизнес-процесса
- В верхней части листа "Генеральному директору" - название условной компании, ФИО условного Генерального директора, "от сотрудника"
- ФИО уходящего в отпуск сотрудника
- Фразу "Заявление"
- На следующей строке "Прошу предоставить мне отпуск по уходу за ребенком с", дата начала отпуска, введенная на стартовой форме, "по", дата окончания отпуска, введенная на стартовой форме
- Внизу - ФИО сотрудника, место для подписи сотрудника (несколько знаков подчеркивания), дата запуска экземпляра бизнес-процесса
- день недели (содержится в строке таблицы, не вводится пользователем, значения в строках таблицы - пн. вт. ср. чт. пт. сб. вс.)
- время прихода (вводится пользователем для каждой строки, если прихода не предполагается, то это 00:00)
- время ухода (вводится пользователем для каждой строки, если прихода не предполагается, то это 00:00)
- величина обеденного перерыва (выбор из списка: 30 минут, 1 час)
- Фразу "Служебная записка"
- Фразу "Прошу утвердить мой индивидуальный график работы для периода времени:"
- Даты начала и окончания действия графика работы, введенные на стартовой форме
- Таблицу введенных на стартовой форме приходов и уходов по дням недели
- Дату запуска экземпляра бизнес-процесса
- Место для подписи сотрудника (несколько знаков подчеркивания)
- ФИО сотрудника
- В верхней части листа - название условной компании
- Фразу "Приказ номер"
- Справа от этой фразы - значение "номер приказа", введенное инспектором кадровой службы"
- слово "от"
- Справа от этого слова - дату запуска экземпляра бизнес-процесса
- Далее - "Предоставить сотруднику" ФИО сотрудника "отпуск без сохранения зарплаты"
- Далее - "с" дата начала отпуска, введенная на стартовой форме
- Далее - "по" дата окончания отпуска, введенная на стартовой форме
- Далее - место для подписи Генерального директора (несколько знаков подчеркивания), ФИО условного генерального директора компании, дата запуска экземпляра бизнес-процесса
- Внизу - "С приказом ознакомлен", место для подписи сотрудника (несколько знаков подчеркивания), ФИО сотрудника, дата запуска экземпляра бизнес-процесса
- В верхней части листа "Генеральному директору" - название условной компании, ФИО условного Генерального директора, "от сотрудника"
- ФИО уходящего в отпуск сотрудника
- Фразу "Заявление"
- На следующей строке "Прошу предоставить мне отпуск без сохранения зарплаты с", дата начала отпуска, введенная на стартовой форме, "по", дата окончания отпуска, введенная на стартовой форме
- Внизу - ФИО сотрудника, место для подписи сотрудника (несколько знаков подчеркивания), дата запуска экземпляра бизнес-процесса
- В верхней части листа - название условной компании
- Фразу "Приказ о сверхурочных работах номер"
- Справа от этой фразы - значение "номер приказа", введенное инспектором кадровой службы"
- слово "от"
- Справа от этого слова - дату запуска экземпляра бизнес-процесса
- Далее - "Привлечь к сверхурочным работам сотрудника" ФИО сотрудника
- Далее - "в период", время начала, время окончания, дата сверхурочных работ (введенные на стартовой форме)
- Далее - место для подписи Генерального директора (несколько знаков подчеркивания), ФИО условного генерального директора компании, дата запуска экземпляра бизнес-процесса
- Внизу - "С приказом ознакомлен", место для подписи сотрудника (несколько знаков подчеркивания), ФИО сотрудника, дата запуска экземпляра бизнес-процесса
- Фразу " Объяснительная записка по факту отсутствия на работе в период с"
- Дату начала отсутствия
- "по", дату окончания отсутствия
- Текст объяснительной записки, введенный в форме предыдущего узла-действия
- Текущую дату
- Место для подписи сотрудника (несколько знаков подчеркивания)
- ФИО сотрудника
- Больничный
- Ежегодный отпуск
- Отпуск без сохранения зарплаты
- Другое отсутствие
- Документация Runa WFE [официальный сайт проекта]. URL: http://runawfe.ru/rus/Документация
Замечание: для "Задача сценария" используйте компактный вид, кликните на элементе правой клавишей мыши и выберите пункт "Опции - Компактный вид" (см. рис. 3.2), после чего элемент примет вид изображенный на рис. 3.1. Используйте данную опцию для всех 4 задач сценариев.
Создайте роли:
Далее выберите для узлов роли в соответствии с рисунком 3.1
Замечание. Роль "Руководитель" инициализируется в стартовом узле бизнес-процесса.
Таким образом, Паучков руководитель Сверчкова.
Замечание. В случае если в системе установлен браузер Microsoft Internet Explorer 11 (IE11), необходимо дополнительно создать переменную формата "Строка" с названием "Отношение".
Кроме того, нужно ввести для нее значение по умолчанию - "Руководитель"
Перейдите на вкладку Переменные, нажмите "Создать".
В появившейся форме введите название новой переменной - "Отношение" и нажмите NEXT.
В качестве формата переменной выберите из списка - "Строка", снова нажмите NEXT.
Здесь необходимо задать значение по умолчанию, для этого переключитесь на строку "Использовать значение по умолчанию", после чего в текстовое поле введите "Руководитель" (см. Рис. 3.5).
Напротив строки "Сотрудник" расположите freemarker тег "Выбрать пользователя по отношению с параметром".
Данный тег формирует список выбора пользователя по отношению, отфильтрованного по параметру отношения (при этом группы в список не попадают).
В поле "Пользователь" выберите роль "Сотрудник", поле "название отношения" задайте с помощью константного значения т.е. введите "Руководитель", в качестве параметра выберите из списка роль "Руководитель", использовать обратное отношение - "Да" (см. рис. 3.8)
Замечание. В случае если в системе установлен браузер Microsoft Internet Explorer 11 (IE11), то в качестве редактора форм должен быть использован CKEditor4 (как переключить редактор см. в Практическое занятие "Изучение перспективы данных", Порядок выполнения работы, Пункт 6, Рис. 4.9, 4.10 ). При этом, в CKEditor4 тег "Выбрать пользователя по отношению с параметром" не поддерживает использование в качестве названия отношения константное значение, поэтому вместо константы "Руководитель", в поле "Название отношения" выберите строковую переменную "Отношение" (см. Рис. 3.9)
Таким образом будет сформирован список выбора пользователя по отношению "Руководитель", при этом используем обратное отношение т.е. параметр роль "Руководитель" соответствует "левой" части в паре, в список же попадут пользователи из "правой части" (подробнее об отношениях см. в "Стандарты и концепции, связанные с СУБПиАР. Использование бинарных отношений для упрощения инициализации ролей").
Напротив строки "Сумма" расположите тег для ввода переменной "Размер премии" (см. рис. 3.10). Также разместите тег для ввода переменной "Описание выполненных работ".
Сохраните и закройте форму.
Нажмите Finish и сохраните процесс.
Далее вызовите конфигурацию данного обработчика, выберите параметры "Исполнитель", "Формат", "Результат" в соответствии с рисунком 3.14
Данный обработчик определяет полное имя (ФИО) Сотрудника и сохраняет результат в строковую переменную "ФИО сотрудника", однако в служебной записке и приказе на премирование должно использоваться ФИО в "Дательном" падеже.
Настройте следующую задачу сценария.
Название - "ФИО сотрудника в дательном падеже", класс обработчика - "Выполнить формулу".
Добавьте конфигурацию данного обработчика, следующего вида
'ФИО сотрудника 3'=FIO_case_ru('ФИО сотрудника', 3, "F i o")
'ФИО сотрудника 3' - переменная, в которую будет сохранено ФИО в дательном падеже,
FIO_case_ru(fio, caseNumber, mode) - функция склоняющая ФИО, имеет параметры:
Символы F, I и O заменяются на фамилию, имя или отчество в соответствующем падеже. Символы f, i и o заменяются на первую букву фамилии, имени или отчества.
т.е. данный обработчик сформирует Фамилию в дательном падеже, первую букву Имени и первую букву Отчества, например Иванову И.И.
Для вставки в конфигурацию переменных воспользуйтесь пунктом "Вставить переменную", соответственно для вставки функции используйте "Вставить функцию"
Следующая задача сценария (см. рис. 3.16) - это "Определение текущей даты". Здесь также используется "Выполнить формулу" в качестве обработчика.
Конфигурация имеет следующее выражение
'Текущая дата' = current_date();
функция current_date определяет текущую дату и сохраняет результат в переменную "Текущая дата"
Следующая задача сценария будет генерировать файл служебной записки.
Выделите задачу, дайте ей название "Генерации служебной записки", в качестве класса обработчика выберите - "Word: Формирование документа DOCX использую шаблон" (см. рис. 3.17)
Вызовите конфигуратор данного обработчика.
В поле "Входной файл" выберите вариант - "Шаблон в процессе",
выходной файл задайте с помощью файловой переменной "Служебная записка",а в поле "Имя файла" введите название файла служебной записки - "служебная записка о начислении премии.docx"
Для создания шаблона в процессе кликните "Создать", затем "Изменить", будет открыт редактор Word, в котором необходимо создать шаблон вида, изображенного на рисунке 3.19
При выполнении обработчик заменит выражения вида ${Переменная} на значения переменных из процесса в формате, определенном в среде разработки.
Кроме ранее рассмотренных переменных, тут также используется поле fullName, определяющее ФИО пользователя (в именительном падеже) роли Руководитель.
Сохраните шаблон и закройте редактор word файлов.
т.е. на данной форме Руководитель получит ссылку на файл служебной записки, которую необходимо подписать и отдать в отдел кадров.
Здесь расположите теги "Отобразить переменную".
Для отображение роли "Руководитель" (будет выведены ФИО Руководителя), переменных "ФИО сотрудника", "размер премии" - используйте форму отображения "Как строку".
Для отображения переменной "Описание выполненных работ" используйте в качестве формы отображения вариант "Как неактивный компонент ввода"
Также добавьте тег для ввода переменной "Комментарий директора"
Здесь Директор рассматривает заявку, вводит комментарии и одобряет или отказывает в премировании.
Для переменной "Комментарий директора" добавьте валидатор "обязательное поле"
Сделайте отображение значений переменных "ФИО сотрудника", "Размер премии", "Описание выполненных работ", "Комментарий директора". При этом для строковых переменных используйте отображение "Как строка", для текстовых переменных - "Как неактивный компонент ввода"
В появившемся окне введите название "Издание приказа и начисление премии"
Проинициализируйте задачи ролями в соответствии с рисунком.
При этом для задач у которых роль - "Отдел кадров" (Издать приказ о премировании, Получить подпись сотрудника об ознакомлении с приказом) используйте опцию "Переинициализация роли" (см. рис. 3.27)
Для переменной "номер приказа" добавьте валидатор "обязательное поле" (см. рис. 3.29)
Выберите класс обработчика "Выполнить формулу" для задачи сценария "Сформировать текст приказа"
Используйте следующую конфигурацию для данного обработчика:
'Текст приказа о премировании'="Начислить сотруднику " + 'ФИО сотрудника 3' + " премию за высокие достижения в работе в сумме " + 'Размер премии' + " руб."
Здесь используются переменные: 'Текст приказа о премировании', 'ФИО сотрудника 3' и 'Размер премии'
Сохраните и закройте процесс с композицией.
Сделайте импорт бот станции с wfe (была создана ранее в "Практическое занятие "Изучение перспективы операций"), для этого кликните правой клавишей мыши в окне боты, и выберите пункт "Импорт бот станции" (см. рис. 3.33)
В появившемся окне переключитесь на "Импорт с сервера WFE" и нажмите "Синхронизация". Выделите бот станцию localbotstation и нажмите Finish (см. рис. 3.34)
localbotstation будет добавлена в среду разработки.
Перейдем к созданию бота Word бот.
Сделайте клик правой клавишей мыши на localbotstation и выберите пункт "Новый бот"
Введите имя бота - "Word бот" и нажмите Finish(см. рис. 3.36)
Теперь создайте задачу бота "Сгенерировать приказ", данная задача должна быть с формальными параметрами, поэтому воспользуйтесь пунктом "Новая задача бота с формальными параметрами" (см. рис. 3.37)
Введите название задания - "Сгенерировать приказ" и нажмите Finish
Будет создана задача с формальными параметрами.
Нажмите "Выбрать" для показа списка обработчиков (см. рис. 3.39)
Выделите обработчик "Word: формирование документа DOCX используя шаблон" и нажмите ОК (см. рис. 3.40)
Нажмите кнопку "Добавить" в окне "Входные параметры" (см. рис. 3.41)
Откроется форма в которой необходимо ввести название параметра и выбрать его тип (см. рис. 3.42)
Выходные параметры создаются аналогично.
Создайте входные и выходные параметры согласно рисунку 3.43
Сохраните задачу.
Перейдем к созданию шаблона для приказа. Запустите редактор для Word файлов и создайте "Шаблон приказа.docx" следующего вида:
Сохраните файл "Шаблон приказа.docx" в корне диска C:\
Как видно из шаблона, в конструкции ${..} заданы названия входных формальных параметров задачи "Сгенерировать приказ": "Текст приказа", "дата", "полное имя директора", "полное имя сотрудника". Кроме того, здесь используется "Номер приказа", который не входит в список параметров задачи "Сгенерировать приказ" т.е. процесс который будет использовать данную задачу бота, должен содержать переменную с названием "Номер приказа".
Вернитесь в среду разработки, к задаче "Сгенерировать приказ". Вызовите окно конфигуратора обработчика docx, для этого нажмите на кнопку "Изменить" в окне конфигурации (см. рис. 3.45)
Входной файл шаблона задайте с помощью пути к файлу, для выходного файла используйте файловую переменную параметр "Файл приказа", в поле "имя выходного файла" введите "Приказ.docx" (см. рис. 3.46)
Нажмите OK, и сохраните задачу.
Вернитесь к процессу "Пример 5-1", здесь необходимо инициализировать роль Word бот. Перейдите на вкладку "Роли", выделите Word бот, нажмите "Изменить".
На вкладке "Бот" выберите исполнителя по имени "Word бот" (см. рис. 3.47)
Нажмите ОК, сохраните процесс.
Перейдите к композиции "Издание приказа и начисление премии", здесь необходимо привязать Word бота к задаче. Кликните правой клавишей мыши на узле "Сгенерировать приказ" и выберите пункт "Привязать"
В списке выберите "Сгенерировать приказ" (см. рис. 3.49)
Нажмите ОК, будет открыта форма редактирования параметров задачи, выберите параметры в соответствии с рисунком 3.50
Создайте форму для узла "Начислить премию сотруднику", выведите значения переменных "ФИО сотрудника", "Размер премии", "Описание выполненных работ", "Приказ", при этом для текстовых переменных используйте форму отображения "как неактивный компонент ввода" (см. рис. 3.52)
Форма для узла "Ознакомиться с начислением премии" (см. рис. 3.53)
Теперь необходимо загрузить Word бот на сервер. Для этого войдите на сервер под пользователем Администратор. Выберите пункт "Бот станции", и перейдите в ранее созданную бот станцию "localbotstation" (см. рис 3.56)
В разделе "Загрузить бота", нажмите на кнопку "Выберите файл", в открывшемся окне навигации, выберите ранее экспортируемый файл "Word бот.bot". Теперь нажмите на кнопку "Загрузить бота" (см. рис 3.57)
Добавьте в группу "Бухгалтеры" пользователей "Жукова" и "Бражникова".
Добавьте в группу "Отдел кадров" пользователей "Личинкин" и "Гусеницын".
Добавьте в группу "Сотрудники" пользователей: Жукова, Бражникова, Личинкин, Гусеницын, а также Сверчков и Паучков.
Разрешите для группы "Сотрудники" вход в систему (см. 1-ая Часть, Вводное занятие, пункты 7-9, Рис. 5.6 - 5.8 ).
Дайте полномочия группе "Сотрудники" на чтение на всех созданных пользователей (см. 1-ая Часть, Вводное занятие, Порядок выполнения работы, Пункты 12-13, Рис. 5.11-5.12).
Дайте на отношение "Руководитель" право на чтение для группы "Сотрудники" (см. Практическое занятие "Изучение перспективы данных", Пункт 15)
"Паучков" получит задачу "Подписать служебную записку и передать ее в отдел кадров", откройте задание, и нажмите на ссылку "служебная записка о начислении премии.docx", скачайте/откройте сформированную с помощью обработчика DocxHandler на основе шаблона, служебную записку (см. рис. 3.60).
Распечатайте служебную записку.
Выполните задание.
Параллельно, "Отдел кадров" получает задание "Получить подписанную служебную записку на премию сотруднику".
Войдите в систему под пользователем входящем в группу "отдел кадров", например "Личинкин". Возьмите задачу на выполнение, и исполните ее (см. рис. 3.61).
Член группы "Директор" (в нашем случае это пользователь Стрекозин) получает задание "Рассмотреть заявку на премию".
Войдите в систему под пользователем "Стрекозин", возьмите задание на выполнение, введите комментарий и одобрите заявку на премию (см. рис. 3.62)
Руководитель (Паучков) получит задание "Ознакомиться с сообщением о согласии", параллельно с этим будет запущена композиция "Издание приказа и начисление премии", в которой "Отделу кадров" поступит задание "Издать приказ о премировании".
Войдите в систему под пользователем "Паучков", выполните активное задание (см. рис. 3.63).
Т.к. в узле "Издание приказа и начисление премии" была настроена переинициализация для роли "Отдел кадров", то соответствующее задание снова поступит всем членам группы "отдел кадров".
Войдите в систему под пользователем "Гусеницын", входящим в группу "Отдел кадров", возьмите на выполнение задание, введите "Номер приказа" и выполните задачу (см. рис. 3.64)
Проверьте, что Word бот автоматически выполнил задание "Сгенерировать приказ"
Для этого войдите в систему под Administrator, меню "Запущенные процессы", найти соответствующий экземпляр бизнес-процесса "Пример 5-1" и кликнуть на его номер. В появившейся форме свойств экземпляра бизнес-процесса будет показана его схема с отмеченным на ней положением точек управления и их маршрутами.
Найдите узел композицию "Издание приказа и начисление премии" (см. рис. 3.65), и кликните на него.
Откроется схема композиции с отмеченным положением точек управления, узел "Сгенерировать приказ" должен быть отмечен как выполненный (см. рис. 3.66).
Войдите в систему под пользователем "Сверчков", откройте задание "Ознакомиться с приказом".
Нажмите ссылку на сгенерированный с помощью Word бота файл "Приказ.docx"
Распечатайте сгенерированный ботом документ. Завершите запущенный экземпляр бизнес-процесса, последовательно выполнив соответствующие задания под пользователями Личинкин (входит в группу Отдел кадров), Бражникова (входит в группу Бухгалтеры), и Сверчков (сотрудник которому начисляется премия).
Задание для самостоятельной работы
Разработайте бизнес-процесс "Пример 5-2", схема которого изображена на рисунке 3.69 Для генерации приказа на отпуск используйте того же Word бота с задачей "Сгенерировать приказ" что и в процессе "Пример 5-1", и тот же шаблон для документа "приказ".
Замечание. Задача "Сгенерировать приказ" бота "Word бот" имеет формальные параметры, поэтому переменные в процессе "Пример 5-2" могут иметь отличные названия от переменных из "Процесс 5-1", но также в шаблоне приказа используется и непосредственно переменная "Номер приказа", поэтому она должна существовать в процессе "Пример 5-2".
"Заявление на отпуск" должно формироваться в задаче сценария с помощью обработчика "Word: Формирование документа DOCX используя шаблон". При этом создайте новый шаблон для документа "Заявление на отпуск" непосредственно в процессе.
В задании "Введите номер приказа на отпуск", кроме непосредственно ввода номера приказа, также необходимо расположить тег "Выбор из членов группы" необходимый для формирования на форме списка пользователей группы "Директор и заместители". Соответственно роль Директор будет проинициализирована выбранным из списка пользователем.
Замечание. В случае если в системе установлен Microsoft Internet Explorer 11 (IE11), то в качестве редактора форм должен быть выбран CKEditor4 (Подробнее см. Практическое занятие "Изучение перспективы данных", Порядок выполнения работы, Пункт 6, Рис. 4.9, 4.10). Также в этом случае потребуется в теге "Выбор из членов группы" использовать в поле "Группа" предварительно созданную переменную формата "Группа" вместо константного значения определяющего название группы. Данная переменная должна быть проинициализирована значением "Директор и заместители" (подобный пример см. в Практическое занятие "Изучение перспективы данных", Порядок выполнения работы, Пункт 6, Рис. 4.16)
Используйте задачи сценария для определения и формирования:
В бизнес-процессе "Пример 5-2" должны быть автоматически сгенерированы документы "Заявление на отпуск" и "Приказ на отпуск".
Документ "Заявление на отпуск" должен содержать:
Документ "Приказ" должен содержать
Замечание. В отличии от приказа из процесса "Пример 5-1", в приказе на отпуск используется дата совпадающая с датой ввода номера приказа сотрудником отдела кадров, а не с датой запуска бизнес-процесса.
Замечание. В бизнес-процессе необходимо проверять, что дата начала отпуска не позже даты окончания.
Требования к представлению результатов занятия
В результате выполнения лабораторной работы должны быть представлены преподавателю: Word бот, полученный командой экспорта, шаблоны документов для Word бота, отчет и файлы "Пример5-1.par" и "Пример5-2.par", содержащие разработанные на занятии бизнес-процессы.
В отчете должны содержаться следующие выходные данные:
1) Скриншоты основных действий, совершенных на занятии, с пояснениями
2) Скриншоты, содержащие маршруты точек управления для экземпляров бизнес-процессов, доведенных до завершения.
3) Скриншоты, содержащие созданные на занятии роли, переменные, настройки ботов, основные формы
4) Описание возникших при выполнении задания проблем и найденных путей их решения (не обязательно, только если возникли проблемы при выполнении задания)
Контрольные вопросы
Практическое занятие "Задания для самостоятельной работы"
Цель работы
На основе представленных описаний одного из условных бизнес-процессов реализовать этот бизнес-процесс в системе RunaWFE
Теоретические сведения
Необходимые для выполнения данной работы теоретические сведения содержатся в первых трех разделах первой части лабораторного практикума.
Порядок выполнения работы
Ниже представлено десять описаний условных бизнес-процессов. Требуется в соответствии с описанием разработать бизнес-процесс в среде разработки системы RunaWFE, отладить разработанный бизнес-процесс в симуляторе RunaWFE и сдать бизнес-процесс преподавателю.
Общие замечания для всех заданий.
Замечание 1.
Схема разработанного бизнес-процесса должна умещаться на экране компьютера. Если схема не помещается на экране, то ее части надо выносить во внутренние или внешние подпроцессы.
Замечание 2.
Рассмотрим ситуацию, в которой действие должно быть выполнено одновременно двумя пользователям - например, сотрудник должен расписаться в документе должностного лица. Интуитивная реализация такого сценария обычно соответствует последовательному расположению двух узлов на схеме бизнес-процесса, при этом исполнителем в первом узле является сотрудник, а во втором — должностное лицо. Практика показывает, что такое решение является неудачным, так как в этом случае в момент выполнения действия соответствующие задания не могут находиться в списках заданий обоих сотрудников. Поэтому на схеме бизнес-процесса узлы, в которых даются задания двум исполнителям, в данном случае должны располагаться не последовательно, а параллельно, то есть они должны находиться в параллельных ветках (см. рис. 4.1)
Замечание 3.
По возможности надо использовать парные разделения и слияния. Нотация BPMN позволяет использовать в схемах бизнес-процессов элементы разделения без парных им элементов - слияний. В этом случае для удаления выполнивших свою задачу точек управления можно использовать элемент - завершение потока управления. Однако, предпочтительной схемой является схема с парными разделениями и слияниями, так как такие схемы, несмотря на большее число содержащихся в них элементов, являются более понятными бизнес-аналитику, потому что участок схемы между разделением и парным ему слиянием можно мысленно декомпозировать и таким образом разделить схему бизнес-процесса на две более простых.
Замечание 4.
Разделения и парные им слияния должны быть расположены на одной (горизонтальной, или вертикальной) линии, причем на этой оси должны быть только два этих элемента, остальные парные элементы должны располагаться на других (параллельных друг другу) осях. В этом случае на схеме бизнес-процесса для одного элемента можно легко найти парный ему элемент.
Замечание 5.
Желательно, чтобы линии переходов, соответствующих одновременно выполняющимся потокам действий, были параллельными, т.к. это увеличивает понятность схемы.
Замечание 6.
Использовать элементы «окончание бизнес-процесса» предпочтительнее, чем элементы «завершение потока управления» (в тех случаях, когда это возможно), так как это упрощает бизнес-аналитику анализ схемы выполняющегося экземпляра бизнес-процесса с нанесенными на нее точками управления. В момент прихода точки управления в элемент «окончание бизнес-процесса» экземпляр бизнес-процесса сразу завершается, в случае же использования элементов «завершение потока управления» бизнес-аналитику приходится затрачивать больше усилий для того, чтобы следить за тем, чтобы все точки управления пришли в элементы «окончание бизнес-процесса».
Замечание 7.
Практика эксплуатации СУБП на предприятиях показывает, что роли должностных лиц (например, Бухгалтер, Инспектор кадровой службы) соответствуют ответственным сотрудникам, а роли "Сотрудник" и "Подавший заявку" - гораздо менее ответственным сотрудникам, которые могут неделями не отмечать выполнение заданий. Поэтому требуется так составить схему бизнес-процесса, чтобы в таких случаях задание типа "ознакомиться с ..." у этих сотрудников было, но чтобы его невыполнение не останавливало дальнейшее выполнение бизнес-процесса. То есть эта задача и остальные шаги бизнес-процесса должны выполняться в параллельных ветках.
На рисунке 4.2 показан пример неправильной схемы, в котором задача (в меньшем овале) останавливает выполнение блока действий (в большем овале).
На рисунке 4.3 также показан пример неправильной схемы, в котором задача "Ознакомиться с положительным решением" в некоторых случаях останавливает издание приказа.
На рисунке 4.4 показан пример правильной схемы, в котором задачи ознакомления и задачи сотруднику не приводят к остановке дальнейшего выполнения бизнес-процесса.
Замечание 8.
В заданиях настоящего занятия используется страница описания бизнес-процесса. Если эта страница задана в определении бизнес-процесса, то она открывается при клике на строку описания бизнес-процесса в web-интерфейсе системы (см. рисунок 4.5)
Задать форму описания бизнес-процесса можно в среде разработки. Делается это следующим образом:
В свойствах определения бизнес-процесса заполняется поле "Значение" для свойства "Описание" (см. рис. 4.7)
Далее надо кликнуть правой кнопкой мыши на белом фоне на схеме бизнес-процесса. - Откроется контекстное меню, в котором надо кликнуть на команду "Описание" (см. рис. 4.8). После этого откроется форма редактирования страницы описания бизнес-процесса (см. рис. 4.9).
Задания по разработке бизнес-процессов.
Задание по разработке бизнес-процесса "Ежегодный отпуск"
1. Возможное содержание страницы описания бизнес-процесса (не обязательно):
Оплачиваемый отпуск предоставляется ежегодно.
2. Описание последовательностей действий в бизнес-процессе
Если сотрудник собирается пойти в отпуск, то запускает бизнес-процесс на выполнение. В появившейся стартовой форме надо ввести требуемые данные: ввести даты начала и окончания отпуска, причину и комментарий.
После клика на команду "выполнить" будет создан новый экземпляр бизнес-процесса.
Следующее задание «Рассмотреть заявку на отпуск» получит руководитель сотрудника (руководитель определяется отношением "Руководитель"). Руководитель одобряет или не одобряет заявку. Подавший заявку знакомится с решением руководителя. Если решение руководителя было отрицательным, то далее процесс завершается.
Если решение руководителя было положительным, то следующее задание «Проверить соблюдение технологий и законов» получит инспектор кадровой службы (определяется членством в группе "Инспекторы КС"). В содержащейся в задании форме он отмечает, соблюдены ли законы и технологии (то есть, положен ли сотруднику ежегодный отпуск в соответствии с договором, заключенным с предприятием, не отгулял ли уже сотрудник все положенные дни отпуска за текущий год и т.п.).
Если законы или технологии не соблюдены, то бизнес-процесс сообщает руководителю сотрудника и подавшему заявку (то есть - самому сотруднику) о несоблюдении технологий. Далее процесс завершается. Если законы и технологии соблюдены, то сотрудник получает задание "Ознакомиться с подтверждением ежегодного отпуска", инспектору кадровой службы направляется задание "Издать приказ". В форме задания "Издать приказ" инспектор кадровой службы вводит номер приказа (значение типа строка). После выполнения задания инспектором кадровой службы Word-бот получает задание "Сгенерировать приказ на ежегодный отпуск". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом").
Приказ должен содержать:
Далее Word-бот получает задание "Сгенерировать заявление на ежегодный отпуск"
Приказ должен содержать:
После выполнения этих заданий Word-ботом сотрудник должен выполнить задачу «Сдать в КС заявление и подписать приказ». В форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Заявление на ежегодный отпуск". Инспектору кадровой службы направляется задача «Получить заявление и подпись на приказе». В форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Приказ на ежегодный отпуск". После выполнения этого задания бизнес-процесс должен дождаться момента времени за две недели до начала отпуска, после этого задание "выплатить отпускные" получает бухгалтер (определяется членством в группе "Бухгалтеры").
После выполнения всех заданий бизнес-процесс завершается.
Замечание. В бизнес-процессе необходимо проверять, что дата начала отпуска не позже даты окончания.
Задание по разработке бизнес-процесса "Больничный"
1. Возможное содержание страницы описания бизнес-процесса (не обязательно):
Это отсутствие на работе в связи с болезнью, факт которой может быть подтвержден правильно оформленным больничным листом.
2. Описание последовательностей действий в бизнес-процессе
Если сотрудник заболел, то он или какой-то другой сотрудник запускает на выполнение бизнес-процесс "больничный".
В появившейся стартовой форме он вводит данные: выбирает из списка (список соответствует членам группы "Все сотрудники") заболевшего сотрудника, вводит дату начала болезни, причину и комментарий.
После клика на команду "выполнить" создается новый экземпляр бизнес-процесса "больничный".
Следующее задание получает инспектор кадровой службы (определяется членством в группе "Инспекторы КС"). Задание называется "Проверить соблюдение технологий и законов". В содержащейся в задании форме он отмечает, соблюдены ли законы и технологии (то есть, положен ли больничный сотруднику в соответствии с договором, заключенным с предприятием).
Если законы или технологии не соблюдены, то подавшему заявку направляется уведомление об отказе регистрации заявки на больничный и далее бизнес-процесс завершается.
Если законы и технологии соблюдены, то подавший заявку уведомляется о регистрации заявки на больничный, руководитель сотрудника (руководитель определяется отношением "Руководитель") уведомляется о болезни сотрудника, сотруднику направляется задание "Сообщить о выздоровлении и выходе на работу". Бухгалтер (определяется членством в группе "Бухгалтеры") получает задание "отразить факт болезни сотрудника в бухучете".
После выхода сотрудника на работу после болезни инспектору кадровой службы направляется задание "Получить от сотрудника больничный", а сотруднику направляется задание "Отдать в КС больничный". В задании задания "Получить от сотрудника больничный" инспектор кадровой службы вводит дату окончания больничного.
После выполнения задания "Получить от сотрудника больничный" инспектором кадровой службы Word-бот получает задание "Сгенерировать справку о болезни сотрудника". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом").
Справка должна содержать:
После выполнения задания Word-ботом, задание "рассчитать больничный" получает бухгалтер. Форма задания должна содержать сгенерированный Word-ботом файл.
После выполнения всех заданий бизнес-процесс завершается.
Замечание. В бизнес-процессе необходимо проверять, что дата начала больничного не позже даты его окончания.
Задание по разработке бизнес-процесса "Командировка в другой регион"
1. Возможное содержание страницы описания бизнес-процесса (не обязательно):
Служебная командировка - поездка работника на определенный срок для выполнения служебного поручения вне места постоянной работы.
2. Описание последовательностей действий в бизнес-процессе
Бизнес-процесс начинается с того, что пользователь в стартовой форме заполняет данные, относящиеся к командировке:
данные для бухгалтера (стоимость билетов, гостиницы и т.п.). Все данные для бухгалтера вводятся в одно текстовое поле.
После клика на команду "выполнить" создается новый экземпляр бизнес-процесса.
Далее задание «рассмотреть заявку на командировку» направляется непосредственному руководителю отправляемого в командировку сотрудника (руководитель определяется отношением "Руководитель"). Руководитель одобряет или не одобряет командировку. В случае неодобрения заявки Подавший заявку знакомится с отрицательным решением руководителя, после чего бизнес-процесс завершается.
Если командировка одобрена, то Подавший заявку знакомится с положительным решением руководителя, инспектор кадровой службы (определяется членством в группе "Инспекторы КС") получает задание "издать приказ".
В форме задания "Издать приказ" инспектор кадровой службы вводит номер приказа (значение типа строка). После выполнения задания инспектором кадровой службы Word-бот получает задание "Сгенерировать приказ на командировку". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом"). Приказ должен содержать:
Далее Word-бот получает задание "Сгенерировать командировочное удостоверение"
Командировочное удостоверение должно содержать:
На следующей (обороте) странице:
(из двух строк и двух колонок)
После выполнения этих заданий Word-ботом сотрудник получает задание "подписать приказ", инспектор кадровой службы получает задание "получить подпись на приказе" (в форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Приказ на командировку").
После выполнения задания "получить подпись на приказе" инспектором кадровой службы, инспектор кадровой службы выдает сотруднику командировочное удостоверение: Инспектор получает задачу "выдать командировочное удостоверение" (в форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Командировочное удостоверение"), Сотрудник получает задачу "получить командировочное удостоверение" .
После выполнения задания "выдать командировочное удостоверение" инспектором кадровой службы бухгалтер (определяется членством в группе "Бухгалтеры") получает задание "Ознакомиться с данными для бухгалтера", в этом задании бухгалтер знакомится с данными, которые были введены на стартовой форме (это требуется бухгалтеру, чтобы рассчитать сумму денег, которую ему надо будет выдать сотруднику).
Далее бухгалтер получает задачу "выдать деньги на командировку", сотрудник получает задание "получить деньги на командировку". После выполнения задачи бухгалтером бизнес-процесс ждет момента окончания командировки. ("Дата окончания командировки" плюс один день)
После этого сотрудник получает задание - сдать в бухгалтерию документы, подтверждающие командировку, бухгалтеру направляется задание на получение этих документов.
После выполнения всех заданий бизнес-процесс завершается.
Замечание. В бизнес-процессе необходимо проверять, что дата начала командировки не позже даты окончания.
Задание по разработке бизнес-процесса "Местная командировка"
1. Возможное содержание страницы описания бизнес-процесса (не обязательно):
Служебная командировка - поездка работника на определенный срок для выполнения служебного поручения вне места постоянной работы.
2. Описание последовательностей действий в бизнес-процессе
Бизнес-процесс начинается с того, что пользователь в стартовой форме заполняет данные, относящиеся к командировке: выбирает из списка (список соответствует членам группы "Все сотрудники") сотрудника, который отправляется в командировку, вводит дату, время начала, время окончания командировки, организацию, в которую направляется сотрудник, причину, комментарий. После клика на команду "выполнить" создается новый экземпляр бизнес-процесса. Далее задание «рассмотреть заявку на командировку» направляется непосредственному руководителю отправляемого в командировку сотрудника (руководитель определяется отношением "Руководитель"). Руководитель одобряет или не одобряет командировку. Подавший заявку знакомится с положительным или отрицательным решением руководителя.
Если командировка одобрена, то бизнес-процесс проверяет, запущена ли командировка задним числом. Если командировка запущена задним числом, то задание «утвердить заявку на командировку» получает руководитель отдела (определяется отношением "Руководитель отдела"), после чего подавший заявку знакомится с решением руководителя отдела. Если командировка подтверждена всеми необходимыми лицами, то Word-бот получает задание "Сгенерировать служебную записку на командировку". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - " Word-бот " (См. Практическое занятие "Работа с Word-ботом").
Служебная записка должна содержать:
Далее сотрудник получает задание "Подписать и отдать служебную записку руководителю", в форме задания должна быть ссылка для загрузки сформированного ботом документа "Служебная записка".
Руководитель сотрудника получает задание "Получить служебную записку".
После выполнения всех заданий бизнес-процесс завершается.
Замечание. В бизнес-процессе необходимо проверять, что время начала командировки не позже времени окончания.
Задание по разработке бизнес-процесса "Отгул"
1. Возможное содержание страницы описания бизнес-процесса (не обязательно):
Руководитель может предоставить сотруднику отгул в качестве поощрения за хорошую работу. Отгул дается не более чем на 4 часа рабочего времени.
2. Описание последовательностей действий в бизнес-процессе
Бизнес-процесс начинается с того, что сотрудник, желающий получить отгул, в стартовой форме заполняет данные: дату и время начала отгула (не может быть более чем на 30 дней в прошлом), количество часов отсутствия (целое положительное число, не может быть больше четырех). После клика на команду "выполнить" создается новый экземпляр бизнес-процесса.
Далее задание «рассмотреть заявку на отгул» направляется непосредственному руководителю сотрудника (руководитель определяется отношением "Руководитель"). Руководитель одобряет или не одобряет отгул. Подавший заявку знакомится с решением руководителя.
Если отгул одобрен, то бизнес-процесс проверяет, запущен ли отгул задним числом. Если отгул запущен задним числом, то задание «утвердить заявку на отгул» получает руководитель отдела (определяется отношением "Руководитель отдела"), после чего подавший заявку знакомится с решением руководителя отдела.
Если отгул подтвержден всеми необходимыми лицами, то сотрудник получает сообщение об этом, Word-бот получает задание "Сгенерировать служебную записку на отгул". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - " Word-бот " (См. Практическое занятие "Работа с Word-ботом"). Служебная записка должна содержать:
Далее сотрудник получает задание "Подписать и отдать служебную записку руководителю", в форме задания должна быть ссылка для загрузки сформированного ботом документа "Служебная записка".
Руководитель сотрудника получает задание "Получить служебную записку".
Если отгул не подтвержден, то соответствующие лица получают об этом сообщения.
После выполнения всех заданий бизнес-процесс завершается.
Задание по разработке бизнес-процесса "Отпуск по уходу за ребенком"
1. Возможное содержание страницы описания бизнес-процесса (не обязательно):
По заявлению женщины ей предоставляется отпуск по уходу за ребенком до достижения им возраста полутора/трех лет. Порядок и сроки выплаты пособия по государственному социальному страхованию в период указанного отпуска определяются федеральными законами.
2. Описание последовательностей действий в бизнес-процессе
Бизнес-процесс начинается с того, что пользователь в стартовой форме заполняет данные, относящиеся к отпуску по уходу за ребенком: выбирает из списка (список соответствует членам группы "Все сотрудники") сотрудника (сотрудницу), вводит даты начала и окончания отпуска, причину и комментарий. После клика на команду "выполнить" будет создан новый экземпляр бизнес-процесса.
Следующее задание «Проверить соблюдение технологий и законов» получит инспектор кадровой службы (определяется членством в группе "Инспекторы КС"). В содержащейся в задании форме он отмечает, соблюдены ли законы и технологии. Если законы или технологии не соблюдены, то подавшему заявку направляется уведомление об отказе регистрации заявки и далее бизнес-процесс завершается.
Если законы и технологии соблюдены, то руководитель (руководитель определяется отношением "Руководитель") уведомляется об уходе сотрудника в отпуск, одновременно с этим инспектор кадровой службы получает задачу «Издать приказ».
В форме задания "Издать приказ" инспектор кадровой службы вводит номер приказа (значение типа строка). После выполнения задания инспектором кадровой службы Word-бот получает задание "Сгенерировать приказ на отпуск по уходу за ребенком". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом"). Приказ должен содержать:
Далее Word-бот получает задание "Сгенерировать заявление на отпуск по уходу за ребенком"
Приказ должен содержать:
После выполнения этих заданий Word-ботом сотрудник должен выполнить задачу «Отдать в КС заявление и подписать приказ». В форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Заявление на отпуск по уходу за ребенком". Инспектору кадровой службы направляется задача «Получить заявление и подпись на приказе». В форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Приказ на отпуск по уходу за ребенком".
После выполнения этого задания инспектором кадровой службы бухгалтер (определяется членством в группе "Бухгалтеры") получает задание "отразить в бухучете отпуск по уходу за ребенком". Далее (после выполнения задачи бухгалтером) в качестве подпроцесса запускается бизнес-процесс "Оповещение о завершении отпуска". После выполнения подпроцесса и выполнения всех заданий бизнес-процесс завершается.
В бизнес-процесс "Оповещение о завершении отпуска" передаются данные отпуска по уходу за ребенком. После старта этот бизнес-процес ждет момента времени за две недели перед окончанием отпуска и далее передает управление в узел, в котором руководитель сотрудника получает задание ознакомиться с тем, что отпуск по уходу за ребенком подходит к концу. В этой форме также должны содержаться все данные, которые были введены на стартовой форме бизнес-процесса "Отпуск по уходу за ребенком" (и переданы в качестве параметров в подпроцесс).
Замечание. В бизнес-процессе необходимо проверять, что дата начала отпуска не позже даты его окончания.
Задание по разработке бизнес-процесса "Сдвиг графика работы"
1. Возможное содержание страницы описания бизнес-процесса (не обязательно):
График работы можно сдвигать с завтрашней даты и далее. График заполняется на неделю, но использоваться будут только данные за те дни недели, которые попадают в интервал сдвига графика.
2. Описание последовательностей действий в бизнес-процессе
Бизнес-процесс начинается с того, что сотрудник, желающий изменить график работы, в стартовой форме заполняет данные: дату начала действия графика (не может быть в прошлом, или текущей датой, чтобы таким образом нельзя было ликвидировать произошедшие опоздания), дату окончания действия графика, причину, комментарий, таблицу приходов, уходов в офис и обеденных перерывов с полями:
После клика на команду "выполнить" создается новый экземпляр бизнес-процесса. Далее задание «рассмотреть заявку на сдвиг графика» направляется руководителю сотрудника (руководитель определяется отношением "Руководитель").
Руководитель одобряет или не одобряет заявку.
Если решение руководителя отрицательно, то Сотрудник знакомится с отрицательным решением руководителя, далее бизнес-процесс завершается.
Если решение руководителя положительно, то Сотрудник знакомится с положительным решением руководителя, параллельно с этим заданием задание на утверждение заявки направляется руководителю руководителя сотрудника. Руководитель руководителя также может подтвердить или не подтвердить заявку. Сотрудник и руководитель сотрудника знакомятся с положительным (или отрицательным) решением руководителя руководителя.
Если решение руководителя руководителя положительно, то Word-бот получает задание "Сгенерировать служебную записку на сдвиг графика". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - " Word-бот " (См. Практическое занятие "Работа с Word-ботом"). Служебная записка должна содержать:
Далее сотрудник получает задание "Подписать и отдать служебную записку руководителю", в форме задания должна быть ссылка для загрузки сформированного ботом документа "Служебная записка". Руководитель сотрудника получает задание "Получить служебную записку". После выполнения всех заданий бизнес-процесс завершается.
Замечание 1. В бизнес-процессе необходимо проверять, что дата начала действия графика не позже даты окончания действия графика, дата начала действия графика не может быть раньше завтрашней даты.
Замечание 2. В каждой строке таблицы время прихода должно быть меньше или равно времени ухода. Случай, когда время прихода и время ухода равны 00:00 соответствует запланированному отсутствию сотрудника в этот день в офисе компании.
Задание по разработке бизнес-процесса "Отпуск без сохранения зарплаты"
1. Возможное содержание страницы описания бизнес-процесса (не обязательно):
По семейным обстоятельствам и другим уважительным причинам работнику по его письменному заявлению может быть предоставлен отпуск без сохранения заработной платы, продолжительность которого определяется по соглашению между работником и работодателем.
2. Описание последовательностей действий в бизнес-процессе
В случае ухода сотрудника в отпуск без сохранения зарплаты он запускает бизнес-процесс на выполнение.
В появившейся стартовой форме надо ввести требуемые данные: ввести даты начала и окончания отпуска, причину и комментарий.
После клика на команду "выполнить" будет создан новый экземпляр бизнес-процесса.
Следующее задание «Рассмотреть заявку на отпуск» получит руководитель сотрудника (руководитель определяется отношением "Руководитель"). Руководитель одобряет или не одобряет заявку. Если решение руководителя было отрицательным, то Подавший заявку знакомится с отрицательным решением руководителя, далее процесс завершается.
Если решение руководителя было положительным, то Подавший заявку знакомится с положительным решением руководителя, задание «Проверить соблюдение технологий и законов» получает инспектор кадровой службы (определяется членством в группе "Инспекторы КС"). В содержащейся в задании форме он отмечает, соблюдены ли законы и технологии
Если законы или технологии не соблюдены, то бизнес-процесс сообщает руководителю и подавшему заявку о несоблюдении технологий. Далее процесс завершается.
Если законы и технологии соблюдены, то бизнес-процесс отправляется на окончательное подтверждение и одобрение заявки директором (определяется членством в группе "Директор"). Если решение директора отрицательное, то сотрудник, руководитель и инспектор кадровой службы получают сообщения об этом, далее процесс завершается.
Если решение директора положительное – инспектору кадровой службы направляется задание "Издать приказ". В форме задания "Издать приказ" инспектор кадровой службы вводит номер приказа (значение типа строка). После выполнения задания инспектором кадровой службы Word-бот получает задание "Сгенерировать приказ на отпуск без сохранения зарплаты". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом"). Приказ должен содержать:
Далее Word-бот получает задание "Сгенерировать заявление на отпуск без сохранения зарплаты"
Приказ должен содержать:
После выполнения этих заданий Word-ботом сотрудник должен выполнить задачу «Сдать в КС заявление и подписать приказ». В форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Заявление на отпуск без сохранения зарплаты". Инспектору кадровой службы одновременно направляется задача «Получить заявление и подпись на приказе». В форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Приказ на отпуск без сохранения зарплаты".
После выполнения всех заданий бизнес-процесс завершается.
Замечание. В бизнес-процессе необходимо проверять, что дата начала отпуска не позже даты окончания.
Задание по разработке бизнес-процесса "Сверхурочные"
1. Предлагаемое содержание страницы описания бизнес-процесса (не обязательно):
Сверхурочные работы проводятся только тогда, когда проведение данных работ в рабочее время нарушит нормальную работу офиса компании
2. Описание последовательностей действий в бизнес-процессе
Бизнес-процесс начинается с того, что пользователь в стартовой форме заполняет данные, относящиеся к сверхурочным работам: выбирает из списка (список соответствует членам группы "Все сотрудники") сотрудника, которому предлагается выйти на сверхурочную работу, вводит дату, время начала, время окончания сверхурочных, причину, комментарий.
После клика на команду "выполнить" создается новый экземпляр бизнес-процесса. Далее задание "рассмотреть предложение о сверхурочных работах" направляется сотруднику.
Сотрудник соглашается, или не соглашается на сверхурочные работы. Подавший заявку знакомится с решением сотрудника. Если решение сотрудника было положительным, то задание «рассмотреть заявку на сверхурочные» направляется руководителю сотрудника (руководитель определяется отношением "Руководитель").
Руководитель одобряет или не одобряет сверхурочные. Подавший заявку и сотрудник знакомятся с решением руководителя. Если руководитель одобрил заявку, то далее задание «Утвердить заявку» направляется в Директорат (определяется членством в группе "Директор и заместители").
Директорат утверждает или не утверждает заявку. Если Директорат не утвердил заявку, то происходит оповещение соответствующих лиц об этом и бизнес-процесс завершается. Если Директорат утвердил заявку, то бизнес-процесс ждет даты сверхурочных, после этого руководитель сотрудника получает задачу "подтвердить выполнение сверхурочных" (руководитель выполняет это задание для того, чтобы подтвердить/не подтвердить, что сверхурочные работы действительно были выполнены). Если руководитель не подтвердил выполнение сверхурочных работ, то все ранее участвующие в бизнес-процессе лица получают уведомления об этом и после выполнения задач уведомления бизнес-процесс завершается.
Если руководитель сотрудника подтвердил выполнение сверхурочных, то инспектор кадровой службы (определяется членством в группе "Инспекторы КС") получает задание "издать приказ".
В форме задания "Издать приказ" инспектор кадровой службы вводит номер приказа (значение типа строка). После выполнения задания инспектором кадровой службы Word-бот получает задание "Сгенерировать приказ на сверхурочные работы". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом"). Приказ должен содержать:
После выполнения этого задания Word-ботом сотрудник получает задание "подписать приказ на сверхурочные работы", инспектор кадровой службы получает задание "получить подпись на приказе" (в форме этого задания должна быть ссылка для загрузки сформированного ботом документа "Приказ на сверхурочные работы").
После выполнения задания "получить подпись сотрудника на приказе" инспектором КС бухгалтер (определяется членством в группе "Бухгалтеры") получает задание "Начислить деньги за сверхурочные".
Замечание. На стартовой форме бизнес-процесса надо проверять, что время начала сверхурочных меньше времени окончания сверхурочных.
Задание по разработке бизнес-процесса "Отсутствие по неизвестной причине"
1. Возможное содержание страницы описания бизнес-процесса (не обязательно):
Это отсутствие на работе, причина которого неизвестна.
2. Описание последовательностей действий в бизнес-процессе
В случае незапланированного отсутствия сотрудника его руководитель запускает бизнес-процесс на выполнение.
В появившейся стартовой форме он вводит данные: выбирает из списка (список соответствует членам группы "Все сотрудники") сотрудника, вводит дату начала отсутствия и комментарий.
После клика на команду "выполнить" создается новый экземпляр бизнес-процесса.
Далее запустившему бизнес-процесс направляется задание "сообщить об окончании отсутствия".
После появления сотрудника на работе запустившей процесс должен выполнить это задание ("сообщить об окончании отсутствия"). В форме задания надо ввести дату появления сотрудника на работе.
Далее процесс разделяется на две параллельные ветки.
В первой ветке сотруднику направляется задание "Написать объяснительную записку", в форме которого содержится текстовая область для ввода текста объяснительной записки. Это поле должно быть обязательным для ввода.
Далее Word-бот получает задание "Сгенерировать объяснительную записку по незапланированному отсутствию". Роль Word-бот инициализируется оргфункцией "исполнитель по имени", имя исполнителя в данном случае совпадает с именем роли - "Word-бот" (См. Практическое занятие "Работа с Word-ботом"). Объяснительная записка должна содержать:
Далее сотрудник получает задание "Подписать и отдать объяснительную записку руководителю", в форме задания должна быть ссылка для загрузки сформированного ботом документа "Объяснительная записка".
Руководитель сотрудника получает задание "Получить объяснительную записку".
Во второй ветке запустившему процесс направляется задание "выбрать тип отсутствия". Это задание служит для облегчения запуска процесса, "покрывающего" незапланированное отсутствие (больничного, отпуска и т.д.), если интервал незапланированного отсутствия можно покрыть одним видом отсутствия. В форме содержится список выбора:
После выбора "покрывающего" отсутствия (кроме случая "Другое отсутствие") точка управления должна перейти в соответствующий покрывающему отсутствию подпроцесс, в этот подпроцесс должны быть переданы нужные для его дальнейшего исполнения данные из родительского процесса.
Далее запустившему бизнес-процесс направляется задание «Ознакомиться с сообщением о завершении процесса», после чего бизнес-процесс завершается.
Замечание 1. В бизнес-процессе необходимо проверять, что дата начала отсутствия по неизвестной причине не позже даты его окончания.
Замечание 2. В качестве подпроцессов, запускаемых для покрытия незапланированного отсутствия, предполагается использовать бизнес-процессы, разрабатываемые другими студентами группы в рамках настоящего практикума. Начать надо с единственного варианта выбора "Другое отсутствие", к которому постепенно добавлять варианты вызова покрывающих подпроцессов.
Требования к представлению результатов занятия
В результате выполнения лабораторной работы должны быть представлены преподавателю: MS Word бот, полученный командой экспорта, шаблоны документов для MS Word бота, отчет и par-файл разработанного бизнес-процесса.
В отчете должны содержаться следующие выходные данные:
1) Скриншоты основных действий, совершенных на занятии, с пояснениями
2) Скриншоты, содержащие маршруты точек управления для экземпляров бизнес-процессов, доведенных до завершения.
3) Скриншоты, содержащие созданные на занятии роли, переменные, группы пользователей, отношения, боты, настройки ботов, основные формы.
4) Описание возникших при выполнении задания проблем и найденных путей их решения (не обязательно, только если возникли проблемы при выполнении задания)