Oracle Workflow

42
Oracle Workflow Стоян Иванов Семантек България ООД

description

Oracle Workflow. Стоян Иванов Семантек България ООД. За мен. 12 години опит с Oracle като разработчик и администратор 9 години опит като Senior Oracle consultant във Фадата и Семантек България ООД Технически директор на Семантек България ООД в периода от 1998 до 2003 - PowerPoint PPT Presentation

Transcript of Oracle Workflow

Oracle Workflow

Стоян Иванов

Семантек България ООД

За мен

• 12 години опит с Oracle като разработчик и администратор

• 9 години опит като Senior Oracle consultant във Фадата и Семантек България ООД

• Технически директор на Семантек България ООД в периода от 1998 до 2003

• Управител на Семантек България ООД от 2003• Разработка на системи с Oracle Workflow за големи

клиенти като Airbus (EADS), DaimlerChrysler Services Assekuranz Makler (DCSAM), Siemens Dematic

Цели на презентацията

• Запознаване с концепциите на Oracle Workflow

• Запознаване с елементите на Oracle Workflow и тяхната функция

• Запознаване с Oracle Workflow Builder• Запознаване с Oracle Workflow API• Запознаване с web интерфейса на Oracle

Workflow• Показване на практически пример на

разработване на проста система с Oracle Workflow

Неща, за които не се говори в тази презентация

• Oracle Internet Directory

• Oracle Applications

• Детайлно описване на Oracle Workflow API

Цели на презентацията

• Запознаване с концепциите на Oracle Workflow

• Запознаване с елементите на Oracle Workflow и тяхната функция

• Запознаване с Oracle Workflow Builder• Запознаване с Oracle Workflow API• Запознаване с web интерфейса на Oracle

Workflow• Показване на практически пример на

разработване на проста система с Oracle Workflow

Концепции на Oracle Workflow

• Моделиране, автоматизация и непрекъснато подобряване на бизнес-процесите в организацията

• Разпространяване на бизнес-информацията до правилните хора в превилния етап от бизнес-процеса

• Дефиниране и лесна промяна на бизнес-правилата на организацията

• Система за уведомяване на контрагентите в и извън организацията

• Улеснена интеграция между различни системи

Цели на презентацията

• Запознаване с концепциите на Oracle Workflow

• Запознаване с елементите на Oracle Workflow и тяхната функция

• Запознаване с Oracle Workflow Builder• Запознаване с Oracle Workflow API• Запознаване с web интерфейса на Oracle

Workflow• Показване на практически пример на

разработване на проста система с Oracle Workflow

Основни компоненти

• Oracle Workflow Builder

• Workflow Engine

• Web Interface

• API – Java and PL/SQL

Процеси в Oracle Workflow

• Описват бизнес процеси• Дефинират се от разработчика• Верига от действия и взаимовръзки между

тях• Всяко действие е автоматизирана процедура

или взаимодействие с потребителите на процеса или отделен под-процес

• Инициира се отвън, най-често използвайки API-то на Oracle Workflow

Процеси в Oracle Workflow

Дефиниция на бизнес процес

• Item Type– Съдържа всички елементи, необходими за

дефинирането на един или няколко взаимосвързани бизнес процеса

– Най-малката единица, която може да бъде съхранявана

– Дефинира работата, която трябва да бъде свършена

• Item Key– Идентифицира едно конкретно стартиране на

бизнес процес– Трябва да бъде уникален в рамките на един Item

Type

Елементи на Oracle Workflow

• Item Type– Атрибути– Процеси– Функции– Уведомления– Съобщения– Под-процеси– Събития– Изброени типове

• Стойности

Атрибути

• Съдържат информация, необходима за процеса и неговата комуникация с външния свят

• Служат също за глобални променливи

• Съдържат данни от определен тип

Типове на атрибутите

• Text• Number• Date• Lookup• Form*• URL• Document – PL/SQL document, PL/SQL CLOB

document, PL/SQL BLOB document• Role• Attribute• Event

Процеси

• Описват целия или част от работния процес в организацията

• Състоят се от стъпки, някои от които могат да бъдат под-процеси

• Задължително трябва да имат стартова стъпка и завършваща стъпка

Функции

• Реализират една конкретна стъпка от процеса

• Могат да извикват стандартна или потребителска функция на PL/SQL, а така също и външна функция

Функции

Функции – PL/SQL

procedure <procedure name> (itemtype in varchar2,

itemkey in varchar2,

actid in number,

funcmode in varchar2,

resultout out varchar2

)

Функции – Javapackage oracle.apps.fnd.wf;import java.io.*;import java.sql.*;import java.math.BigDecimal;import oracle.sql.*;import oracle.jdbc.driver.*;import oracle.apps.fnd.common.*;import oracle.apps.fnd.wf.engine.*;import oracle.apps.fnd.wf.*;public class className extends WFFunctionAPI {public boolean execute(WFContext pWCtx){ErrorStack es = pWCtx.getWFErrorStack();try{WFAttribute lAAttr = new WFAttribute();WFAttribute lIAttr = new WFAttribute();loadActivityAttributes(pWCtx, itemType, itemKey, actID);loadItemAttributes(pWCtx);lAAttr = getActivityAttr(”AATTR”);lIAttr = getItemAttr(”IATTR”);…

Уведомления (Notifications)

• Използва системата за уведомление на Oracle Workflow, за да изпрати съобщение на потребител или група от потребители

• Задължително има получател• След като получателя реагира на

съобщението, информира OWF, за да може да продължи процеса

• Може да изпълни зададена PL/SQL функция след като получателя на съобщението реагира или, в случай че не реагира, след зададен timeout

Уведомления

Съобщения

• Дефинират се отделно от уведомленията

• Могат да бъдат в текстов или HTML вид, позволявайки да се подготви доста сложно и добре изглеждащо съобщение

• Могат да използват атрибути за генериране на динамично съдържание на съобщението

Съобщения

Под-процеси

• Позволяват обособени части от даден процес да бъдат дефинирани и разработени отделно от основния процес

• Позволяват един и същи под-процес да бъде използван на няколко места

• Позволяват обособени части от процеса да бъдат пропуснати в началото и разработени допълнително

Събития

• Възможност на процеса да комуникира с останалия свят

• Позволяват на процеса да реагира на дадено събитие или да предизвика дъбитие

• Събитията се генерират от така наречената Business Event System – система, базирана на AQ, позволяваща връзка със външни системи

Основни стъпки в разработката на Oracle Workflow процес

• Създаване на Item Type• Дефиниране на атрибути• Дефиниране на съобщения• Дефиниране на процес заедно с неговите

стъпки (функции, уведомления, събития, под-процеси)

• Създаване на диаграмата на процеса/процесите

• Запазване на дефинициите в базата• Създаване на PL/SQL процедурите,

използвани от стъпките на процеса

Цели на презентацията

• Запознаване с концепциите на Oracle Workflow

• Запознаване с елементите на Oracle Workflow и тяхната функция

• Запознаване с Oracle Workflow Builder• Запознаване с Oracle Workflow API• Запознаване с web интерфейса на Oracle

Workflow• Показване на практически пример на

разработване на проста система с Oracle Workflow

Oracle Workflow Builder

• Графичен потребителски интерфейс за създаване и модифициране на Item Type-ове

• Позволява съхраняване както във файл в операционната систем, така и в базата от данни

Елементи на Workflow Builder

Елементи на Workflow Builder

Цели на презентацията

• Запознаване с концепциите на Oracle Workflow

• Запознаване с елементите на Oracle Workflow и тяхната функция

• Запознаване с Oracle Workflow Builder• Запознаване с Oracle Workflow API• Запознаване с web интерфейса на Oracle

Workflow• Показване на практически пример на

разработване на проста система с Oracle Workflow

Oracle Workflow API

• Представлява набор от обекти в базата и/или Java за манипулиране и управление на Oracle Workflow

• Някои функции са налични само в PL/SQL

Oracle Workflow API

• Workflow Engine API• Workflow Purge API• Workflow Monitor API• Directory Service API• Notification System API• Business Event System API• Workflow Queue API• Oracle Workflow Views

Workflow Engine API

• PL/SQL пакет WF_ENGINE

• Процедури и функции за създаване на процес

• Процедури и функции за работа с атрибутите на процес

• Процедури и функции за стартиране на процес

Workflow Purge API

• PL/SQL пакет WF_PURGE

• Позволява да се премахват ненужни и стари процеси

Workflow Monitor API

• PL/SQL пакет WF_MONITOR

• Позволява процесите да бъдат лесно наблюдавани– GetAccessKey– GetDiagramURL– GetEnvelopeURL– GetAdvancedEnvelopeURL

Цели на презентацията

• Запознаване с концепциите на Oracle Workflow

• Запознаване с елементите на Oracle Workflow и тяхната функция

• Запознаване с Oracle Workflow Builder• Запознаване с Oracle Workflow API• Запознаване с web интерфейса на Oracle

Workflow• Показване на практически пример на

разработване на проста система с Oracle Workflow

Цели на презентацията

• Запознаване с концепциите на Oracle Workflow

• Запознаване с елементите на Oracle Workflow и тяхната функция

• Запознаване с Oracle Workflow Builder• Запознаване с Oracle Workflow API• Запознаване с web интерфейса на Oracle

Workflow• Показване на практически пример на

разработване на проста система с Oracle Workflow

Благодаря ви за вниманието

За контакти:

Стоян Иванов

Тел: (+359 2) 4005621

Факс: (+359 2) 4005646

E-mail: [email protected]

www.semantec.de