Вижу по теме информацию о том, что преподавателю нужно отправить отчет и контрольный файл. Всего вопросов 2. 1. Куда и как отправлять преподавателю контрольный файл? 2. Какой отчет, о чем писать? |
Работа с MS Excel-ботом
Теоретические сведения
Необходимые теоретические сведения изложены в пункте "Концепция ботов и бот-станций" лекции 3.
Порядок выполнения работы
В данном занятии рассматривается создание бота для работы с MS Excel файлами и разработка бизнес-процессов использующих задания данного бота для записи и чтения из Excel файла.
1. Запустите среду разработки
2. Создайте новый проект - "Занятие 6"
3. Создайте новый бизнес-процесс "Пример 6-1".
(Подробнее см. "Изучение интерфейса системы RunaWFE" ).
4. Добавьте элементы на схему бизнес-процесса в соответствии с рис. 11.1
Используйте элементы Начало, Действие, Задача сценария, Окончание.
Замечание. Для элемента Задача сценария используйте компактный вид.
(Подробнее см. "Работа с MS Word-ботом" ).
Элемент "Начало" назовите "Ввести данные для сохранения в Excel документ", задачу сценария - "Определение даты создания документа", остальные элементы в соответствии с рис. 11.1
5. Создайте роли
В данном процессе используются следующие Роли:
- "Преподаватель" - будет инициализирована пользователем, запустившим процесс
- "Excel бот" - будет инициализирована ботом для работы с MS Excel (настройка инициализации будет рассмотрена позже)
Выберите для узлов роли в соответствии с рис. 11.1
6. Создайте переменные для бизнес-процесса "Пример 6-1" согласно рис. 11.2
Замечание. Обратите внимание на переменную "перечень дисциплин" имеющую формат Список(Строка). При создании этой переменной, на форме выбора формата также необходимо будет выбрать и формат элементов (см. рис. 11.3)
7. Создайте формы
Замечание. По умолчанию в качестве редактора форм используется CKEditor4. Однако, в случае если у вас в системе установлен браузер Microsoft Internet Explorer устаревшей версии - 6 (IE6) или 7 (IE7), формы могут отображаться некорректно. В этом случае следует переключить редактор на FCKEditor2. (как переключить редактор см. в "Изучение перспективы данных" )
Создайте стартовую форму "Ввод данных" вида представленного на рис. 11.4.
(Подробнее см. "Изучение перспективы данных" ).
увеличить изображение
Рис. 11.4. Стартовая форма "Ввести данные для сохранения в Excel документ" бизнес-процесса "Пример 6-1"
Напротив строки "Специальность", расположите компонент "Ввод переменной" для переменной - "Специальность" (Подробнее см. "Изучение перспективы данных" ).
Аналогично добавьте компонент для ввода переменной "номер курса".
Используйте компонент "Редактировать связанные списки" для переменной "перечень дисциплин" (см. рис. 11.5)
Добавьте валидаторы для переменных:
- "специальность" - обязательное поле
- "перечень дисциплин" - обязательное поле
- "номер курса" - обязательное поле, а также диапазон числа (от 1 до 6)
Для этого кликните на стартовом узле правой клавишей мыши и выберите пункт "Форма > Проверка переменных формы", в появившейся форме выделяйте переменные и устанавливайте необходимые валидаторы. (см. "Изучение перспективы ресурсов" ).
Создайте форму для задания "Просмотреть данные перед сохранением в Excel документ" вида представленного на рис. 11.6.
На этой форме отображаются данные введенные в стартовой узле. Для переменных "Специальность" и "Номер курса" используется компонент "Отобразить переменную" как строку (см. рис. 11.7)
Для вывода списка "перечень дисциплин" используйте компонент "отобразить связанные списки"
Создайте форму "Получить созданный Excel документ" на которой отобразите ссылку для скачивания созданного Excel файла. Используйте компонент "Отобразить переменную" для файловой переменной "полученный Excel файл"
8. Создайте обработчик
Выберите класс обработчика "Выполнить формулу" в задаче сценария "дата создания документа"
(см. "Изучение перспективы данных" )
В качестве конфигурации используйте:
'дата создания документа'=current_date();
Таким образом с помощью функции current_date будет определена текущая дата и сохранена в переменную "дата создания документа"
9. Создайте бота "Excel бот" с задачей "Записать данные в файл"
Замечание. Перед выполнением следующих пунктов ОБЯЗАТЕЛЬНО (!) удалите все ботстанции из среды разработки, иначе создание ботов и задач будет приводить к ошибкам и некорректной работе. Для этого выделите ботстанцию правой клавишей мыши и выберите пункт "Удалить".
Вернитесь в среду разработки и перейдите на вкладку "Боты" и сделайте импорт бот станции с сервера (Подробнее см. "Работа с MS Word-ботом" ).
Создайте нового бота с именем "Excel бот" (Подробнее см. "Работа с MS Word-ботом" ).
Создайте задачу с формальными параметрами "Записать данные в файл" (Подробнее см. "Работа с MS Word-ботом" ).
Нажмите "Выбрать" и в появившемся окне выберите из списка обработчик "Excel: Сохранить данные в файл" (ExcelSaveHandler) (см. рис. 11.11)
Создайте входные параметры:
- "название" - тип Строка,Текст
- "номер" - тип Целое число
- "дата" - тип Дата,Дата со временем,Время
- "Список" - тип Список
- "Выходной файл" - тип Файл
(Подробнее см. "Работа с MS Word-ботом" )
Данные параметры будут использованы в конфигурации обработчика "Excel: Сохранить данные в файл" и должны будут в обязательном порядке привязаны к переменным процесса, использующего данную задачу бота.
Вызовите окно конфигуратора обработчика, для этого нажмите на кнопку "Изменить" (см. рис. 11.13)
Используйте конфигурацию приведенную на рис. 11.14.
Здесь:
- входной файл - задан с помощью пути 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 будут записаны значения из параметра "список", при чем будут располагаться вертикально
Нажмите ОК, сохраните и закройте задачу.
Далее необходимо создать файл шаблона C:\xls_tmp.xlsx, следующего вида:
11. Добавьте инициализатор для роли Excel бот
Вернитесь в бизнес-процесс "Пример 6-1", перейдите на вкладку роли, выделите роль "Excel бот" и нажмите "Изменить" В появившейся форме перейдите вкладку Бот, где из выпадающего списка выберите "Excel бот" (см. рис. 11.16)
Нажмите ОК, сохраните процесс.
12. Выполните привязку бота к задаче
Перейдите на граф процесса, щелкните правой клавишей мыши на узле "Сохранить данные в Excel файл", выберите пункт "Задача бота > привязать" (см. рис. 11.17)
Появится форма со списком задач с формальными параметрами бота "Excel бот", выделите задачу "Записать данные в файл" и нажмите ОК (см. рис. 11.18)
Будет вызвана форма конфигурации задачи. Установите соответствие между параметрами задачи и переменными процесса согласно рис. 11.19
Сохраните процесс.
13. Экспортируйте процесс на сервер
(Подробнее см. "Разработка исполнимых бизнес-процессов - появление новой парадигмы программирования" , "Изучение перспективы ресурсов" ).
14. Экспортируйте Excel бот с задачей на сервер
(Подробнее см. "Работа с MS Word-ботом" ).
15. Войдите в систему под пользователем Administrator, пароль –wf
16. Дайте полномочия группе "Преподаватели" на запуск, чтение и чтение экземпляра процесса "Пример 6-1"
17. Запустите периодическую активацию ботов
(Подробнее см. "Изучение перспективы потока управления" ).
18. Войдите в систему под пользователем, входящим в группу "Преподаватели", например "Стрекозин", пароль - 123
19. Запустите экземпляр бизнес-процесса "Пример 6-1" и доведите его до завершения.
Введите данные на стартовой форме, например:
Нажмите Запустить, выполните полученное задание "Просмотреть данные перед сохранением в Excel документ"
Excel бот выполнит задачу "Записать данные в файл"
Будет получено задание, со ссылкой на созданный Excel файл, нажмите на ссылку
Будет загружен file.xlsx, сохраните его на C:\ Откройте файл.
Как видно из полученный файл соответствует шаблону, заданной конфигурации задачи бота, а также содержит введенные пользователем данные.
20. Завершите процесс
21. Запустите среду разработки.
22. Создайте новый бизнес-процесс "Пример 6-2":
23. Добавьте элементы на схему бизнес-процесса в соответствии с рис. 11.25
Здесь используются те же элементы что и в процессе "Пример 6-1". Задаче сценария дайте название "Прочесть данные из файла", используйте опцию "компактный вид".
24. Создайте роль Студент
Выберите данную роль для стартового узла и действий.
25. Создайте переменные
В данном процессе используются те же переменные что и в "Пример 6-1", за исключением переменной "полученный Excel файл".
Откройте процесс "Пример 6-1", перейдите на вкладку переменные, выделите переменные (за исключением полученный excel файл") и нажмите кнопку "Копировать" (см. рис. 11.26).
Затем откройте процесс "Пример 6-2", перейдите на вкладку "Переменные" и нажмите кнопку "Вставить", переменные добавятся в список (см. рис. 11.27).
26. Создайте формы
Создайте форму "Выполнить задание перед чтением из Excel документа" вида представленного на рис. 11.28.
Создайте форму "Просмотреть данные считанные из Excel документа" вида представленного на рис. 11.29.
Используйте компонент "Отобразить переменную" для переменных: "специальность", "номер курса", "дата создания документа".
Используйте компонент "Отобразить связанные списки" для переменной "перечень дисциплин".
27. Создайте обработчик
Выберите класс обработчика "Excel: Прочесть данные из файла" в задаче сценария "Прочесть данные из файла"
Запустите конфигуратор обработчика, для этого кликните на "Конфигурация" в свойствах задачи сценария "Прочесть данные из файла".
Используйте конфигурацию, представленную на рис. 11.31.
Т.е. предполагается чтение из файла C:\file.xlsx, который был создан при выполнении бизнес-процесса "Пример 6-1" использующего задачу Excel бота - "Записать данные в файл".
Считанные по соответствующим адресам значения будут сохранены непосредственно в переменные бизнес-процесса "Пример 6-2".
Замечание. Во время выполнения экземпляра бизнес-процесса потребуется обязательное наличие файла для чтения/записи данных в указанной в конфигурации папке - C:\file.xlsx
29. Экспортируйте бизнес-процесс на сервер
30. Войдите в систему под пользователем Administrator, пароль –wf
31. Дайте права "Чтение", "Запуск", "Чтение экземпляра" на процесс "Пример 6-2" для группы "Группа МИБ-1"
32. Войдите в систему под пользователем входящим в группу "Группа МИБ-1", например Гусеницын
33. Запустите экземпляр бизнес-процесса "Пример 6-2" и доведите его до завершения.
В задании "Просмотреть данные считанные из Excel документа" будут выведены считанные из файла C:\file.xlsx в переменные процесса данные (см. рис. 11.32)
Считанные значения соответствуют введенным данным во время выполнения процесса "Пример 6-1".
Задание для самостоятельной работы
Создайте новую задачу Excel бота - "Прочитать данные из файла" с формальными параметрами.
В качестве обработчика в данной задаче используйте "Excel: Прочесть данные из файла".
Добавьте формальные параметры задачи в соответствии с рис. 11.33
Используйте конфигурацию, представленную на рис. 11.34.
Создайте на основе процесса "Пример 6-2" новый процесс "Пример 6-3", в соответствии с рис. 11.35
Можно воспользоваться функцией копирования процесса (см. "Изучение перспективы потока управления" )
В отличии от "Пример 6-2", вместо задачи сценария "Прочесть данные из файла" используется элемент Действие, с выбранной ролью "Excel бот".
Создайте Роли:
- Студент - инициализируется пользователем запустившим процесс
- Excel бот - используется инициализатор роли ботом "Excel бот"
Замечание. Если использовалась функция копирования процесса, то "Студент" уже будет в списке ролей, и ее создавать не требуется.
Создайте переменные:
- специальность - Строка
- номер курса - Целое число
- перечень дисциплин - Список(Строка)
- дата создания документа - Дата
Замечание. Если использовалась функция копирования процесса, то переменные будут также автоматически скопированы, их создавать не потребуется.
В узле "Прочесть данные из файла" сделайте привязку к задаче "Прочитать данные из файла" Excel бота (см. Практическое занятие "Работа с MS Excel-ботом ", рис. 11.17).
Установите соответствие между переменными процесса и задачей (см. рис. 11.36)
Сохраните и экспортируйте процесс "Пример 6-3".
Экспортируйте на сервер созданную задачу "Прочитать данные из файла". Нажмите правой клавишей мыши на этой задаче и выберите пункт "Экспортировать задачу бота", в открывшемся окне переключитесь на вариант "Экспорт на WFE сервер", т.е. таким же образом как и экспорт процесса.
Дайте на процесс "Пример 6-3" права на запуск, чтение и чтение экземпляра для "Группа МИБ-1".
Запустите периодическую активацию ботов.
Запустите новый экземпляр процесса под пользователем входящим в "Группа МИБ-1". Доведите его до завершения.
Проверьте, что Excel бот выполнил задание "Прочесть данные из файла", и значения выведенные на форму в задании "Вывод данных" соответствуют данным из файла C:\file.xlsx
Замечание. Все действия аналогичны действиям при создании и выполнении процессов "Пример 6-1" и "Пример 6-2"
Требования к представлению результатов занятия
В результате выполнения лабораторной работы должны быть представлены преподавателю отчет и файл с данными archive.datafile, полученный командой "Система/Выгрузить файл с данными/Экспортировать", содержащие разработанные на занятии бизнес-процессы.
В отчете должны содержаться следующие данные:
- Скриншоты основных действий, совершенных на занятии, с пояснениями
- Скриншоты, содержащие маршруты точек управления для экземпляров бизнес-процессов, доведенных до завершения.
- Скриншоты, содержащие созданные на занятии переменные и основные формы
Контрольные вопросы
- Где задается имя Excel-файла, в который обработчик будет записывать данные?
- Где задается путь к Excel-файлу, в который обработчик будет записывать данные?
- Где задается имя и путь к Excel-файлу, из которого обработчик будет читать данные?
- Как создается задача бота с формальными параметрами