Московский институт стали и сплавов
Опубликован: 24.09.2015 | Доступ: свободный | Студентов: 657 / 50 | Длительность: 24:54:00
Специальности: Руководитель
Практическое занятие 5:

Работа с MS Word-ботом

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

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

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

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

1. Запустите среду разработки

Создайте новый проект - Занятие 5

Создайте новый бизнес-процесс "Пример 5-1".

Используйте следующие элементы для создания бизнес-процесса в соответствии с рис. 10.1

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

Рис. 10.1. Схема бизнес процесса "Пример 5-1"

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

Компактный вид для задач сценариев

Рис. 10.2. Компактный вид для задач сценариев

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

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

Далее выберите для узлов роли в соответствии с рис. 10.1

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

2. Запустите симулятор. Войдите в web-интерфейс системы RunaWFE под пользователем Administrator.

3. Создайте отношение "Руководитель" (См. пример создания отношения в пунктах 10-11 раздела "Изучение перспективы ресурсов" )

Откройте отношение "Руководитель" и создайте пару "Паучков " - "Сверчков" (см. рис. 10.3)

Отношение Руководитель

Рис. 10.3. Отношение Руководитель

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

4. Создайте группы

  • Отдел кадров
  • Бухгалтеры

(см. "Изучение интерфейса системы RunaWFE" ).

5. Инициализирйте роли "Директор", "Отдел кадров" и "Бухгалтер" с помощью соответствующих групп (директор, отдел кадров, бухгалтеры)

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

6. Создайте переменные в соответствии с рис. 10.4

Переменные бизнес-процесса

увеличить изображение
Рис. 10.4. Переменные бизнес-процесса

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

Ввод значения по умолчанию переменной

Рис. 10.5. Ввод значения по умолчанию переменной
Список переменных в случае установленного IE11

Рис. 10.6. Список переменных в случае установленного IE11

7. Создайте форму для стартового узла "Подать заявку на премию"

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

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

Форма стартового узла

Рис. 10.7. Форма стартового узла

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

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

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

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

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

Выбор переменной в качестве названия отношения

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

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

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

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

Ввод переменной "Размер премии"

Рис. 10.10. Ввод переменной "Размер премии"

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

8. Задайте валидацию для переменных и роли стартовой формы

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

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

Валидатор для роли "Сотрудник"

Рис. 10.11. Валидатор для роли "Сотрудник"

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

9. Настройте задачи сценариев

Выделите первую задачу сценария, перейдите в свойства, здесь введите название - "ФИО сотрудника". Кликните на выбор класса обработчика и выберите из списка - обработчик "Получить информацию об исполнителе", нажмите ОК (см. рис. 10.12, рис. 10.13)

Задача сценария "определение ФИО Сотрудника"

Рис. 10.12. Задача сценария "определение ФИО Сотрудника"
Выбор класса обработчика

Рис. 10.13. Выбор класса обработчика

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

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

Рис. 10.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 заменяются на первую букву фамилии, имени или отчества.

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

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

Получение ФИО сотрудника в дательном падеже

увеличить изображение
Рис. 10.15. Получение ФИО сотрудника в дательном падеже

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

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

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

Определение текущей даты

Рис. 10.16. Определение текущей даты

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

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

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

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

Конфигуратор docx обработчика

Рис. 10.18. Конфигуратор docx обработчика

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

Шаблон служебной записки на премирование

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

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

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

10. Создайте форму для узла "Подписать служебную записку и отдать ее в отдел кадров"

Отобразите файловую переменную "Служебная записка"

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

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

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

11. Создайте форму для узла "Рассмотреть заявку на премию"

Форма "Рассмотреть заявку на премию"

Рис. 10.21. Форма "Рассмотреть заявку на премию"

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

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

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

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

12. Создайте форму для узла "Ознакомиться с сообщением об отказе"

Форма "Ознакомиться с сообщением об отказе"

увеличить изображение
Рис. 10.22. Форма "Ознакомиться с сообщением об отказе"

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

13. Создайте форму для узла "Ознакомиться с сообщением о согласии"

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

Форма "Ознакомиться с сообщением о согласии"

увеличить изображение
Рис. 10.23. Форма "Ознакомиться с сообщением о согласии"

14. Создайте композицию "Издание приказа и начисление премии"

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

Выделите на схеме элемент подпроцесс, дайте ему название "Издание приказа и начисление премии", затем кликните на данном элементе правой клавишей мыши и выберите "Использовать композицию. Новый подпроцесс" (см. рис. 10.24)

Вызов функции создание композиции

Рис. 10.24. Вызов функции создание композиции

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

Форма создания композиции

Рис. 10.25. Форма создания композиции

15. Создайте композицию вида изображенного на рис. 10.26.

Схема композиции "Издание приказа и начисление премии"

Рис. 10.26. Схема композиции "Издание приказа и начисление премии"

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

Переинициализация роли Отдел кадров

Рис. 10.27. Переинициализация роли Отдел кадров

16. Создайте форму для узла "Издать приказ о премировании"

Расположите здесь компонент для ввода переменной "номер приказа"

Форма "Издать приказ о премировании"

Рис. 10.28. Форма "Издать приказ о премировании"

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

Валидатор для переменной "Номер приказа"

Рис. 10.29. Валидатор для переменной "Номер приказа"

17. Настройте задачи сценария

В задаче сценария "ФИО директора" используя класс обработчика "Получить информацию об исполнителе" определите фамилию, имя и отчество Директора (см. рис. 10.30)

Определение ФИО директора

увеличить изображение
Рис. 10.30. Определение ФИО директора

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

Задача "Сформировать текст приказа"

Рис. 10.31. Задача "Сформировать текст приказа"

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

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

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

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

18. Разработайте Word бота и задачу бота "Сгенерировать приказ" непосредственно в среде разработки

Откройте вкладку "Боты" (см. рис. 10.32)

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

Вкладка "Боты"

увеличить изображение
Рис. 10.32. Вкладка "Боты"

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

Меню вызова импорта бот станции

Рис. 10.33. Меню вызова импорта бот станции

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

Импорт бот localbotstation с WFE сервера

Рис. 10.34. Импорт бот localbotstation с WFE сервера

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

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

Создание нового бота

Рис. 10.35. Создание нового бота

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

Форма создания нового бота

Рис. 10.36. Форма создания нового бота

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

Меню для создания задачи бота

Рис. 10.37. Меню для создания задачи бота

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

Создание задачи бота

Рис. 10.38. Создание задачи бота

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

Вызов списка обработчиков

увеличить изображение
Рис. 10.39. Вызов списка обработчиков

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

Список обработчиков

Рис. 10.40. Список обработчиков

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

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

Рис. 10.41. "Добавить" входные параметры

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

Форма создания входного параметра

Рис. 10.42. Форма создания входного параметра

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

Создайте входные и выходные параметры согласно рис. 10.43

Параметры задачи "Сгенерировать приказ"

Рис. 10.43. Параметры задачи "Сгенерировать приказ"

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

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

Шаблон приказа

Рис. 10.44. Шаблон приказа

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

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

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

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

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

Рис. 10.45. Вызов конфигуратора обработчика

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

Конфигурация обработчика docx файлов

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

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

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

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

Инициализатор роли Word бот

Рис. 10.47. Инициализатор роли Word бот

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

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

Вызов списка задач бота

Рис. 10.48. Вызов списка задач бота

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

Список доступных для привязки задач

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

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

Выбор параметров для задачи Word бота

Рис. 10.50. Выбор параметров для задачи Word бота

19. Создайте форму "Ознакомиться с приказом" (см. рис. 10.51)

Отобразите на ней файловую переменную "Приказ" с помощью компонента "Отобразить переменную" как строку.

Форма "Ознакомиться с приказом"

Рис. 10.51. Форма "Ознакомиться с приказом"

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

Форма "Начислить премию сотруднику"

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

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

Форма "Ознакомиться с начислением премии"

Рис. 10.53. Форма "Ознакомиться с начислением премии"

20. Экспортируйте разработанный процесс и Word бот с задачей на сервер WFE

Кликните на разработанный бизнес-процесс, в меню выберите команду "Файл / Экспорт процесса" (Подробнее см. "Изучение перспективы потока управления" ).

Для экспорта бота с задачей, перейдите на вкладку "Боты", кликните правой клавишей мыши на Word бот, и выберите "Экспорт бота" (см. рис. 10.54) В появившемся окне выберите "Экспорт на WFE сервер", далее нажмите Готово (см. рис. 10.55).

Экспорт бота с задачей

Рис. 10.54. Экспорт бота с задачей
Экспорт бота с задачей на WFE сервер

увеличить изображение
Рис. 10.55. Экспорт бота с задачей на WFE сервер

21. Войдите на сервер под пользователем Administrator

Выберите пункт "Бот станции", и перейдите в ранее созданную бот станцию "localbotstation" (см. рис. 10.56)

Бот станции

увеличить изображение
Рис. 10.56. Бот станции

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

Word бот

Рис. 10.57. Word бот

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

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

Обладатели полномочий на процесс "Пример 5-1"

Рис. 10.58. Обладатели полномочий на процесс "Пример 5-1"

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

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

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

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

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

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

22. Запустите периодическую активацию ботов (см. Практическое занятие "Изучение перспективы операций", Пункт 12)

23. Выполните процесс "Пример 5-1"

Войдите в систему под пользователем "Паучков", запустите процесс.

Введите данные на стартовой форме, и нажмите "Запустить" (см. рис. 10.59)

Стартовая форма процесса "Пример 5-1"

увеличить изображение
Рис. 10.59. Стартовая форма процесса "Пример 5-1"

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

Служебная записка о начислении премии

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

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

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

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

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

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

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

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

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

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

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

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

Задание "Ознакомиться с сообщением о согласии"

Рис. 10.63. Задание "Ознакомиться с сообщением о согласии"

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

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

Задание "Издание приказа и начисление премии"

Рис. 10.64. Задание "Издание приказа и начисление премии"

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

Для этого войдите в систему под Administrator, в меню "Запущенные процессы".

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

  • перейдите в меню "Запущенные процессы"
  • кликните по надписи "Вид", в результате будут открыты параметры отображения экземпляров
Параметры отображения запущенных экземпляров процессов

увеличить изображение
Рис. 10.65. Параметры отображения запущенных экземпляров процессов
  • проверьте, что позиция сортировки для поля "Номер" установлена в "1", если нет, выберите - "1"
  • измените "Тип сортировки" с "возр" на "убыв" т.е. по убыванию номера
Выбор типа сортировки - "по убыванию" поля "Номер"

увеличить изображение
Рис. 10.66. Выбор типа сортировки - "по убыванию" поля "Номер"
  • введите название профиля "по убыванию номера" и нажмите "Сохранить как..."
Ввод названия и сохранение профиля

увеличить изображение
Рис. 10.67. Ввод названия и сохранение профиля
  • кликните снова по надписи "Вид" для сокрытия области с параметрами отображения

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

Отображение запущенных процессов с сортировкой по убыванию номера

увеличить изображение
Рис. 10.68. Отображение запущенных процессов с сортировкой по убыванию номера

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

Найдите соответствующий экземпляр бизнес-процесса "Пример 5-1" в меню "Запущенные процессы" и кликните на его номер.

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

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

Граф выполнения экземпляра бизнес процесса "Пример 5-1"

увеличить изображение
Рис. 10.69. Граф выполнения экземпляра бизнес процесса "Пример 5-1"

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

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

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

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

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

Ошибки при выполнении бизнес-процесса "Пример 5-1"

увеличить изображение
Рис. 10.71. Ошибки при выполнении бизнес-процесса "Пример 5-1"

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

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

увеличить изображение
Рис. 10.72. Информация об ошибках в процессах, представленная на странице "Система"

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

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

Исправленный шаблон приказа

увеличить изображение
Рис. 10.73. Исправленный шаблон приказа

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

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

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

Граф выполнения композиции "Издание приказа и начисление премии"

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

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

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

Задание "Ознакомиться с приказом"

Рис. 10.75. Задание "Ознакомиться с приказом"
Сгенерированный приказ

Рис. 10.76. Сгенерированный приказ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Вижу по теме информацию о том, что преподавателю нужно отправить отчет и контрольный файл.

Всего вопросов 2.

1. Куда и как отправлять преподавателю контрольный файл?

2. Какой отчет, о чем писать?

Инна Инна
Инна Инна

Та же проблема, что и у Марины. Содержание черного окошка и версию Java отправила на указанный почтовый адрес.