TrainingMaterialsCloud Documents: различия между версиями

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


<center>[[Файл:442-Intro 04-02-02.png]]</center>
[[Файл:442-Intro 04-02-02.png|обрамить|центр|Рисунок 1.01. Включение проверки прав доступа к объектам системы RunaWFE]]
 
<center>Рисунок 1.01. Включение проверки прав доступа к объектам системы RunaWFE</center>


= Практическое занятие 05: "Работа с MS Word-документами" =
= Практическое занятие 05: "Работа с MS Word-документами" =
Строка 78: Строка 76:
   • Сотрудники.  
   • Сотрудники.  


(см. ''"Вводное занятие". [Прядок выполнения работы] Пункт 5, рис. 5.6'').
(см. ''"Вводное занятие". [Прядок выполнения работы] Пункт 5, Рис.5.6'').


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


Для этого вернитесь в редакторе к разрабатываемому процессу, перейдите на вкладку Роли, выберите роль и щёлкните на кнопку "Edit", находящуюся перед ней. Используйте инициализацию с помощью групп wf (подробнее см. Практическое занятие "Изучение перспективы операций", Порядок выполнения работы, Пункт 13, рис. 5.13-5.14).
Для этого вернитесь в редакторе к разрабатываемому процессу, перейдите на вкладку Роли, выберите роль и щёлкните на кнопку "Edit", находящуюся перед ней. Используйте инициализацию с помощью групп wf (подробнее см. Практическое занятие "Изучение перспективы операций", Порядок выполнения работы, Пункт 13, Рис.5.13-5.14).


<li>'''Создайте''' указанных ниже исполнителей и распределите их по группам:</li><p></p>
<li>'''Создайте''' указанных ниже исполнителей и распределите их по группам:</li><p></p>
Строка 108: Строка 106:
   • Стрекозин Александр Николаевич.     
   • Стрекозин Александр Николаевич.     


<li>'''Создайте''' отношение "Руководитель" (См. ''пример создания отношения в пунктах 10-11 раздела "Практическое занятие "[[TrainingMaterials_4_4_1_Perspectives#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_2|Изучение перспективы ресурсов]]", рис. 3.5, 3.6'').
<li>'''Создайте''' отношение "Руководитель" (См. ''пример создания отношения в пунктах 10-11 раздела "Практическое занятие "[[TrainingMaterials_4_4_1_Perspectives#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_2|Изучение перспективы ресурсов]]", Рис.3.5-3.6'').
</li>
</li>


Строка 208: Строка 206:
Далее откройте меню конфигурирования узла-сценария "Генерация служебной записки". В качестве класса обработчика выберите - "Word handler". Заполните поля как показано на Рис.2.11.  
Далее откройте меню конфигурирования узла-сценария "Генерация служебной записки". В качестве класса обработчика выберите - "Word handler". Заполните поля как показано на Рис.2.11.  


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


[[Файл:442-Documents 2-11.png|обрамить|центр|Рисунок 2.11. Конфигурирование задачи "Генерация служебной записки"]]
[[Файл:442-Documents 2-11.png|обрамить|центр|Рисунок 2.11. Конфигурирование задачи "Генерация служебной записки"]]
Строка 254: Строка 252:
<li>'''Создайте''' форму для узла "Ознакомиться с сообщением о согласии" (Рис.2.16).</li>
<li>'''Создайте''' форму для узла "Ознакомиться с сообщением о согласии" (Рис.2.16).</li>


Т.к. данная форма отличается от формы "Ознакомиться с решением об отказе" лишь заголовком, то можно воспользоваться функцией создания формы на основе существующей (Подробнее см. ''Практическое занятие "Изучение перспективы данных", [[TrainingMaterials_4_4_1_Perspectives#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_3|Порядок выполнения работы]], Пункт 6, Рис. 4.30, 4.31'').
Т.к. данная форма отличается от формы "Ознакомиться с решением об отказе" лишь заголовком, то можно воспользоваться функцией создания формы на основе существующей (Подробнее см. ''Практическое занятие "Изучение перспективы данных", [[TrainingMaterials_4_4_1_Perspectives#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_3|Порядок выполнения работы]], Пункт 6, Рис.4.30-4.31'').


[[Файл:442-Documents 2-16-01.png|обрамить|центр|Рисунок 2.16. Форма "Ознакомиться с сообщением о согласии"]]
[[Файл:442-Documents 2-16-01.png|обрамить|центр|Рисунок 2.16. Форма "Ознакомиться с сообщением о согласии"]]
Необходимо только изменить заголовок в тексте формы.


<li>'''Создайте''' композицию для узла "Издание приказа и начисление премии".</li>
<li>'''Создайте''' композицию для узла "Издание приказа и начисление премии".</li>
Строка 266: Строка 266:
[[Файл:442-Documents 2-17.png|обрамить|центр|Рисунок 2.17. Вызов функции создания композиции]]
[[Файл:442-Documents 2-17.png|обрамить|центр|Рисунок 2.17. Вызов функции создания композиции]]


В появившемся окне введите название "Начисление" (не более 16 символов):  
В появившемся окне введите название "Начисление" (допустимо не более 16 символов):  


[[Файл:442-Documents 2-18.png|обрамить|центр|Рисунок 2.18. Форма создания композиции]]
[[Файл:442-Documents 2-18.png|обрамить|центр|Рисунок 2.18. Форма создания композиции]]
Строка 320: Строка 320:


<li>'''Создайте''' пользовательскую форму для узла "Получить подпись сотрудника об ознакомлении с приказом".</li>  
<li>'''Создайте''' пользовательскую форму для узла "Получить подпись сотрудника об ознакомлении с приказом".</li>  
Графическая форма может быть создана на основании формы "Ознакомиться с приказом" и содержит только поля "Сотрудник" и "Приказ". В созданной по прототипу форме добавьте поле "Сотрудник" и замените заголовок в поле "html code" (Рис.2.26). Выберите ссылку "update".
Графическая форма может быть создана на основании формы "Ознакомиться с приказом" и содержит только поля "Сотрудник" и "Приказ". В созданной по прототипу форме добавьте поле "Сотрудник" и замените заголовок в поле "html code" (Рис.2.26): <p> </p>
 
&lt;h2>Ознакомить сотрудника с приказом под подпись.&lt;/h2>
 
Выберите ссылку "update".


[[Файл:442-Documents 2-26-01.png|обрамить|центр|Рисунок 2.26. Создание формы "Ознакомить сотрудника с приказом"]]
[[Файл:442-Documents 2-26-01.png|обрамить|центр|Рисунок 2.26. Создание формы "Ознакомить сотрудника с приказом"]]
Строка 333: Строка 337:
[[Файл:442-Documents 2-28-01.png|обрамить|центр|Рисунок 2.28. Форма "Начислить премию сотруднику"]]
[[Файл:442-Documents 2-28-01.png|обрамить|центр|Рисунок 2.28. Форма "Начислить премию сотруднику"]]


Создайте в форме недостающие поля, в поле "html code" удалите заголовок и отстройте порядок полей как показано на Рис.2.28. Сохраните композицию (синяя дискета).  
Создайте в форме недостающие поля, в поле "html code" добавьте заголовок: <p> </p>
 
&lt;P style="text-align: center;">
&lt;SPAN style="font-size: 20px;">&lt;SRTONG>Начислить премию сотруднику&lt;/STRONG>&lt;/SPAN>
&lt;/P>
 
Выберите ссылку update. Отстройте порядок полей как показано на Рис.2.28.  


<li>'''Создайте''' пользовательскую форму для узла "Ознакомиться с начислением премии" (Рис.2.29). В качестве прототипа целесообразно использовать предыдущую форму. </li>
<li>'''Создайте''' пользовательскую форму для узла "Ознакомиться с начислением премии" (Рис.2.29). В качестве прототипа целесообразно использовать предыдущую форму (Рис.2-28). </li>


[[Файл:442-Documents 2-29.png|обрамить|центр|Рисунок 2.29. Форма "Ознакомиться с начислением премии"]]
[[Файл:442-Documents 2-29.png|обрамить|центр|Рисунок 2.29. Форма "Ознакомиться с начислением премии"]]
Строка 349: Строка 359:
[[Файл:442-Documents 2-41-01.png|обрамить|центр|Рисунок 2.30. Обладатели полномочий на процесс "Пример 05-1" ]]
[[Файл:442-Documents 2-41-01.png|обрамить|центр|Рисунок 2.30. Обладатели полномочий на процесс "Пример 05-1" ]]


Разрешите для группы "Сотрудники" вход в систему (см. ''"Практикум. Вводное занятие", [[https://runawfe.ru/TrainingMaterials_4_4_1_Introduction#.D0.9F.D1.83.D0.BD.D0.BA.D1.82_.D0.BC.D0.B5.D0.BD.D1.8E_.D0.A1.D0.B8.D1.81.D1.82.D0.B5.D0.BC.D0.B0|Порядок выполнения работы]] пункты 7-9, Рис. 5.7 - 5.9'' ).
Разрешите для группы "Сотрудники" вход в систему (см. ''"Практикум. Вводное занятие", [[https://runawfe.ru/TrainingMaterials_4_4_1_Introduction#.D0.9F.D1.83.D0.BD.D0.BA.D1.82_.D0.BC.D0.B5.D0.BD.D1.8E_.D0.A1.D0.B8.D1.81.D1.82.D0.B5.D0.BC.D0.B0|Порядок выполнения работы]] пункты 7-9, Рис.5.7-5.9'' ).


Дайте полномочия группе "Сотрудники" на чтение на всех созданных пользователей (см. ''"Практикум. Вводное занятие", [[TrainingMaterials_4_4_1_Introduction#.D0.9E.D0.B1.D0.BB.D0.B0.D0.B4.D0.B0.D1.82.D0.B5.D0.BB.D0.B8_.D0.BF.D0.BE.D0.BB.D0.BD.D0.BE.D0.BC.D0.BE.D1.87.D0.B8.D0.B9|Порядок выполнения работы]], Пункты 12-13, Рис. 5.12-5.13'').
Дайте полномочия группе "Сотрудники" на чтение на всех созданных пользователей (см. ''"Практикум. Вводное занятие", [[TrainingMaterials_4_4_1_Introduction#.D0.9E.D0.B1.D0.BB.D0.B0.D0.B4.D0.B0.D1.82.D0.B5.D0.BB.D0.B8_.D0.BF.D0.BE.D0.BB.D0.BD.D0.BE.D0.BC.D0.BE.D1.87.D0.B8.D0.B9|Порядок выполнения работы]], Пункты 12-13, Рис.5.12-5.13'').


<li>'''Выполните''' процесс "Пример 05-1".</li>
<li>'''Выполните''' процесс "Пример 05-1".</li>
Строка 382: Строка 392:
Член группы "Директор" (в нашем случае это пользователь Стрекозин) получает задание "Рассмотреть заявку на премию".
Член группы "Директор" (в нашем случае это пользователь Стрекозин) получает задание "Рассмотреть заявку на премию".


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


[[Файл:442-Documents 2-34-02.png|обрамить|центр|Рисунок 2.34. Задание "Рассмотреть заявку на премию"]]
[[Файл:442-Documents 2-34-02.png|обрамить|центр|Рисунок 2.34. Задание "Рассмотреть заявку на премию"]]
Строка 419: Строка 429:
В задании "Введите номер приказа на отпуск" кроме непосредственно ввода номера приказа также необходимо расположить компонент '''"Выбор из членов группы"''', необходимый для формирования на форме списка пользователей группы "Директор и заместители". Соответственно роль Директор будет проинициализирована выбранным из списка пользователем.
В задании "Введите номер приказа на отпуск" кроме непосредственно ввода номера приказа также необходимо расположить компонент '''"Выбор из членов группы"''', необходимый для формирования на форме списка пользователей группы "Директор и заместители". Соответственно роль Директор будет проинициализирована выбранным из списка пользователем.


В компоненте форм "Выбор из членов группы" в качестве параметра "Группа" можно использовать предварительно созданную переменную формата "Группа", проинициализированную значением "Директор и заместители" (Подобный пример см. в ''Практическое занятие "Изучение перспективы данных", [[TrainingMaterials_4_4_1_Perspectives#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_3|Порядок выполнения работы]], Пункт 6, Рис. 4.16'').  
В компоненте форм "Выбор из членов группы" в качестве параметра "Группа" можно использовать предварительно созданную переменную формата "Группа", проинициализированную значением "Директор и заместители" (Подобный пример см. в ''Практическое занятие "Изучение перспективы данных", [[TrainingMaterials_4_4_1_Perspectives#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_3|Порядок выполнения работы]], Пункт 6, Рис.4.16'').  


Используйте задачи сценария для определения и формирования:
Используйте задачи сценария для определения и формирования:
Строка 430: Строка 440:
   • Текста приказа.  
   • Текста приказа.  


[[Файл:442-Documents 2-39.png|обрамить|центр|Рисунок 2.39. Схема бизнес-процесса "Пример 05-2" для самостоятельной разработки]]
[[Файл:Схема примера 05-2.png|обрамить|центр|Рисунок 2.39. Схема бизнес-процесса "Пример 05-2" Оформление отпуска для самостоятельной разработки]]




Строка 477: Строка 487:


В данном занятии рассматривается работа с MS Excel-файлами и разработка бизнес-процессов, использующих сценарии для записи и чтения из Excel-файла.
В данном занятии рассматривается работа с MS Excel-файлами и разработка бизнес-процессов, использующих сценарии для записи и чтения из Excel-файла.
<ol>
<li>'''Зайдите''' в систему Runa-WEB под учётной записью Administrator. </li>


<li>'''Создайте''' в разделе «Редактор процессов» новый проект - "Занятие 06"  
'''Зайдите''' в систему Runa-WEB под учётной записью Administrator.
(Подробнее см. ''"Практикум. Вводное занятие", Порядок выполнения работы, Пункт 16, Рис 5.15''). </li>
 
'''Создайте''' в разделе «Редактор процессов» новый проект - "Занятие 06"  
(Подробнее см. ''"Практикум. Вводное занятие", Порядок выполнения работы, Пункт 16, Рис.5.15'').  
 


<li>'''Создайте''' в нём новый бизнес-процесс "Пример 06-1". </li>
=== Запись в файл Excel ===
<ol>
<li>'''Создайте''' новый бизнес-процесс "Пример 06-1". </li>


<li>'''Добавьте''' элементы на схему бизнес-процесса в соответствии с Рис.3.01. Используйте элементы:  
<li>'''Добавьте''' элементы на схему бизнес-процесса в соответствии с Рис.3.01. Используйте элементы:  
Строка 495: Строка 508:




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


<li>'''Создайте''' роли.
<li>'''Создайте''' роли.
Строка 520: Строка 533:
</li>
</li>
<p>Сначала создайте пользовательскую стартовую форму "Ввести данные для сохранения в Excel-документе" вида, представленного на Рис.3.04  
<p>Сначала создайте пользовательскую стартовую форму "Ввести данные для сохранения в Excel-документе" вида, представленного на Рис.3.04  
(Подробнее см. ''Практическое занятие "03 Изучение перспективы данных", [[TrainingMaterials_4_4_1_Perspectives#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_3|Порядок выполнения работы]], Пункт 6, Рис. 4.11-4.12'').</p>
(Подробнее см. ''Практическое занятие "03 Изучение перспективы данных", [[TrainingMaterials_4_4_1_Perspectives#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_3|Порядок выполнения работы]], Пункт 6, Рис.4.11-4.12'').</p>




[[Файл:442-Documents 3-04-01.png|440px|мини|центр|Рисунок 3.04. Стартовая форма "Ввести данные для сохранения в Excel-документе" бизнес-процесса "Пример 06-1"]]
[[Файл:442-Documents 3-04-01.png|440px|мини|центр|Рисунок 3.04. Стартовая форма "Ввести данные для сохранения в Excel-документе" бизнес-процесса "Пример 06-1"]]


Размещаемые компоненты снабдите надписями:
  ● "Специальность"
  ● "Номер курса"
  ● "Перечень дисциплин".


Напротив строки "Специальность" расположите компонент "Ввод переменной" для переменной - "специальность"
Напротив строки "Специальность" расположите компонент "Ввод переменной" для переменной - "специальность"
(Подробнее см. ''Практическое занятие "Изучение перспективы данных", [[TrainingMaterials_4_4_1_Perspectives#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_3|Порядок выполнения работы]], Пункт 6, Рис. 4.21-4.22'').
(Подробнее см. ''Практическое занятие "Изучение перспективы данных", [[TrainingMaterials_4_4_1_Perspectives#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_3|Порядок выполнения работы]], Пункт 6, Рис.4.21-4.22'').


Аналогично добавьте компонент для ввода переменной "номер курса".
Аналогично добавьте компонент для ввода переменной "номер курса".
Строка 533: Строка 551:
Используйте компонент "Редактировать связанные списки" для переменной "перечень дисциплин".
Используйте компонент "Редактировать связанные списки" для переменной "перечень дисциплин".


Размещённые компоненты снабдите надписями:
  ● "Специальность"
  ● "Номер курса"
  ● "Перечень дисциплин".


Добавьте валидаторы для переменных внизу формы:
Добавьте валидаторы для переменных внизу формы:
Строка 583: Строка 596:
Выберите класс обработчика "Execute formula" ("Выполнить формулу") в задаче сценария "Определение даты создания документа"  
Выберите класс обработчика "Execute formula" ("Выполнить формулу") в задаче сценария "Определение даты создания документа"  


(см. ''Практическое занятие "03 Изучение перспективы данных", [[TrainingMaterials_4_4_1_Perspectives#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_3|Порядок выполнения работы]], Пункт 8, Рис. 4.39, 4.40'').<br>
(см. ''Практическое занятие "03 Изучение перспективы данных", [[TrainingMaterials_4_4_1_Perspectives#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_3|Порядок выполнения работы]], Пункт 8, Рис.4.39-4.40'').<br>


В качестве конфигурации используйте скрипт "'дата создания документа'=current_date();".  
В качестве конфигурации используйте скрипт "'дата создания документа'=current_date();".  
Строка 594: Строка 607:




В появившемся интерфейсе из выпадающего списка "Handler" выберите обработчик "Excel: Сохранить данные в файл" (ExcelSaveHandler), а затем выберите кнопку "update".  
В появившемся интерфейсе из выпадающего списка "Handler" выберите обработчик "ExcelSaveHandler" (Сохранить данные в Excel файл), а затем выберите кнопку "update".  




Строка 640: Строка 653:
<li>'''Сохраните процесс.'''</li>
<li>'''Сохраните процесс.'''</li>


<li>'''Произведите''' деплой процесса. </li>
<li>'''Экспортируйте''' разработанный процесс "Пример 06-1" в раздел "Запустить процесс" RunaWFE. </li>
(Подробнее см. ''"Практикум. Перспективы исполнимых бизнес-процессов", Практическое занятие "01 Изучение перспективы потока управления", [[TrainingMaterials_4_4_1_Perspectives#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.B2.D1.8B.D0.BF.D0.BE.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B|Порядок выполнения работы]], Пункт 11-14'').
Для этого щёлкните разработанный бизнес-процесс правой кнопкой, в выпавшем меню выберите команду "Deploy".


<li>'''Войдите''' в систему под пользователем Administrator, пароль – wf. </li>
<li>'''Войдите''' в систему под пользователем Administrator, пароль – wf. </li>
Строка 657: Строка 670:




[[Файл:442-Documents 3-16.png|обрамить|центр|Рисунок 3.16. Ввод данных на стартовой форме]]
[[Файл:Ввод данных на стартовой форме 06-1 веб.png|обрамить|центр|Рисунок 3.16. Ввод данных на стартовой форме]]




Строка 663: Строка 676:




[[Файл:Lab4 r9 20e.png|обрамить|центр|Рисунок 3.17. Задание "Перед записью в файл"]]
[[Файл:Lab4 r9 20e веб.png|обрамить|центр|Рисунок 3.17. Задание "Перед записью в файл"]]




Строка 675: Строка 688:




[[Файл:Lab4 r9 22e.png|обрамить|центр|Рисунок 3.19. Ссылка на созданный Excel-файл]]
[[Файл:Lab4 r9 22e веб.png|обрамить|центр|Рисунок 3.19. Ссылка на созданный Excel-файл]]




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


<li>'''Завершите''' процесс.  
<li>Процесс завершён. </li>
</li>
</ol>
 
=== Чтение из файла Excel ===
<ol>
<li>'''Перейдите''' в "Редактор процессов" в роли Administrator.</li>
 
<li>'''Создайте''' новый бизнес-процесс "Пример 06-2" командой "Сохранить как" по правой кнопке мыши из "Пример 06-1".  
</li> <p></p>
 


<li>'''Запустите''' среду разработки.
[[Файл:Сохранить 06-1 как 06-2.png|обрамить|центр|альт=Создание процесса в веб-редакторе из другого командой "Сохранить как"|Рисунок 3.21. Создание процесса в веб-редакторе из другого командой "Сохранить как"]]
</li>


<li>'''Создайте''' новый бизнес-процесс "Пример 06-2".
</li>


<li>'''Добавьте''' элементы на схему бизнес-процесса в соответствии с Рис.3.21.
<li>'''Измените''' схему бизнес-процесса в соответствии с Рис.3.22.
</li><p></p>
</li><p></p>




[[Файл:Lab4 r9 24e.png|обрамить|центр|Рисунок 3.21. Схема бизнес-процесса "Пример 06-2"]]
[[Файл:442-Documents 3-20.png|обрамить|центр|альт=Схема процесса "Пример 06-2"|Рисунок 3.22. Схема бизнес-процесса "Пример 06-2"]]




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


<li>'''Создайте''' роль Студент.
<li>'''Переименуйте''' роль Преподаватель на Студент.
</li>
</li>


Выберите данную роль для стартового узла и узлов-действий.
[[Файл:Переименование роли веб редактор.png|500px|мини|центр|альт=Переименование роли в веб-редакторе|Рисунок 3.22а. Переименование роли в веб-редакторе]]


<li>'''Создайте''' переменные.
<li>'''Переменные''' в этом процессе те же, что и в "Пример 06-1". За исключением переменной "полученный excel файл", которую удаляем.  
</li>
</li>
В данном процессе используются те же переменные, что и в процессе "Пример 06-1", за исключением переменной "полученный excel файл".




<li>'''Создайте''' формы.
<li>'''Преобразуйте''' формы.
</li>
</li>


Создайте форму "Выполнить задание перед чтением из Excel-документа" вида, представленного на Рис.3.23.<p></p>
<p>Используйте компонент "Отобразить переменную" для переменных: "специальность", "номер курса", "дата создания документа". </p>
 


[[Файл:442-Documents 3-23.png|обрамить|центр|Рисунок 3.23. Форма "Выполнить задание перед чтением из Excel-документа"]]
<p>Используйте компонент "Отобразить связанные списки" для переменной "перечень дисциплин".  </p>


<p>Удалите форму для стартового узла - она не требуется. </p>


Создайте форму "Просмотреть данные считанные из Excel-документа" вида, представленного на Рис.3.24.
Удалите форму для узла-действия "Выполнить задание перед чтением из Excel-документа" и создайте форму вида, представленного на Рис.3.23.<p></p>




[[Файл:442-Documents 3-24.png|обрамить|центр|Рисунок 3.24. Форма "Просмотреть данные, считанные из Excel-документа"]]
[[Файл:442-Documents 3-23.png|обрамить|центр|Рисунок 3.23. Форма "Выполнить задание перед чтением из Excel-документа"]]




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


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


<li>'''Создайте''' обработчик.</li>
[[Файл:442-Documents 3-24.png|обрамить|центр|Рисунок 3.24. Форма "Просмотреть данные, считанные из Excel-документа"]]


Выберите класс обработчика "Excel Read handler" в задаче сценария "Прочесть данные из файла". <p></p>


<li>'''Задайте''' конфигурацию узла-сценария "Прочесть данные из файла".
</li><p></p>


[[Файл:442-Documents 3-25-01.png|обрамить|центр|Рисунок 3.25. Выбор класса обработчика и конфигурирование]]


[[Файл:Конфигурация Задачи сценария Прочесть из эксель.png|обрамить|центр|альт=Выбор класса обработчика и конфигурации "Чтение из файла Excel"|Рисунок 3.25. Выбор класса обработчика и конфигурации "Чтение из файла Excel"]]


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


Т.е. предполагается чтение из файла file.xlsx, который был создан при выполнении бизнес-процесса "Пример 06-1", использующего узел-сценарий "Сохранить данные в Excel документе". Этот сформированный файл и загружается в конфигурацию (обведено рамкой на Рис.3.25). Альтернативно можно использовать файловую переменную, предварительно загрузив в неё этот файл.


Считанные по соответствующим адресам значения будут сохранены непосредственно в переменные бизнес-процесса "Пример 06-2".
Считанные по соответствующим адресам значения будут сохранены непосредственно в переменные бизнес-процесса "Пример 06-2".
'''Замечание'''. Во время выполнения экземпляра бизнес-процесса потребуется обязательное наличие файла для чтения/записи данных, скачанного из "Пример 06-1".


<li>'''Сохраните''' бизнес-процесс. </li>
<li>'''Сохраните''' бизнес-процесс. </li>
Строка 763: Строка 781:
</li>
</li>


В задании "Просмотреть данные, считанные из Excel-документа", будут выведены данные, считанные из встроенного в процесс файла, в переменные процесса (Рис.3.26).<p></p>
В задании "Просмотреть данные, считанные из Excel документа", будут выведены данные, считанные из файла file.xlsx в переменные процесса (см. Рис.3.26).<p></p>


[[Файл:Посмотреть прочитанные данные Форма задания.png|обрамить|центр|Рисунок 3.26. Задание "Просмотреть данные, считанные из Excel документа"]]


[[Файл:Lab4 r9 30e.png|обрамить|центр|Рисунок 3.26. Задание "Просмотреть данные, считанные из Excel-документа"]]
Считанные значения соответствуют данным, введённым во время выполнения процесса "Пример 06-1".
 
</ol>
</ol>


Строка 784: Строка 802:
== Контрольные вопросы ==
== Контрольные вопросы ==


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


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


В заданиях настоящего занятия используется страница описания бизнес-процесса. Если эта страница задана в определении бизнес-процесса, то она открывается щелчком на строке описания бизнес-процесса в web-интерфейсе системы (Рис.4.05).
В заданиях занятия для Студии упоминается страница описания бизнес-процесса. В настоящей онлайн-версии практикума в веб-редакторе передача процесса на сервер не рассматривается.
 
 
[[Файл:R217.png|обрамить|центр|Рисунок 4.05. Строка описания бизнес-процесса]]
 
 
При щелчке на "Строку описания" открывается форма описания бизнес-процесса (Рис.4.06).
 
 
[[Файл:R218.png|обрамить|центр|Рисунок 4.06. Форма описания бизнес-процесса]]
 
 
Задать форму описания бизнес-процесса можно в среде разработки. Делается это следующим образом:
 
В свойствах определения бизнес-процесса заполняется поле "Значение" для свойства "Описание" (Рис.4.07).
 
 
[[Файл:442-Documents 4-07-01.png|обрамить|центр|Рисунок 4.07. Поле "Значение" свойства "Описание" бизнес-процесса]]
 
 
Чтобы его отредактировать, надо выбрать иконку с тремя горизонтальными точками правее от поля (Рис.4.08).
 
 
[[Файл:442-Documents 4-08-01.png|обрамить|центр|Рисунок 4.08. Редактирование поля "Описание"]]
 
 
После экспорта этого бизнес-процесса на ВЕБ-приложение значение свойства "Описание" будет видно в поле "Описание" в таблице раздела "Запустить процесс" (Рис.4.09).
 
 
[[Файл:442-Documents 4-09.png|обрамить|центр|Рисунок 4.09. Поле "Описание" в ВЕБ-интерфейсе]]
<p>&nbsp;</p>




Строка 1394: Строка 1384:


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


<ol>
<ol>
Строка 1414: Строка 1403:
# Для обработчика "Word Handler" необходимо значение "Файл" параметра "Input file" переименовать на "Файл в процессе".
# Для обработчика "Word Handler" необходимо значение "Файл" параметра "Input file" переименовать на "Файл в процессе".
# В описании "без прав" Светлана сократила часть описания и картинки в нём. Надо сделать как там.
# В описании "без прав" Светлана сократила часть описания и картинки в нём. Надо сделать как там.
# Поскольку дублирование id шаблонов документов устранено, можно удалить из графа процесса "Пример 05-1" узел промежуточного просмотра результатов. Соответственно необходимо изменить описание
# Поскольку дублирование id шаблонов документов устранено, можно удалить из графа процесса "Пример 05-1" узел промежуточного просмотра результатов. Соответственно необходимо изменить описание.
# После завершения отладки компонентов форм, работающих с отношениями, необходимо заменить работу с "Сотрудники Паучкова" на отношение "Руководитель". Для упрощения следует ориентироваться на практикум работы в DS.

Текущая версия на 23:06, 18 марта 2024

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

Версия 4.6.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" параметры, расположенные на странице "Настройки" -> "Настройки прав доступа".

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

Практическое занятие 05: "Работа с MS Word-документами"

Цель занятия

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

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

  1. Пройдите в браузере в приложение RunaWFE (облачную версию RunaWFE) по ссылке https://cloud.runawfe.ru/. Создайте свою компанию.
  2. Замечание: Пользователь Administrator создаётся при создании компании автоматически с паролем по умолчанию - "wf". В дальнейшем, зайдя в веб-приложение, можно установить свой пароль пользователя Administrator (в настройках пользователя - пункт меню "Исполнители").
  3. Зайдите в систему RunaWFE под учётной записью Administrator.
  4. Появится окно приложения. Перейдите в раздел «Редактор процессов».
  5. Создайте новый проект - "Занятие 05". Создайте в нём новый бизнес-процесс "Пример 05-1". Используйте следующие элементы для создания бизнес-процесса в соответствии с Рис.2.01:
  6.  • Начало
     • Задача сценария
     • Действие
     • Параллельный шлюз
     • Исключающий шлюз
     • Подпроцесс. 
    
    Рисунок 2.01. Схема бизнес-процесса "Пример 05-1"

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

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

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

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

  7. Создайте группы:
  8.  • Директор 
     • Отдел кадров
     • Бухгалтеры
     • Сотрудники. 
    

    (см. "Вводное занятие". [Прядок выполнения работы] Пункт 5, Рис.5.6).

  9. Инициализируйте роли "Директор", "Отдел кадров", "Бухгалтер" с помощью соответствующих групп (Директор, Отдел кадров, Бухгалтеры).
  10. Для этого вернитесь в редакторе к разрабатываемому процессу, перейдите на вкладку Роли, выберите роль и щёлкните на кнопку "Edit", находящуюся перед ней. Используйте инициализацию с помощью групп wf (подробнее см. Практическое занятие "Изучение перспективы операций", Порядок выполнения работы, Пункт 13, Рис.5.13-5.14).
  11. Создайте указанных ниже исполнителей и распределите их по группам:
  12. Добавьте в группу "Директор" исполнителей:

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

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

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

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

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

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

     • Жуков Иван Ильич 
     • Бражникова Ольга Иосифовна 
     • Личинкин Василий Федорович 
     • Гусеницын Михаил Васильевич 
     • Сверчков Иван Иванович
     • Паучков Петр Петрович 
     • Стрекозин Александр Николаевич.    
    
  13. Создайте отношение "Руководитель" (См. пример создания отношения в пунктах 10-11 раздела "Практическое занятие "Изучение перспективы ресурсов", Рис.3.5-3.6).
  14. Откройте отношение "Руководитель" и создайте пару "Паучков " - "Сверчков" (см.Рис.2.01а).
    Рисунок 2.01а. Отношение Руководитель


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

  15. Создайте переменные в соответствии с Рис.2.02.
  16. Рисунок 2.02. Переменные бизнес-процесса


    Для переменной "Отношение" необходимо использовать значение по умолчанию "Руководитель".

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

    Щёлкните правой кнопкой по стартовому узлу и выберите пункт "Create custom form" ("Создайте пользовательскую форму") (Рис.2.03).

    Рисунок 2.03. Бланк пользовательской формы

    Для создания поля щёлкните в этом меню кнопку "add new component". В меню формирования компонента из выпадающего списка "component" выберите компонент формы "Choose executor by relation" ("Выбрать пользователя по отношению [с параметром]"). Данный компонент формирует список выбора пользователя по отношению, отфильтрованного по параметру отношения (при этом группы в список не попадают) (Рис.2.04).

    Рисунок 2.04. Выбор типа компонента формы

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

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

    Аналогичным образом создайте поля "Размер премии" и "Описание выполненных работ". Эти поля имеют текстовое заполнение и для них следует выбирать тип компонента "Input variable" (Рис.2.04). Окончательный вид меню создания формы для стартового узла представлен на Рис.2.06.

    Рисунок 2.06. Окончательный вид интерфейса создания формы стартового узла

    HTML-текст заголовка на форме "Заявка на премирование сотрудника"

    <P style="text-align: center;">
    <SPAN style="font-size: 20px;"><SRTONG>Заявка на премирование сотрудника</STRONG></SPAN>
    </P>
    

    необходимо ввести руками в режиме редактирования HTML на форме. Для входа в него выберите ссылку "edit" справа от ссылки "html", с помощью которой можно управлять видимостью HTML-скрипта формы. Для сохранения введённого в скрипт изменения выберите ссылку "update" над скриптом.

  19. Настройте задачи сценариев.
  20. По задаче сценария "ФИО сотрудника" щёлкните правой кнопкой мыши и из выпавшего меню выберите команду "Configurate script" ("Отконфигурировать скрипт"). В поле "Handler" появившегося меню выберите обработчик "Get executor unfo" ("Получить информацию об исполнителе"). Меню приобретёт вид, показанный на Рис.2.07. Заполните остальные поля согласно этому рисунку и выберите кнопку "update".

    Рисунок 2.07. Параметры задачи сценария "ФИО сотрудника"

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

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

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

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

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

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


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

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

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

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

    Следующая задача сценария "Генерация служебной записки" создаст файл служебной записки.

    Предварительно в редакторе Word-файлов (они имеют расширение .DOCX) необходимо создать файл с шаблоном служебной записки, вид которого изображён на Рис.2.10.

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

    При выполнении экземпляра бизнес-процесса обработчик заменит выражения вида ${Переменная} на текущие значения одноимённых переменных из процесса в формате, определенном в среде разработки.

    Кроме ранее рассмотренных переменных, тут также используется поле fullName, определяющее ФИО пользователя (в именительном падеже) роли Руководитель (как свойство объекта Руководитель).

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


    Далее откройте меню конфигурирования узла-сценария "Генерация служебной записки". В качестве класса обработчика выберите - "Word handler". Заполните поля как показано на Рис.2.11.

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

    Рисунок 2.11. Конфигурирование задачи "Генерация служебной записки"
  21. Создайте пользовательскую форму для узла "Подписать служебную записку и отдать ее в отдел кадров".
  22. Отконфигурируйте файловую переменную "Служебная записка" как показано на Рис.2.12.
    Рисунок 2.12. Конфигурирование переменной "Служебная записка"

    Это будет единственное поле на форме (Рис.2.13).

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

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

  23. Создайте пользовательскую форму для узла "Получить подписанную служебную записку на премию сотруднику".
  24. Задание "Получить подписанную служебную записку на премию сотруднику" предназначено для фиксации факта получения бумажной служебной записки от Руководителя. Здесь важем сам факт прохождения документа, который и фиксируется фактом выполнения данного задания. Поэтому форма этого узла-действия не имеет полей.
  25. Создайте форму для узла "Рассмотреть заявку на премию" (Рис.2.14).
  26. Blank.png
    Рисунок 2.14. Форма "Рассмотреть заявку на премию"

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

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

    В этой форме Директор рассматривает заявку, вводит комментарии и одобряет или отказывает в премировании.

  27. Создайте форму для узла "Ознакомиться с решением об отказе" (Рис.2.15).
  28. Рисунок 2.15. Форма "Ознакомиться с решением об отказе"

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

    В HTML-скрипт формы добавьте заголовок:

    <P style="text-align: center;">
    <STRONG><SPAN style="font-size: 20px;">Отказ от премирования</SPAN></STRONG>
    </P> 
    
  29. Создайте форму для узла "Ознакомиться с сообщением о согласии" (Рис.2.16).
  30. Т.к. данная форма отличается от формы "Ознакомиться с решением об отказе" лишь заголовком, то можно воспользоваться функцией создания формы на основе существующей (Подробнее см. Практическое занятие "Изучение перспективы данных", Порядок выполнения работы, Пункт 6, Рис.4.30-4.31).
    Рисунок 2.16. Форма "Ознакомиться с сообщением о согласии"

    Необходимо только изменить заголовок в тексте формы.

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

    В появившемся окне введите название "Начисление" (допустимо не более 16 символов):

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

    Будет создана новая композиция и привязана к этому узлу-композиции.

  33. Создайте композицию вида, изображенного на Рис.2.19.
  34. Blank.png
    Рисунок 2.19. Схема композиции "Издание приказа и начисление премии"

    Проинициализируйте задачи ролями в соответствии с Рис.2.19.

  35. Создайте пользовательскую (Custom) форму для узла "Издать приказ о премировании".
  36. Расположите на ней единственный компонент для ввода переменной "Номер приказа".
    Рисунок 2.20. Форма "Издать приказ о премировании"
  37. Настройте задачи сценария.
  38. В задаче сценария "ФИО директора", используя класс обработчика "Получить информацию об исполнителе", определите фамилию, имя и отчество Директора (Рис.2.21).
    Рисунок 2.21. Определение ФИО директора

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

    Рисунок 2.22. Задача "Сгенерировать текст приказа"

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

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

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

  39. Сконфигурируйте узел-сценария "Сгенерировать приказ".
  40. Предварительно в любом редакторе сформируйте DOCX-файл с шаблоном приказа, как показано на Рис.2.23.
    Рисунок 2.23. Шаблон приказа

    Далее, нажав правую кнопку на узле-сценарии, вызовите меню конфигурирования сценария. Заполните поля, как показано на Рис.2.24, и выберите кнопку "Выбрать файл". Откроется файловое меню, в котором надо выбрать файл с шаблоном приказа. Вернувшись с выбранным файлом в меню, выберите кнопку "update". Выбранный вами файл шаблона будет встроен в процесс. Именно после этого меню приобретёт окончательный вид, показанный на Рис.2.24.

    Рисунок 2.24. Меню конфигурирования сценария "Сгенерировать приказ"
  41. Создайте пользовательскую форму для узла "Ознакомиться с приказом" (Рис.2.25).
  42. На ней файловую переменную "Приказ" с помощью компонента "Display variable" ("Отобразить переменную") отобразите "Как строку".
    Рисунок 2.25. Форма "Ознакомиться с приказом"

    Чтобы вставить в форму заголовок "Вам необходимо подойти в Отдел кадров и ознакомиться с приказом под подпись", выберите ссылку "edit" поля "html code" и вставьте этот текст как заголовок второго уровня в начале текста. Выберите ссылку "update" для сохранения.

  43. Создайте пользовательскую форму для узла "Получить подпись сотрудника об ознакомлении с приказом".
  44. Графическая форма может быть создана на основании формы "Ознакомиться с приказом" и содержит только поля "Сотрудник" и "Приказ". В созданной по прототипу форме добавьте поле "Сотрудник" и замените заголовок в поле "html code" (Рис.2.26):

    <h2>Ознакомить сотрудника с приказом под подпись.</h2>
    

    Выберите ссылку "update".

    Рисунок 2.26. Создание формы "Ознакомить сотрудника с приказом"

    Теперь в поле "html code" поменяйте местами блоки кода, относящиеся к полям "Приказ" и "Струдник" (Рис.2.27). Выберите ссылку "update" для сохранения внесённых правок. Обратите внимание, что порядок полей в списке тоже изменился.

    Рисунок 2.27. Окончательный вид формы "Ознакомить сотрудника с приказом"
  45. Создайте пользовательскую форму для узла "Начислить премию сотруднику" с полями "ФИО сотрудника", "Размер премии", "Описание выполненных работ", "Приказ".
  46. При этом для текстовой переменной "Описание выполненных работ" используйте форму отображения "Как неактивный компонент ввода", для остальных - "Как строка" (Рис.2.28). При создании этой формы вы можете использовать форму узла "Получить подпись сотрудника об ознакомлении с приказом" в качестве прототипа.
    Рисунок 2.28. Форма "Начислить премию сотруднику"
    Создайте в форме недостающие поля, в поле "html code" добавьте заголовок:

    <P style="text-align: center;">
    <SPAN style="font-size: 20px;"><SRTONG>Начислить премию сотруднику</STRONG></SPAN>
    </P>
    

    Выберите ссылку update. Отстройте порядок полей как показано на Рис.2.28.

  47. Создайте пользовательскую форму для узла "Ознакомиться с начислением премии" (Рис.2.29). В качестве прототипа целесообразно использовать предыдущую форму (Рис.2-28).
  48. Рисунок 2.29. Форма "Ознакомиться с начислением премии"
  49. Экспортируйте разработанный процесс "Пример 05-1" в раздел "Запустить процесс" RunaWFE.
  50. Для этого щёлкните разработанный бизнес-процесс правой кнопкой, в выпавшем меню выберите команду "Deploy".
  51. Войдите на сервер под пользователем Administrator.
  52. Процесс "Пример 05-1" должен запускать "Руководитель", поэтому дайте права на чтение, запуск и чтение экземпляров для пользователя "Паучков" (который является руководителем Сверчкова). Подробнее см. "Практикум. Вводное занятие", Порядок выполнения работы, Пункты 28-32.
    Рисунок 2.30. Обладатели полномочий на процесс "Пример 05-1"

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

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

  53. Выполните процесс "Пример 05-1".
  54. Войдите в систему под пользователем "Паучков", запустите процесс. Введите данные на стартовой форме и нажмите "Запустить" (Рис.2.31).
    Blank.png
    Рисунок 2.31. Стартовая форма процесса "Пример 05-1"

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

    Рисунок 2.31а. Проверка данных для оформления служебной записки

    Если данные введены правильно, "Паучков" должен выбрать кнопку "Правильно" для продолжения процесса.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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


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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

 

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

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

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

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

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

Зайдите в систему Runa-WEB под учётной записью Administrator.

Создайте в разделе «Редактор процессов» новый проект - "Занятие 06" (Подробнее см. "Практикум. Вводное занятие", Порядок выполнения работы, Пункт 16, Рис.5.15).


Запись в файл Excel

  1. Создайте новый бизнес-процесс "Пример 06-1".
  2. Добавьте элементы на схему бизнес-процесса в соответствии с Рис.3.01. Используйте элементы:
  3. Blank.png
     • Начало 
     • Действие 
     • Задача сценария 
     • Окончание.
    
    Рисунок 3.01. Схема бизнес-процесса "Пример 06-1"


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

  4. Создайте роли.
  5. В данном процессе используется единственная роль:

     ● "Преподаватель" - роль будет инициализирована пользователем, запустившим процесс.
    

    Выберите для узлов роли в соответствии с Рис.3.01.

  6. Создайте переменные для бизнес-процесса "Пример 06-1" согласно Рис.3.02.
  7. Blank.png
    Рисунок 3.02. Переменные бизнес-процесса "Пример 06-1"


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


    Рисунок 3.03. Выбор формата переменной "перечень дисциплин" бизнес-процесса "Пример 06-1"


  8. Создайте формы.
  9. Сначала создайте пользовательскую стартовую форму "Ввести данные для сохранения в Excel-документе" вида, представленного на Рис.3.04 (Подробнее см. Практическое занятие "03 Изучение перспективы данных", Порядок выполнения работы, Пункт 6, Рис.4.11-4.12).


    Рисунок 3.04. Стартовая форма "Ввести данные для сохранения в Excel-документе" бизнес-процесса "Пример 06-1"


    Размещаемые компоненты снабдите надписями:

     ● "Специальность" 
     ● "Номер курса"
     ● "Перечень дисциплин".
    

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

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

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


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

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


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


    Рисунок 3.05. Форма "Просмотреть данные перед сохранением в Excel-документе"


    На этой форме отображаются данные, введенные в стартовом узле.

    Для переменных "Специальность" и "Номер курса" для компонента "Display variable" ("Отобразить переменную") используется форма отображения "string" ("Как строку") (Рис.3.06).


    Рисунок 3.06. Отобразить переменную "Специальность" как строку


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


    Рисунок 3.07. Отобразить связанные списки


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


    Рисунок 3.08. Форма "Получить созданный Excel-документ"


    Используйте компонент "Display variable" ("Отобразить переменную") для файловой переменной "полученный excel файл".


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


  10. Создайте обработчик.
  11. Выберите класс обработчика "Execute formula" ("Выполнить формулу") в задаче сценария "Определение даты создания документа" (см. Практическое занятие "03 Изучение перспективы данных", Порядок выполнения работы, Пункт 8, Рис.4.39-4.40).
    В качестве конфигурации используйте скрипт "'дата создания документа'=current_date();". Таким образом с помощью функции current_date() будет определена текущая дата и сохранена в переменную "дата создания документа".
  12. Выберите класс и сконфигурируйте обработчик для узла-сценария "Сохранить данные в Excel-документе". Для этого щёлкните правой кнопкой по этому узлу и выберите в выпавшем меню пункт "Configure script" ("Сконфигурировать обработчик") для показа списка обработчиков (Рис.3.10а).
  13. Blank.png


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


    В появившемся интерфейсе из выпадающего списка "Handler" выберите обработчик "ExcelSaveHandler" (Сохранить данные в Excel файл), а затем выберите кнопку "update".


    Рисунок 3.11. Вызов списка обработчиков и выбор обработчика ExcelSaveHandler


    В поле "Input file" выбираем значение "Файл" (то есть файл шаблона, локализованный в процессе).

    Следующим шагом во внешнем редакторе создайте файл шаблона template.xlsx (Рис.3.12).


    Рисунок 3.12. Текст Excel-шаблона


    Теперь в интерфейсе, изображённом на Рис.3.11, выберите кнопку "Выбрать файл". На экран будет выдан интерфейс выбора файла из дерева файлов. Необходимо в нём найти созданный только что файл шаблона template.xlsx и его загрузить. После этого выберите кнопку "update".


    В разделе "Output file" определите параметры "File variable" и "File name" как показано на Рис.3.15.


    Используя ссылки:

    • Добавить ячейку
    • Добавить горизонтально
    • Добавить вертикально,

    определите структуру данных выходного файла, приведенную на Рис.3.15.


    Рисунок 3.15. Структура данных выходного файла


    На Рис.3.15 действуют обозначения:

    • входной файл - это файл шаблона, на основе которого будет создан выходной 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 будут записаны значения списковой переменной "перечень дисциплин", причём элементы списка будут располагаться вертикально, следующий под предыдущим.

    Замечание. Альтернативно для задания входного и выходного файлов могут использоваться файловые переменные.

  14. В разделе script будет автоматически сформирован скрипт формирования значений параметров.
  15.   
  16. Сохраните процесс.
  17. Экспортируйте разработанный процесс "Пример 06-1" в раздел "Запустить процесс" RunaWFE.
  18. Для этого щёлкните разработанный бизнес-процесс правой кнопкой, в выпавшем меню выберите команду "Deploy".
  19. Войдите в систему под пользователем Administrator, пароль – wf.
  20. Дайте полномочия группе "Преподаватели" на запуск и чтение процесса и чтение экземпляра процесса "Пример 06-1".
  21. Войдите в систему под пользователем, входящим в группу "Преподаватели", например "Стрекозин", пароль - 123.
  22. Запустите экземпляр бизнес-процесса "Пример 06-1".
  23. Введите данные на стартовой форме, например:


    Рисунок 3.16. Ввод данных на стартовой форме


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


    Рисунок 3.17. Задание "Перед записью в файл"


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


    Рисунок 3.18. Граф выполнения процесса "Пример 06-1"


    Будет получено задание со ссылкой на созданный Excel-файл. Выберите эту ссылку:


    Рисунок 3.19. Ссылка на созданный Excel-файл


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


    Рисунок 3.20. Созданный с помощью обработчика файл file.xlsx


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

  24. Процесс завершён.

Чтение из файла Excel

  1. Перейдите в "Редактор процессов" в роли Administrator.
  2. Создайте новый бизнес-процесс "Пример 06-2" командой "Сохранить как" по правой кнопке мыши из "Пример 06-1".

  3. Создание процесса в веб-редакторе из другого командой "Сохранить как"
    Рисунок 3.21. Создание процесса в веб-редакторе из другого командой "Сохранить как"


  4. Измените схему бизнес-процесса в соответствии с Рис.3.22.

  5. Схема процесса "Пример 06-2"
    Рисунок 3.22. Схема бизнес-процесса "Пример 06-2"


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

  6. Переименуйте роль Преподаватель на Студент.
  7. Переименование роли в веб-редакторе
    Рисунок 3.22а. Переименование роли в веб-редакторе
  8. Переменные в этом процессе те же, что и в "Пример 06-1". За исключением переменной "полученный excel файл", которую удаляем.
  9. Преобразуйте формы.
  10. Используйте компонент "Отобразить переменную" для переменных: "специальность", "номер курса", "дата создания документа".

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

    Удалите форму для стартового узла - она не требуется.

    Удалите форму для узла-действия "Выполнить задание перед чтением из Excel-документа" и создайте форму вида, представленного на Рис.3.23.


    Рисунок 3.23. Форма "Выполнить задание перед чтением из Excel-документа"


    Форму для узла "Просмотреть данные, считанные из Excel документа" приведите к виду, представленному на Рис.3.24.


    Рисунок 3.24. Форма "Просмотреть данные, считанные из Excel-документа"


  11. Задайте конфигурацию узла-сценария "Прочесть данные из файла".

  12. Выбор класса обработчика и конфигурации "Чтение из файла Excel"
    Рисунок 3.25. Выбор класса обработчика и конфигурации "Чтение из файла Excel"


    Т.е. предполагается чтение из файла file.xlsx, который был создан при выполнении бизнес-процесса "Пример 06-1", использующего узел-сценарий "Сохранить данные в Excel документе". Этот сформированный файл и загружается в конфигурацию (обведено рамкой на Рис.3.25). Альтернативно можно использовать файловую переменную, предварительно загрузив в неё этот файл.

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

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

  13. Сохраните бизнес-процесс.
  14. Экспортируйте бизнес-процесс "Пример 06-2" в раздел "Запустить процесс", используя команду Deploy.
  15. Войдите в систему под пользователем Administrator, пароль –wf.
  16. Дайте права "Чтение", "Запуск", "Чтение экземпляра" на процесс "Пример 06-2" для группы "Группа МИБ-1".
  17. Войдите в систему под пользователем, входящим в группу "Группа МИБ-1", например "Гусеницын".
  18. Запустите экземпляр бизнес-процесса "Пример 06-2" и доведите его до завершения.
  19. В задании "Просмотреть данные, считанные из Excel документа", будут выведены данные, считанные из файла file.xlsx в переменные процесса (см. Рис.3.26).

    Рисунок 3.26. Задание "Просмотреть данные, считанные из Excel документа"

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

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

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

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

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

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

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

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

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

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

Цель работы

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

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

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

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

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

 

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

Замечание 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

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


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

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

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

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


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


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

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

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

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

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

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

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

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

Заявление должно содержать:

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

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

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


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

 

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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


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

 

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

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

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


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


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

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

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

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

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

В форме задания "Издать приказ" инспектор кадровой службы вводит номер приказа (значение типа "Строка"). После выполнения задания инспектором кадровой службы 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-сценарий получает задание "Сгенерировать служебную записку на командировку".

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

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

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

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

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


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

 

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

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

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


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

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

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

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

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


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

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

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

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

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

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

 

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

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

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


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

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

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

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

В форме задания "Издать приказ" инспектор кадровой службы вводит номер приказа (значение типа "Строка"). После выполнения задания инспектором кадровой службы 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-сценарий получает задание "Сгенерировать служебную записку на сдвиг графика".


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

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

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


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


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

 

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

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

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


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

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

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

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

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

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

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

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

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


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

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

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

Заявление должно содержать:

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

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


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


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

 

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

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

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


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

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

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

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

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

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

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

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


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

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

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

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


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

 

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

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

Это оформление отсутствия сотрудника на работе, причина которого неизвестна.


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

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

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

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

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

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


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


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

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


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

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

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

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


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

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

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

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


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


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

 

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

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

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

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

 

Ссылки

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


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

  1. Необходимо актуализировать ссылки, переадресовав их на страницы из раздела "Cloud".
  2. Для обработчика "Word Handler" необходимо значение "Файл" параметра "Input file" переименовать на "Файл в процессе".
  3. В описании "без прав" Светлана сократила часть описания и картинки в нём. Надо сделать как там.
  4. Поскольку дублирование id шаблонов документов устранено, можно удалить из графа процесса "Пример 05-1" узел промежуточного просмотра результатов. Соответственно необходимо изменить описание.