430 likes | 655 Views
Oracle Workflow. Стоян Иванов Семантек България ООД. За мен. 12 години опит с Oracle като разработчик и администратор 9 години опит като Senior Oracle consultant във Фадата и Семантек България ООД Технически директор на Семантек България ООД в периода от 1998 до 2003
E N D
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
Дефиниция на бизнес процес • 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 )
Функции – Java package 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-ове • Позволява съхраняване както във файл в операционната систем, така и в базата от данни
Цели на презентацията • Запознаване с концепциите на 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: Stoyan.Ivanov@semantec.bg www.semantec.de