TrainingMaterials Documents

Материал из RunaWFE
(перенаправлено с «TrainingMaterials 4 4 1 Documents»)
Перейти к навигации Перейти к поиску

RunaWFE. Практикум. Работа с MS Word и MS Excel документами

Версия 4.5.0

© 2015-2023, ООО "Процессные технологии"

Введение

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

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

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

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

Разделы практикума "Вводное занятие" и "Перспективы исполнимых бизнес-процессов" можно найти на сайте проекта RunaWFE Free в разделе Учебные материалы по процессному управлению.


В данном разделе практикума рассмотрена и объяснена работа с MS Word и MS Excel документами, приведено описание самостоятельного занятия.


Замечание: В RunaWFE Free 4.4.1 для упрощения работы, по умолчанию проверка прав доступа отключена. Это означает что при доступе к объектам системы (исполнители, определения БП, экземпляры БП, отчеты, отношения, бот-станции, источники данных, действия с системой) права пользователя не проверяются. Но для изучения системы прав необходимо включить проверки. Для этого вам потребуется в Симуляторе перевести в значение "true" параметры, расположенные на странице "Настройки" -> "Настройки прав доступа".

R37 ru 2 2.png
Рисунок 1.01. Включение проверки прав доступа к объектам системы RunaWFE

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

Цель занятия

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

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

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

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

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


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


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


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

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

    Далее для узлов бизнес-процесса выберите роли в соответствии с Рис.2.01.

    Замечание. Роль "Руководитель" инициализируется в стартовом узле бизнес-процесса сотрудником, запустившим этот экземпляр бизнес-процесса. Но для получения ожидаемого в примере результата предполагаем, что процесс будет запускать Паучков.

  3. Запустите Симулятор. Войдите в web-интерфейс системы RunaWFE Free под пользователем Administrator.
  4. Создайте исполнителей:
    • Жуков Иван Ильич
    • Бражникова Ольга Иосифовна
    • Личинкин Василий Федорович
    • Гусеницын Михаил Васильевич
    • Сверчков Иван Иванович
    • Паучков Петр Петрович
    • Стрекозин Александр Николаевич.
  5. Создайте отношение "Руководитель" (См. пример создания отношения в пунктах 10-11 раздела "Практическое занятие "Изучение перспективы ресурсов", Рис.3.05-3.06).
  6. Откройте отношение "Руководитель" и создайте пару "Паучков " - "Сверчков" (см. Рис.2.03).
    R189 st.png
    Рисунок 2.03. Отношение Руководитель


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

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


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


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


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


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

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

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

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

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


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


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


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

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


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


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

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


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

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


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


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


    R194c ru.png
    Рисунок 2.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
    Рисунок 2.15. Получение ФИО сотрудника в дательном падеже


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

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

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


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


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


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


    Вызовите конфигуратор данного обработчика.

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


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


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


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


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

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

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


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

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


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

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

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

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

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

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


  24. Создайте форму для узла "Ознакомиться с сообщением о согласии"
  25. Т.к. данная форма отличается от формы "Ознакомиться с сообщением об отказе" лишь заголовком, то можно воспользоваться функцией создания формы на основе существующей (Подробнее см. Практическое занятие "Изучение перспективы данных", Порядок выполнения работы, Пункт 6, Рис.4.30-4.31).
    R202e ru.png
    Рисунок 2.23. Форма "Ознакомиться с сообщением о согласии"


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


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


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


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


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


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


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


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


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


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


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


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


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

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

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

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

  34. Разработайте Word бота и задачу бота "Сгенерировать приказ" непосредственно в среде разработки.
  35. Откройте вкладку "Боты" (см. Рис.2.32). Замечание. ОБЯЗАТЕЛЬНО (!) удалите все ботстанции из среды разработки, иначе создание ботов и задач будет приводить к ошибкам и некорректной работе. Для этого выделите ботстанцию правой клавишей мыши и выберите пункт "Удалить".
    R211 ru.png
    Рисунок 2.32. Вкладка "Боты"


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


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


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


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


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

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


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


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


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


    Теперь создайте задачу бота "Сгенерировать приказ". Для этого щёлкните правой клавишей мыши по "Word бот" и воспользуйтесь пунктом "Новая задача бота" (см. Рис.2.37).


    R216e ru.png
    Рисунок 2.37. Меню для создания задачи бота


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


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


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


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


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


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


    Выберите "Файл в системе" и нажмите "Создать" для создания шаблона docx (см. Рис.2.41).


    Рисунок 2.41. "Создать" шаблон docx
    Рисунок 2.41. "Создать" шаблон docx


    Будет запущен редактор для Word файлов, создайте шаблон приказа следующего вида:


    R441 41 2.png
    Рисунок 2.42. Шаблон приказа


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


    Рисунок 2.43. Входные параметры задачи "Сгенерировать приказ"
    Рисунок 2.43. Входные параметры задачи "Сгенерировать приказ"


    В качестве выходного параметра используйте "Файловый параметр", в качестве имени выходного файла используйте "Приказ.docx".

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


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

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


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


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

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


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


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


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


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


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


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


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


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


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


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


  38. Экспортируйте разработанный процесс и Word бот с задачей на сервер WFE.
  39. Щёлкните разработанный бизнес-процесс, в меню выберите команду "Файл / Экспорт процесса" (Подробнее см. Практическое занятие "Изучение перспективы потока управления", Порядок выполнения работы, Пункты 11-14). Для экспорта бота с задачей, перейдите на вкладку "Боты", щёлкните правой клавишей мыши Word бот и выберите "Экспорт бота" (см. Рис.2.51). В появившемся окне выберите "Экспорт на WFE сервер", далее нажмите Готово (см. Рис.2.52).
    R232 ru.png
    Рисунок 2.51. Экспорт бота с задачей


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


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


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


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


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

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


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


    Добавьте в группу "Директор" исполнителей:

     • Стрекозин Александр Николаевич.  
    

    Добавьте в группу "Отдел кадров" исполнителей:

     • Личинкин Василий Федорович 
     • Гусеницын Михаил Васильевич. 
    

    Добавьте в группу "Бухгалтеры" исполнителей:

     • Жуков Иван Ильич
     • Бражникова. 
    

    Добавьте в группу "Сотрудники" исполнителей:

     • Жуков Иван Ильич 
     • Бражникова Ольга Иосифовна 
     • Личинкин Василий Федорович 
     • Гусеницын Михаил Васильевич 
     • Сверчков Иван Иванович
     • Паучков Петр Петрович 
     • Стрекозин Александр Николаевич. 
    


    Разрешите для группы "Сотрудники" вход в систему (см. "Практикум. Вводное занятие", [выполнения работы] пункты 7-9, Рис.5.7-5.9 ).

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


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


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


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


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

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

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


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


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

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


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


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

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


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


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

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


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


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

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


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


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


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

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

Разработайте бизнес-процесс "Пример 5-2", схема которого изображена на Рис.2.64.

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

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


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

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


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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Цель занятия

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

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

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

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

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

  1. Запустите среду разработки.
  2. Создайте новый проект - "Занятие 6".
  3. Создайте новый бизнес-процесс "Пример 6-1".
  4. (Подробнее см. "Практикум. Вводное занятие", Порядок выполнения работы, Пункт 16, Рис.5.15).
  5. Добавьте элементы на схему бизнес-процесса в соответствии с Рис.3.01.
  6. Lab4 r9 1e.png
    Рисунок 3.01. Схема бизнес-процесса "Пример 6-1"

    Используйте элементы Начало, Действие, Задача сценария, Окончание.

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

    (Подробнее см. Практическое занятие "Работа с Word-ботом", Порядок выполнения работы, Пункт 1, Замечание, Рис.2.02).

    Элемент "Начало" назовите "Ввести данные для сохранения в Excel документ", задачу сценария - "Определение даты создания документа", остальные элементы в соответствии с Рис.3.01.

  7. Создайте роли.
  8. В данном процессе используются следующие Роли:
    • "Преподаватель" - будет инициализирована пользователем, запустившим процесс
    • "Excel бот" - будет инициализирована ботом для работы с MS Excel (настройка инициализации будет рассмотрена позже).
    Выберите для узлов роли в соответствии с Рис.3.01
  9. Создайте переменные для бизнес-процесса "Пример 6-1" согласно Рис.3.02.
  10. Lab4 r9 2.png
    Рисунок 3.02. Переменные бизнес-процесса "Пример 6-1"

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

    Lab4 r9 3.png
    Рисунок 3.03. Выбор формата переменной "перечень дисциплин" бизнес-процесса "Пример 6-1"
  11. Создайте формы.
  12. Замечание. По умолчанию в качестве редактора форм используется CKEditor4, но в случае если у вас в системе установлен браузер Microsoft Internet Explorer устаревшей версии - 6 (IE6) или 7 (IE7), то с формами могут возникнуть проблемы. Поэтому следует переключить редактор на FCKEditor2. (как переключить редактор см. в Практическое занятие "Изучение перспективы данных", Порядок выполнения работы, Пункт 6, Рис.4.09-4.10). Создайте стартовую форму "Ввод данных" вида представленного на Рис.3.04. (Подробнее см. Практическое занятие "Изучение перспективы данных", Порядок выполнения работы, Пункт 6, Рис.4.11-4.12).
    Lab4 r9 4e.png
    Рисунок 3.04. Стартовая форма "Ввести данные для сохранения в Excel документ" бизнес-процесса "Пример 6-1"

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

    Аналогично добавьте компонент для ввода переменной "номер курса".

    Используйте компонент "Редактировать связанные списки" для переменной "перечень дисциплин" (см. Рис.3.05).


    Lab4 r9 5e.png
    Рисунок 3.05. "Редактировать связанные списки" для переменной "перечень дисциплин"

    Добавьте валидаторы для переменных:

    • "специальность" - обязательное поле
    • "перечень дисциплин" - обязательное поле
    • "номер курса" - обязательное поле, а также диапазон числа (от 1 до 6).

    Для этого щёлкните стартовый узел правой клавишей мыши и выберите пункт "Форма > Проверка переменных формы", в появившейся форме выделяйте переменные и устанавливайте необходимые валидаторы. (см. Практическое занятие "Изучение перспективы операций", Пункт 15, Рис.5.27-5.28).

    Создайте форму для задания "Просмотреть данные перед сохранением в Excel документ" вида представленного на Рис.3.6.


    Lab4 r9 6e.png
    Рисунок 3.06. Форма "Просмотреть данные перед сохранением в Excel документ"

    На этой форме отображаются данные введенные в стартовой узле. Для переменных "Специальность" и "Номер курса" используется компонент "Отобразить переменную" как строку (см. Рис.3.07).


    Lab4 r9 7ae.png
    Рисунок 3.07. Отобразить как строку переменную "Специальность"

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

    Lab4 r9 7be.png
    Рисунок 3.08. Отобразить связанные списки


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


    Lab4 r9 8e.png
    Рисунок 3.09. Форма "Получить созданный Excel документ"
  13. Создайте обработчик.
  14. Выберите класс обработчика "Выполнить формулу" в задаче сценария "дата создания документа" (см. Практическое занятие "Изучение перспективы данных", Порядок выполнения работы, Пункт 8, Рис.4.39-4.40). В качестве конфигурации используйте: 'дата создания документа'=current_date(); Таким образом с помощью функции current_date будет определена текущая дата и сохранена в переменную "дата создания документа".
  15. Создайте Excel бот с задачей "Записать данные в файл".
  16. Замечание. Перед выполнением следующих пунктов ОБЯЗАТЕЛЬНО (!) удалите все ботстанции из среды разработки, иначе создание ботов и задач будет приводить к ошибкам и некорректной работе. Для этого выделите ботстанцию правой клавишей мыши и выберите пункт "Удалить". Запустите Симулятор. Вернитесь в среду разработки и перейдите на вкладку "Боты" и сделайте импорт бот станции с сервера (Подробнее см. Практическое занятие "Работа с Word-ботом", Порядок выполнения работы, Пункт 18, Рис.2.32-2.34). Создайте нового бота с именем "Excel бот" (Подробнее см. Практическое занятие "Работа с Word-ботом", Порядок выполнения работы, Пункт 18, Рис.2.35-2.36). Создайте задачу с формальными параметрами "Записать данные в файл" (Подробнее см. Практическое занятие "Работа с Word-ботом", Порядок выполнения работы, Пункт 18, Рис.2.37-2.38).
    Lab4 r9 9.png
    Рисунок 3.10. Excel бот с задачей "Записать данные в файл"

    Нажмите "Выбрать" и в появившемся окне выберите из списка обработчик "Excel: Сохранить данные в файл" (ExcelSaveHandler) (см. Рис.3.11).


    Lab4 r9 10.png
    Рисунок 3.11. Выбор обработчика "Excel: Сохранить данные в файл"

    Создайте входные параметры:

    • "название" - тип Строка,Текст
    • "номер" - тип Целое число
    • "дата" - тип Дата,Дата со временем,Время
    • "Список" - тип Список.

    Создайте Выходной параметр:

    • "Выходной файл" - тип Файл.


    Lab4 r9e 11.png
    Рисунок 3.12. Формальные параметры задачи "Записать данные в файл"

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

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


    Lab4 r9 12.png
    Рисунок 3.13. Вызов конфигуратора

    Используйте конфигурацию приведенную на Рис.3.14.


    Lab4 r9 13.png
    Рисунок 3.14. Конфигуратор обработчика "Excel: Сохранить данные в файл"

    Здесь:

    • входной файл - задан с помощью пути C:\xls_tmp.xlsx, это файл шаблона на основе которого будет создан Excel файл с именем file.xlsx
    • выходной файл - задан с помощью параметра "выходной файл", имя - file.xlsx, это файл Excel который будет создан при выполнении процесса на основе шаблона и в который будут записаны данные взятые из входных параметров
    • отдельная ячейка (страница 1, столбец 2, строка 1) - по данному адресу в таблицe Excel будет записано значение из параметра "название"
    • отдельная ячейка (страница 1, столбец 2, строка 2) - по данному адресу в таблицe Excel будет записано значение из параметра "номер"
    • отдельная ячейка (страница 1, столбец 2, строка 3) - по данному адресу в таблицe Excel будет записано значение из параметра "дата"
    • массив по вертикали (страница 1, столбец 1, строка 6) - начиная с данного адреса в таблицe Excel будут записаны значения из параметра "список", при чем будут располагаться вертикально.

    Нажмите ОК, сохраните и закройте задачу.

  17. Создайте файл шаблона.
  18. Далее необходимо создать файл шаблона C:\xls_tmp.xlsx, следующего вида:
    Lab4 r9 14.png
    Рисунок 3.15. Входной файл Excel


  19. Добавьте инициализатор для роли Excel бот.
  20. Вернитесь в бизнес-процесс "Пример 6-1", перейдите на вкладку роли, выделите роль "Excel бот" и нажмите "Изменить" В появившейся форме перейдите вкладку Бот, где из выпадающего списка выберите "Excel бот" (см. Рис.3.16).
    Lab4 r9 15.png
    Рисунок 3.16. Инициализация роли бота

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

  21. Выполните привязку бота к задаче.
  22. Перейдите на граф процесса, щелкните правой клавишей мыши на узле "Сохранить данные в Excel файл", выберите пункт "Задача бота > привязать" (см. Рис.3.17).
    Lab4 r9 16e1.png
    Рисунок 3.17. Вызов привязки задачи

    Появится форма со списком задач с формальными параметрами бота "Excel бот", выделите задачу "Записать данные в файл" и нажмите ОК (см. Рис.3.18).


    Lab4 r9 17.png
    Рисунок 3.18. Привязка задачи

    Будет вызвана форма конфигурации задачи. Установите соответствие между параметрами задачи и переменными процесса согласно Рис.3.19.


    Lab4 r9 18.png
    Рисунок 3.19. Конфигурация задачи Excel "Сохранить данные в файл"

    Сохраните процесс.

  23. Экспортируйте процесс на сервер.
  24. (Подробнее см. "Практикум. Перспективы исполнимых бизнес-процессов", Практическое занятие "Изучение перспективы потока управления", Порядок выполнения работы, Пункт 11-14).
  25. Экспортируйте Excel бот с задачей на сервер.
  26. (Подробнее см. Практическое занятие "Работа с Word-ботом", Порядок выполнения работы, Пункт 20, Рис.2.51-2.52).
  27. Войдите в систему под пользователем Administrator, пароль –wf.
  28. Дайте полномочия группе "Преподаватели" на запуск, чтение и чтение экземпляра процесса "Пример 6-1".
  29. Запустите периодическую активацию ботов.
  30. (Подробнее см. Практическое занятие "Изучение перспективы операций", Порядок выполнения работы, Пункт 12, Рис.5.11).
  31. Войдите в систему под пользователем, входящим в группу "Преподаватели", например "Стрекозин", пароль - 123.
  32. Запустите экземпляр бизнес-процесса "Пример 6-1" и доведите его до завершения.
  33. Введите данные на стартовой форме, например:
    Рисунок 3.20. Ввод данных на стартовой форме
    Рисунок 3.20. Ввод данных на стартовой форме


    Нажмите Запустить, выполните полученное задание "Просмотреть данные перед сохранением в Excel документ".


    Lab4 r9 20e.png
    Рисунок 3.21. Задание "Перед записью в файл"

    Excel бот выполнит задачу "Записать данные в файл".


    Lab4 r9 21e.png
    Рисунок 3.22. Граф выполнения процесса "Пример 6-1"

    Будет получено задание, со ссылкой на созданный Excel файл, нажмите на ссылку.


    Lab4 r9 22e.png
    Рисунок 3.23. Ссылка на созданный Excel файл

    Будет загружен file.xlsx, сохраните его на "C:\". Откройте файл.


    Lab4 r9 23e.png
    Рисунок 3.24. Созданный с помощью Excel бота file.xlsx

    Как видно из Рис.3.24, полученный файл соответствует шаблону заданной конфигурации задачи бота, а также содержит введенные пользователем данные.

  34. Завершите процесс.
  35. Запустите среду разработки.
  36. Создайте новый бизнес-процесс "Пример 6-2".
  37. Добавьте элементы на схему бизнес-процесса в соответствии с Рис.3.25.
  38. Lab4 r9 24e.png
    Рисунок 3.25. Схема бизнес-процесса "Пример 6-2"

    Здесь используются те же элементы что и в процессе "Пример 6-1". Задаче сценария дайте название "Прочесть данные из файла", используйте опцию "компактный вид".

  39. Создайте роль Студент.
  40. Выберите данную роль для стартового узла и действий.
  41. Создайте переменные.
  42. В данном процессе используются те же переменные что и в "Пример 6-1", за исключением переменной "полученный excel файл". Откройте процесс "Пример 6-1", перейдите на вкладку переменные, выделите переменные (за исключением полученный excel файл") и нажмите кнопку "Копировать" (см. Рис.3.26).
    Lab4 r9 25ae1.png
    Рисунок 3.26. Копирование переменных

    Затем откройте процесс "Пример 6-2", перейдите на вкладку "Переменные" и нажмите кнопку "Вставить", переменные добавятся в список (см. Рис.3.27).


    Lab4 r9 25be1.png
    Рисунок 3.27. Вставка переменных
  43. Создайте формы.
  44. Создайте форму "Выполнить задание перед чтением из Excel документа" вида представленного на Рис.3.28.
    Lab4 r9 26e.png
    Рисунок 3.28. Форма "Выполнить задание перед чтением из Excel документа"

    Создайте форму "Просмотреть данные считанные из Excel документа" вида представленного на Рис.3.29.


    Lab4 r9 27e.png
    Рисунок 3.29. Форма "Просмотреть данные считанные из Excel документа"

    Используйте компонент "Отобразить переменную" для переменных: "специальность", "номер курса", "дата создания документа".

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

  45. Создайте обработчик.
  46. Выберите класс обработчика "Excel: Прочесть данные из файла" в задаче сценария "Прочесть данные из файла".
    Lab4 r9 28e1.png
    Рисунок 3.30. Выбор класса обработчика

    Запустите конфигуратор обработчика, для этого щёлкните по пункту "Конфигурация" в свойствах задачи сценария "Прочесть данные из файла".

    Используйте конфигурацию, представленную на Рис.3.31.


    Lab4 r9 29.png
    Рисунок 3.31. Конфигурация "Чтение из файла Excel"

    Т.е. предполагается чтение из файла C:\file.xlsx, который был создан при выполнении бизнес-процесса "Пример 6-1" использующего задачу Excel бота - "Записать данные в файл".

    Считанные по соответствующим адресам значения будут сохранены непосредственно в переменные бизнес-процесса "Пример 6-2".

    Замечание. Во время выполнения экземпляра бизнес-процесса потребуется обязательное наличие файла для чтения/записи данных в указанной в конфигурации папке - C:\file.xlsx.

  47. Сохраните бизнес-процесс.
  48. Экспортируйте бизнес-процесс на сервер.
  49. Войдите в систему под пользователем Administrator, пароль –wf.
  50. Дайте права "Чтение", "Запуск", "Чтение экземпляра" на процесс "Пример 6-2" для группы "Группа МИБ-1".
  51. Войдите в систему под пользователем входящим в группу "Группа МИБ-1", например Гусеницын.
  52. Запустите экземпляр бизнес-процесса "Пример 6-2" и доведите его до завершения.
  53. В задании "Просмотреть данные считанные из Excel документа" будут выведены считанные из файла C:\file.xlsx в переменные процесса данные (см. Рис.3.32).
    Lab4 r9 30e.png
    Рисунок 3.32. Задание "Просмотреть данные считанные из Excel документа"

    Считанные значения соответствуют введенным данным во время выполнения процесса "Пример 6-1".

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

    Создайте новую задачу Excel бота - "Прочитать данные из файла" с формальными параметрами.

    В качестве обработчика в данной задаче используйте "Excel: Прочесть данные из файла".

    Добавьте формальные параметры задачи в соответствии с Рис.3.33.


    Lab4 r9 31.png
    Рисунок 3.33. Формальные параметры задачи "Прочитать данные из файла" Excel бота

    Используйте конфигурацию представленную на Рис.3.34.


    Lab4 r9 32.png
    Рисунок 3.34. Конфигурация обработчика "Excel: Прочесть данные из файла" в задаче

    Создайте на основе процесса "Пример 6-2" новый процесс "Пример 6-3", в соответствии с Рис.3.35.

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


    Lab4 r9 33e.png
    Рисунок 3.35. Схема бизнес-процесса "Пример 6-3"

    В отличии от "Пример 6-2", вместо задачи сценария "Прочесть данные из файла" используется элемент Действие, с выбранной ролью "Excel бот".

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

    • Студент - инициализируется пользователем запустившим процесс
    • Excel бот - используется инициализатор роли ботом "Excel бот".

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


    Создайте переменные:

    • специальность - Строка
    • номер курса - Целое число
    • перечень дисциплин - Список(Строка)
    • дата создания документа - Дата.

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


    В узле "Прочесть данные из файла" сделайте привязку к задаче "Прочитать данные из файла" Excel бота (см. Практическое занятие "Работа с MS Excel-ботом", Рис.3.17).

    Установите соответствие между переменными процесса и задачей (см. Рис.3.36).


    Lab4 r9 34.png
    Рисунок 3.36. Привязка параметров задачи к переменным процесса "Пример 6-3"

    Сохраните и экспортируйте процесс "Пример 6-3".

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

    Дайте на процесс "Пример 6-3" права на запуск, чтение и чтение экземпляра для "Группа МИБ-1".

    Запустите периодическую активацию ботов.

    Запустите новый экземпляр процесса под пользователем входящим в "Группа МИБ-1". Доведите его до завершения.

    Проверьте, что Excel бот выполнил задание "Прочесть данные из файла", и значения выведенные на форму в задании "Вывод данных" соответствуют данным из файла C:\file.xlsx.

    Замечание. Все действия аналогичны действиям при создании и выполнении процессов "Пример 6-1" и "Пример 6-2".

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

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

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

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

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

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

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

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

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

    Цель работы

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

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

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

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

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

     


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


    Замечание 1

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

    Замечание 2

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


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


    Замечание 3

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

    Замечание 4

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

    Замечание 5

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

    Замечание 6

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

    При этом в подпроцессах и мультиподпроцессах завершение их происходит именно через элемент «завершение потока управления». При этом точка управления передаётся в родительский процесс. Использование элементов «окончание бизнес-процесса» в подпроцессах и мультиподпроцессах среда разработки не допускает.

    Замечание 7

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


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


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

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


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


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


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


    Замечание 8

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


    Рисунок 4.05. Строка описания бизнес-процесса


    При щелчке на "Строку описания" открывается форма описания бизнес-процесса (Рис.4.06).


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


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

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


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


    Чтобы его отредактировать, надо выбрать иконку с тремя горизонтальными точками правее от поля (Рис.4.08).


    Рисунок 4.08. Редактирование поля "Описание"


    После экспорта этого бизнес-процесса на ВЕБ-приложение значение свойства "Описание" будет видно в поле "Описание" в таблице раздела "Запустить процесс" (Рис.4.09).


    Рисунок 4.09. Поле "Описание" в ВЕБ-интерфейсе

     


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

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

    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: https://runawfe.ru/rus/Документация


    Необходимые доработки

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