BusinessRuleGuide

Материал из RunaWFE
Перейти к навигации Перейти к поиску

Пример бизнес-процесса, содержащего элемент бизнес-правило

Сценарий процесса

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

Создание процесса

1. Запустите среду разработки. Для этого кликните на ярлык "Developer Studio" на рабочем столе, или выполните команду меню Пуск / Программы / RunaWFE Free / Feveloper Studio. Появится окно среды разработки (см. "Практикум. Вводное занятие", Порядок выполнения работы, Пункт 15, Рис 5.14).

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

3. Создайте новый бизнес-процесс. Название процесса – “Время работы”. (Подробнее см. "Практикум. Вводное занятие", Порядок выполнения работы, Пункт 17, Рис 5.16).

4. Нарисуйте следующий граф бизнес-процесса:

Граф бизнес-процесса “Время работы”
Рисунок 1. Граф бизнес-процесса “Время работы”

5. Переименуйте «Бизнес-правило 1» в «Расчет заработной платы», а «Задача сценария 1» в «Отгрузить данные во внутреннее хранилище», для этого кликните по надписи элемента и введите необходимое значение.

6. Создайте пользовательский тип данных «ЗП Сотрудников» в двумя атрибутами Сотрудник (тип данных - исполнитель) и Заработная плата (тип данных – целое число) (Рис. 2). Подробное описание создания пользовательского типа данных см. в Практикум. Внутреннее хранилище данных.

Создание пользовательского типа данных "ЗП Сотрудников"
Рисунок 2. Создание пользовательского типа данных "ЗП Сотрудников"

7. Создайте переменные бизнес-процесса как показано на рисунке 3, для этого откройте вкладку “Переменные”, нажмите кнопку “Создать” и следуйте инструкции.

Создание переменных бизнес-процесса
Рисунок 3. Создание переменных бизнес-процесса

8. Создайте роль и свяжите ее с узлом “Начало” (см. "Практикум. Вводное занятие", Порядок выполнения работы, Пункт 21, Рис 5.21).

9. Выполните двойной клик на узле начало, во всплывшем окне выберите произвольную форму. Создайте форму аналогично рисунку ниже (Рис. 4)

Создание формы внутреннего редактора
Рисунок 4. Создание формы внутреннего редактора

10. Нажмите правую кнопку мыши на узле “Бизнес правило 1”, выберите пункт меню “Конфигурация”. Бизнес-правило позволяет задать условие/несколько условий, при выполнении которого будет выполнена заданная формула. В случае, если ни одно из условий не выполняется, будет выполнена формула в графе “Во всех остальных случаях”(Рис. 5)

Конфигурация элемента Бизнес-правило
Рисунок 5. Конфигурация элемента Бизнес-правило

11. В первую колонку таблицы внесите переменную “Тип_договора”, во вторую условие(равно), в третью строку “Оклад”. Для внесения переменной в таблицу нажмите кнопку справа от текстового поля, в открывшемся окне выберите необходимую переменную.

12. Нажав на кнопку “Формула1” откроется окно редактирования формулы. Введите формулу для расчета зарплаты в случае, когда тип договора равняется «Оклад» (Рис. 7). «Бизнес-правило» поддерживает выполнение множественных формул, поэтому здесь же проинициализируем переменную «ЗП_Сотрудников.Сотрудник» ролью 1.

Файл:Brg Рисунок 6. Формула для расчета зарплаты при типе договора Оклад.png
Рисунок 6. Формула для расчета зарплаты при типе договора «Оклад»

13. Нажмите на иконку «+» справа в первой строке, это добавит строку, для введения второго условия.

14. Заполните вторую строку таблицы следующими данными: • Первая переменная – Количество отработанных часов • Условие - больше • Вторая переменная – Трудовая норма • Формула для расчета ЗП с учетом сверхурочных – «ЗП_Сотрудников.Заработная_плата = Трудовая_норма*Ставка + (Количество_отработанных_часов - Трудовая_норма)*Ставка_сверхурочно ЗП_Сотрудников.Сотрудник = Роль1»

Формула для расчета ЗП с учетом сверхурочных
Формула для расчета ЗП с учетом сверхурочных

15. Нажмите на кнопку справа от графы “Во всех остальных случая” и введите формулу для расчета заработной платы без переработки – «ЗП_Сотрудников.Заработная_плата = Количество_отработанных_часов * Ставка ЗП_Сотрудников.Сотрудник = Роль1»

У вас должна была получиться следующая конфигурация элемента «бизнес-правило» (Рис. 7)

Конфигурация элемента "Бизнес-правило"
Рисунок 7. Конфигурация элемента "Бизнес-правило"

16. Настройте элемент «Задача сценария», как показано на рисунке 8. Подробное описание настройки см. в Практикум. Внутреннее хранилище данных.

Конфигурация элемента "Задача сценария"
Рисунок 8. Конфигурация элемента "Задача сценария"

Бизнес-процесс “Время работы” готов.

Создание файла-архива бизнес-процесса и загрузка его в систему

1. Экспортируйте процесс “Расчет зарплаты” в файл-архив командой "Файл/Экспорт процесса" (см. "Практикум. Вводное занятие", Порядок выполнения работы, Пункт 23, Рис 5.23).

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

Бизнес-процесс загружен на RunaWFE сервер
Рисунок 9. Бизнес-процесс загружен на RunaWFE сервер

3. Кликните на иконке бизнес-процесса. Вы будете перенаправлены на стартовую форму ввода типа договора и количества отработанных часов.

Форма ввода переменных
Рисунок 10. Форма ввода переменных

Введите любое значение и нажмите запустить.

4. Кликните на пункт меню "Запущенные процессы". Найдите в появившемся окне строку, соответствующую запущенному экземпляру бизнес-процесса - в ней число в поле номер должно совпадать с тем, которое было отображено в сообщении о запуске экземпляра процесса (Рис. 11)

Запущенный процесс Время работы
Рисунок 11. Запущенный процесс Время работы

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

Внутреннее хранилище. Excel
Рисунок 12. Excel. Внутреннее хранилище

По умолчанию для Windows файл сохраняется в C:\Users\<Пользователь>\AppData\Roaming\runawfe\excelstorage, но путь можно изменить (см. Практикум. Внутреннее хранилище данных.).