Workflow: Отправка уведомления
Данная статья описывает процесс создания workflow процесса для отправки уведомления.
Версия Oracle Workflow Builder 2.6.3.5
1 Создание нового Workflow
Открываем Oracle Workflow Builder
Открываем файл WF\DATA\US\WFSTD (находится в директории установленного workflow)
2 Создаем новый Item Type
- Заполняем поля:
- Internal Name: XX_DEMO
- Display Name: XX Demo
- Description: Тестовый пример
3 Создаем новый Process
- Заполняем поля:
- Internal Name: XX_DEMO_PROCESS
- Display Name: XX Demo process
- Description: Тестовый пример
4 Создаём Attrubute
- Заполняем поля:
- Internal Name: P_NUMBER
- Display Name: Number
- Description: Число
- Type: Number
- Заполняем поля:
- Internal Name: P_TEXT
- Display Name: Text
- Description: Текст
- Type: Text
- Lenght: 400
5 Заполняем логику процесса
Выполняем double click по иконке процесса, откроется окно содержания процесса
Теперь необходимо создать функции Start и Stop. Их можно создать вручную или же перетащить из workflow Standart
Открываем свойства функции Start и переходим на вкладку Node
Для свойства Start/End выставляем значение Start.
Открываем свойства функции End,переходим на вкладку Node, для свойства Start/End выставляем значение End.
6 Создаем Message
- Заполняем поля:
- Internal Name: XX_FIRST_MESSAGE
- Display Name: XX First Message
- Description: Тестовое сообщение
Переходим на вкладку Body и заполняем текст сообщения
Непосредственно в сообщение надо перетащить атрибуты.
7 Создаем Notification
- Заполняем поля:
- Internal Name: XX_FIRST_NOTIFICATION
- Display Name: XX First Notification
- Description: Тестовое уведомление
- Message: XX First Message
Помещаем уведомление в процесс
C помощью стрелочек задаем последовательность действий. Стрелки создаются с помощью правой кнопки мыши.
Открываем свойства уведомления и задаем получателя.
Получателем можно устанавливать недосредственно USER_NAME или же роль.
8 Сохраняем Workflow
Можно сохранить на локальный компьютер (затем загрузить в базу через wfload), а можно сразу в базу.
9 Запуск Workflow
Запуск workflow из pl/sql
DECLARE p_itemtype varchar2(100) := 'XX_DEMO'; p_itemkey NUMBER := 1; -- уникальный id, должен меняться BEGIN wf_engine.threshold := 2; wf_engine.createprocess(p_itemtype, p_itemkey, 'XX_DEMO_PROCESS'); --set the attribute values in workflow so that you can use them in notifications wf_engine.setitemattrtext(p_itemtype, p_itemkey, 'P_NUMBER', 1); wf_engine.setitemattrtext(p_itemtype, p_itemkey, 'P_TEXT','А роза упала на лапу Азора'); -- start the workflow process wf_engine.startprocess(p_itemtype, p_itemkey); -- для немедленной обработки workflow wf_engine.background(p_itemtype); END;
10 Просмотр уведомления
Полномочия Системный администратор. Поток операций : Поток операций администратора: Уведомления
Для того, чтобы уведомление приходило на почту — назначить пользователю сотрудника; заполнить email сотруднику; в параметрах пользователя установить Стиль электронной почты — Сообщения HTML с вложениями.