1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu Oracle Workflow API Reference doc

408 476 1
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Oracle Workflow API Reference
Tác giả Siu Chang, Clara Jaeckel
Trường học Oracle Corporation
Chuyên ngành Database and Workflow Integration
Thể loại reference documentation
Năm xuất bản 2003
Thành phố Redwood City
Định dạng
Số trang 408
Dung lượng 0,93 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Online Documentation If you are using the version of Oracle Workflow embedded in OracleApplications, note that all Oracle Applications documentation isavailable online HTML or PDF.. If y

Trang 1

Oracler WorkflowAPI Reference

Release 2.6.3

Part No B10286–02

September 2003

Trang 2

Oracle Workflow API Reference, Release 2.6.3

Part No B10286–02

Copyright E 2003 Oracle Corporation All rights reserved.

Primary Authors: Siu Chang, Clara Jaeckel

Contributors: George Buzsaki, John Cordes, Mark Craig, Mark Fisher, Kevin Hudson, George Kellner, Angela Kung, David Lam, Jin Liu, Kenneth Ma, Steve Mayze, Santhana Natarajan, Tim Roveda, Robin Seiden, Sachin Sharma, Sheryl Sheh, Susan Stratton

The Programs (which include both the software and documentation) contain proprietary information of Oracle Corporation; they are provided under a license agreement containing restrictions on use and disclosure and are also protected by copyright, patent and other intellectual and industrial property laws Reverse engineering, disassembly or decompilation of the Programs, except to the extent required to obtain interoperability with other independently created software or as specified by law, is prohibited

The information contained in this document is subject to change without notice If you find any problems in the documentation, please report them to us in writing Oracle Corporation does not warrant that this document is error–free Except as may be expressly permitted in your license agreement for these Programs, no part of these Programs may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of Oracle Corporation.

If the Programs are delivered to the U.S Government or anyone licensing or using the programs on behalf of the U.S Government, the following notice is applicable:

Restricted Rights Notice Programs delivered subject to the DOD FAR Supplement are ”commercial computer software” and use, duplication, and disclosure of the Programs, including documentation, shall be subject to the licensing restrictions set forth in the applicable Oracle license agreement Otherwise, Programs delivered subject

to the Federal Acquisition Regulations are ”restricted computer software” and use, duplication, and disclosure of the Programs shall be subject to the restrictions in FAR 52.227–19, Commercial Computer Software – Restricted Rights (June, 1987) Oracle Corporation, 500 Oracle Parkway, Redwood City, CA 94065.

The Programs are not intended for use in any nuclear, aviation, mass transit, medical, or other inherently dangerous applications It shall be the licensee’s responsibility to take all appropriate fail–safe, backup,

redundancy, and other measures to ensure the safe use of such applications if the Programs are used for such purposes, and Oracle disclaims liability for any damages caused by such use of the Programs.

Oracle is a registered trademark, and OracleMetaLink, Oracle Store, Oracle8i, Oracle9i, PL/SQL, and SQL*Plus are

trademarks or registered trademarks of Oracle Corporation Other names may be trademarks of their respective owners.

Trang 3

Preface xiii

Audience for This Guide xiv

How To Use This Guide xiv

Documentation Accessibility xiv

Other Information Sources xv

Online Documentation xv

Related User’s Guides xvi

Guides Related to All Products xvi

User Guides Related to This Product xvii

Installation and System Administration xviii

Other Implementation Documentation xx

Training and Support xxi

Do Not Use Database Tools to Modify Oracle Applications Data xxii

About Oracle xxiii

Your Feedback xxiii

Chapter 1 Overview of Oracle Workflow 1 – 1

Overview of Oracle Workflow 1 – 2 Major Features and Definitions 1 – 3 Workflow Processes 1 – 6 Oracle Workflow Procedures and Functions 1 – 8

Trang 4

Chapter 2 Workflow Engine APIs 2 – 1

Overview of the Workflow Engine 2 – 2Oracle Workflow Java Interface 2 – 4Additional Workflow Engine Features 2 – 7Workflow Engine APIs 2 – 19CreateProcess 2 – 21SetItemUserKey 2 – 23GetItemUserKey 2 – 24GetActivityLabel 2 – 25SetItemOwner 2 – 26StartProcess 2 – 28LaunchProcess 2 – 30SuspendProcess 2 – 32ResumeProcess 2 – 34AbortProcess 2 – 36CreateForkProcess 2 – 38StartForkProcess 2 – 40Background 2 – 41AddItemAttribute 2 – 43AddItemAttributeArray 2 – 46SetItemAttribute 2 – 48setItemAttrFormattedDate 2 – 51SetItemAttrDocument 2 – 52SetItemAttributeArray 2 – 54getItemTypes 2 – 57GetItemAttribute 2 – 58GetItemAttrDocument 2 – 60GetItemAttrClob 2 – 62getItemAttributes 2 – 63GetItemAttrInfo 2 – 64GetActivityAttrInfo 2 – 65GetActivityAttribute 2 – 66GetActivityAttrClob 2 – 68getActivityAttributes 2 – 69BeginActivity 2 – 70CompleteActivity 2 – 72CompleteActivityInternalName 2 – 75AssignActivity 2 – 77Event 2 – 78HandleError 2 – 80SetItemParent 2 – 83ItemStatus 2 – 85

Trang 5

getProcessStatus 2 – 86Workflow Function APIs 2 – 87loadItemAttributes 2 – 88loadActivityAttributes 2 – 89getActivityAttr 2 – 90getItemAttr 2 – 92setItemAttrValue 2 – 93execute 2 – 94Workflow Attribute APIs 2 – 95WFAttribute 2 – 97value 2 – 98getName 2 – 99getValue 2 – 100getType 2 – 101getFormat 2 – 102getValueType 2 – 103toString 2 – 104compareTo 2 – 105Workflow Core APIs 2 – 106CLEAR 2 – 107GET_ERROR 2 – 108TOKEN 2 – 109RAISE 2 – 110CONTEXT 2 – 113TRANSLATE 2 – 115Workflow Purge APIs 2 – 116Items 2 – 118Activities 2 – 119Notifications 2 – 120Total 2 – 121TotalPERM 2 – 122Directory 2 – 123Purge Obsolete Workflow Runtime Data Concurrent

Program 2 – 124Workflow Monitor APIs 2 – 126GetAccessKey 2 – 127GetDiagramURL 2 – 128GetEnvelopeURL 2 – 130GetAdvancedEnvelopeURL 2 – 132Oracle Workflow Views 2 – 134WF_ITEM_ACTIVITY_STATUSES_V 2 – 134WF_NOTIFICATION_ATTR_RESP_V 2 – 136

Trang 6

WF_RUNNABLE_PROCESSES_V 2 – 137WF_ITEMS_V 2 – 138

Chapter 3 Directory Service APIs 3 – 1

Workflow Directory Service APIs 3 – 2GetRoleUsers 3 – 4GetUserRoles 3 – 5GetRoleInfo 3 – 6GetRoleInfo2 3 – 7IsPerformer 3 – 8UserActive 3 – 9GetUserName 3 – 10GetRoleName 3 – 11GetRoleDisplayName 3 – 12CreateAdHocUser 3 – 13CreateAdHocRole 3 – 15AddUsersToAdHocRole 3 – 17RemoveUsersFromAdHocRole 3 – 18SetAdHocUserStatus 3 – 19SetAdHocRoleStatus 3 – 20SetAdHocUserExpiration 3 – 21SetAdHocRoleExpiration 3 – 22SetAdHocUserAttr 3 – 23SetAdHocRoleAttr 3 – 24Workflow LDAP APIs 3 – 25Synch_changes 3 – 26Synch_all 3 – 27Schedule_changes 3 – 28Workflow Local Synchronization APIs 3 – 29Propagate_User 3 – 30Propagate_Role 3 – 34Propagate_User_Role 3 – 39Workflow Preferences API 3 – 40get_pref 3 – 40

Chapter 4 Notification System APIs 4 – 1

Overview of the Oracle Workflow Notification System 4 – 2Notification Model 4 – 2Notification Document Type Definition 4 – 7Notification APIs 4 – 12

Trang 7

Send 4 – 14Custom Callback Function 4 – 15SendGroup 4 – 19Forward 4 – 21Transfer 4 – 23Cancel 4 – 25CancelGroup 4 – 26Respond 4 – 27Responder 4 – 29NtfSignRequirementsMet 4 – 30VoteCount 4 – 31OpenNotificationsExist 4 – 32Close 4 – 33AddAttr 4 – 34SetAttribute 4 – 35GetAttrInfo 4 – 37GetInfo 4 – 38GetText 4 – 39GetShortText 4 – 40GetAttribute 4 – 41GetAttrDoc 4 – 43GetSubject 4 – 44GetBody 4 – 45GetShortBody 4 – 46TestContext 4 – 47AccessCheck 4 – 48WorkCount 4 – 49getNotifications 4 – 50getNotificationAttributes 4 – 51WriteToClob 4 – 52Denormalize_Notification 4 – 53Notification Mailer Utility API 4 – 55EncodeBLOB 4 – 55

Chapter 5 Business Event System APIs 5 – 1

Overview of the Oracle Workflow Business Event System 5 – 2Business Event System Datatypes 5 – 3Agent Structure 5 – 4getName 5 – 4getSystem 5 – 4setName 5 – 5

Trang 8

setSystem 5 – 5Parameter Structure 5 – 6getName 5 – 6getValue 5 – 6setName 5 – 7setValue 5 – 7Parameter List Structure 5 – 8Event Message Structure 5 – 9Initialize 5 – 12getPriority 5 – 12getSendDate 5 – 12getReceiveDate 5 – 13getCorrelationID 5 – 13getParameterList 5 – 13getEventName 5 – 13getEventKey 5 – 14getEventData 5 – 14getFromAgent 5 – 14getToAgent 5 – 14getErrorSubscription 5 – 15getErrorMessage 5 – 15getErrorStack 5 – 15setPriority 5 – 15setSendDate 5 – 16setReceiveDate 5 – 16setCorrelationID 5 – 16setParameterList 5 – 16setEventName 5 – 17setEventKey 5 – 17setEventData 5 – 17setFromAgent 5 – 18setToAgent 5 – 18setErrorSubscription 5 – 18setErrorMessage 5 – 18setErrorStack 5 – 19Content 5 – 19Address 5 – 20AddParameterToList 5 – 20GetValueForParameter 5 – 20Example for Using Abstract Datatypes 5 – 22Mapping Between WF_EVENT_T and

OMBAQ_TEXT_MSG 5 – 24

Trang 9

Mapping Between WF_EVENT_T and

SYS.AQ$_JMS_TEXT_MESSAGE 5 – 27Event APIs 5 – 30Raise 5 – 31Raise3 5 – 35Send 5 – 37NewAgent 5 – 39Test 5 – 40Enqueue 5 – 41Listen 5 – 42SetErrorInfo 5 – 45SetDispatchMode 5 – 46AddParameterToList 5 – 47AddParameterToListPos 5 – 48GetValueForParameter 5 – 49GetValueForParameterPos 5 – 50SetMaxNestedRaise 5 – 51GetMaxNestedRaise 5 – 52Event Subscription Rule Function APIs 5 – 53Default_Rule 5 – 55Log 5 – 57Error 5 – 58Warning 5 – 59Success 5 – 60Workflow_Protocol 5 – 61Error_Rule 5 – 62SetParametersIntoParameterList 5 – 63Event Function APIs 5 – 64Parameters 5 – 65SubscriptionParameters 5 – 67AddCorrelation 5 – 68Generate 5 – 70Receive 5 – 72Business Event System Replication APIs 5 – 74WF_EVENTS Document Type Definition 5 – 76WF_EVENTS_PKG.Generate 5 – 77WF_EVENTS_PKG.Receive 5 – 78WF_EVENT_GROUPS Document Type Definition 5 – 79WF_EVENT_GROUPS_PKG.Generate 5 – 80WF_EVENT_GROUPS_PKG.Receive 5 – 81WF_SYSTEMS Document Type Definition 5 – 82WF_SYSTEMS_PKG.Generate 5 – 83

Trang 10

WF_SYSTEMS_PKG.Receive 5 – 84WF_AGENTS Document Type Definition 5 – 85WF_AGENTS_PKG.Generate 5 – 86WF_AGENTS_PKG.Receive 5 – 87WF_AGENT_GROUPS Document Type Definition 5 – 88WF_AGENT_GROUPS_PKG.Generate 5 – 89WF_AGENT_GROUPS_PKG.Receive 5 – 90WF_EVENT_SUBSCRIPTIONS Document Type

Definition 5 – 91WF_EVENT_SUBSCRIPTIONS_PKG.Generate 5 – 92WF_EVENT_SUBSCRIPTIONS_PKG.Receive 5 – 93Business Event System Cleanup API 5 – 94Cleanup_Subscribers 5 – 94

Chapter 6 Workflow Queue APIs 6 – 1

Workflow Queue APIs 6 – 2EnqueueInbound 6 – 5DequeueOutbound 6 – 7DequeueEventDetail 6 – 10PurgeEvent 6 – 12PurgeItemType 6 – 13ProcessInboundQueue 6 – 14GetMessageHandle 6 – 15DequeueException 6 – 16DeferredQueue 6 – 17InboundQueue 6 – 18OutboundQueue 6 – 19ClearMsgStack 6 – 20CreateMsg 6 – 21WriteMsg 6 – 22SetMsgAttr 6 – 23SetMsgResult 6 – 24

Chapter 7 Document Management APIs 7 – 1

Document Management APIs 7 – 2get_launch_document_url 7 – 3get_launch_attach_url 7 – 4get_open_dm_display_window 7 – 5get_open_dm_attach_window 7 – 6set_document_id_html 7 – 7

Trang 11

Index

Trang 13

Preface

Trang 14

Audience for This Guide

Welcome to the Oracle Workflow API Reference.

This guide assumes you have a working knowledge of the following:

• The principles and customary practices of your business area

• Oracle Workflow

If you have never used Oracle Workflow, Oracle suggests you

attend one or more of the Oracle Workflow training classes

available through Oracle University

See Other Information Sources for more information about OracleApplications product information

The Oracle Workflow API Reference also assumes you have a basic

understanding of operating system concepts and familiarity withOracle Database, PL/SQL, and Oracle Application Server technology

If you have not yet been introduced to any of these systems, Oraclesuggests you attend one or more of the training classes availablethrough Oracle University

How To Use This Guide

This guide contains the information you need to understand and use

Oracle Workflow APIs.

• Chapter 1 provides an overview of Oracle Workflow

• Chapter 2 describes the Workflow Engine APIs

• Chapter 3 describes the directory service APIs

• Chapter 4 describes the Notification System APIs

• Chapter 5 describes the Business Event System APIs

• Chapter 6 describes the Workflow queue APIs

• Chapter 7 describes the document management APIs

At the end of this guide, we include a glossary of Oracle Workflowterms

Documentation Accessibility

Our goal is to make Oracle products, services, and supportingdocumentation accessible, with good usability, to the disabled

Trang 15

community To that end, our documentation includes features thatmake information available to users of assistive technology Thisdocumentation is available in HTML format, and contains markup tofacilitate access by the disabled community Standards will continue toevolve over time, and Oracle is actively engaged with other

market–leading technology vendors to address technical obstacles sothat our documentation can be accessible to all of our customers Foradditional information, visit the Oracle Accessibility Program Web site

at http://www.oracle.com/accessibility/

Accessibility of Code Examples in Documentation

JAWS, a Windows screen reader, may not always correctly read thecode examples in this document The conventions for writing coderequire that closing braces should appear on an otherwise empty line;however, JAWS may not always read a line of text that consists solely

of a bracket or brace

Accessibility of Links to External Web Sites in Documentation

This documentation may contain links to Web sites of other companies

or organizations that Oracle does not own or control Oracle neitherevaluates nor makes any representations regarding the accessibility ofthese Web sites

Other Information Sources

You can choose from many sources of information, including onlinedocumentation, training, and support services, to increase yourknowledge and understanding of Oracle Workflow

If this guide refers you to other Oracle Applications documentation,

use only the Release 11i versions of those guides.

Online Documentation

If you are using the version of Oracle Workflow embedded in OracleApplications, note that all Oracle Applications documentation isavailable online (HTML or PDF)

• Online Help – The new features section in the HTML help

describes new features in 11i This information is updated for

each new release of Oracle Workflow The new features sectionalso includes information about any features that were not yet

Trang 16

available when this guide was printed For example, if youradministrator has installed software from a mini–pack or anupgrade, this document describes the new features Online help

patches are available on OracleMetaLink.

• 11i Features Matrix – This document lists new features available

by patch and identifies any associated new documentation The

new features matrix document is available on OracleMetaLink.

• Readme File – Refer to the readme file for patches that you have

installed to learn about new documentation or documentationpatches that you can download

If you are using the standalone version of Oracle Workflow, note thatthis guide is available online in HTML format The HTML

documentation is available from a URL provided by your systemadministrator or from the help icon in the Oracle Workflow web pages

Related User’s Guides

Oracle Workflow is used by other Oracle Applications products to

provide embedded workflows Therefore, if you are using the version

of Oracle Workflow embedded in Oracle Applications, you may want

to refer to other user’s guides when you set up and use OracleWorkflow to learn more about the embedded workflows

You can read the guides online by choosing Library from theexpandable menu on your HTML help window, by reading from theOracle Applications Document Library CD included in your mediapack, or by using a Web browser with a URL that your systemadministrator provides

If you require printed guides, you can purchase them from the OracleStore at http://oraclestore.oracle.com

Guides Related to All Products

Oracle Applications User’s Guide

This guide explains how to enter data, query, run reports, and navigateusing the graphical user interface (GUI) available with this release ofOracle Workflow (and any other Oracle Applications products) Thisguide also includes information on setting user profiles, as well asrunning and reviewing reports and concurrent processes

You can access this user’s guide online by choosing ”Getting Startedwith Oracle Applications” from any Oracle Applications help file

Trang 17

User Guides Related to This Product

Oracle Workflow Administrator’s Guide

This guide explains how to complete the setup steps necessary for anyOracle Applications product that includes workflow–enabled

processes, as well as how to monitor the progress of runtime workflowprocesses

Oracle Workflow Developer’s Guide

This guide explains how to define new workflow business processesand customize existing Oracle Applications–embedded workflowprocesses It also describes how to define and customize businessevents and event subscriptions

Oracle Workflow User’s Guide

This guide describes how Oracle Applications users can view andrespond to workflow notifications and monitor the progress of theirworkflow processes

Oracle General Ledger User Guide

This guide provides information about journal entry, budgeting, andmulti–company accounting and consolidation

Oracle Purchasing User’s Guide

This guide provides information about entering and managingpurchase orders and requisitions

Implementing Oracle Self–Service Human Resources (SSHR)

This guide provides information about setting up the self–servicehuman resources management functions for managers and employees.Managers and employees can then use an intranet and Web browser tohave easy and intuitive access to personal and career managementfunctionality

Oracle Payables User Guide

This guide provides information about entering and managingsuppliers, invoices, and payments

Trang 18

Oracle Projects User Guide

This guide provides information about entering and managing projects,budgets, expenditures, costing, and billing

Oracle Receivables User Guide

This guide provides information about entering and managingcustomers, receipts, collections, and transactions

Oracle Business Intelligence System Implementation Guide

This guide provides information about implementing Oracle BusinessIntelligence (BIS) in your environment

BIS 11i User Guide Online Help

This guide is provided as online help only from the BIS application andincludes information about intelligence reports, Discoverer workbooks,and the Performance Management Framework

Oracle Financials Open Interface Reference

This guide is a compilation of all open interface descriptions in allOracle Financial Applications user’s guides

Oracle XML Gateway User’s Guide

This guide explains how to implement the production andconsumption of valid, well–formed XML messages between OracleApplications and trading partners

Installation and System Administration

Oracle Applications Concepts

This guide provides an introduction to the concepts, features,technology stack, architecture, and terminology for Oracle Applications

Release 11i It provides a useful first book to read before an installation

of Oracle Applications This guide also introduces the concepts behindApplications–wide features such as Business Intelligence (BIS),

languages and character sets, and Self–Service Web Applications

Trang 19

Installing Oracle Applications

This guide provides instructions for managing the installation of Oracle

Applications products In Release 11i, much of the installation process

is handled using Oracle Rapid Install, which minimizes the time toinstall Oracle Applications and the Oracle Database technology stack

by automating many of the required steps This guide contains

instructions for using Oracle Rapid Install and lists the tasks you need

to perform to finish your installation You should use this guide inconjunction with individual product user’s guides and implementationguides

Upgrading Oracle Applications

Refer to this guide if you are upgrading your Oracle Applications

Release 10.7 or Release 11.0 products to Release 11i This guide

describes the upgrade process and lists database and product–specificupgrade tasks You must be either at Release 10.7 (NCA, SmartClient,

or character mode) or Release 11.0, to upgrade to Release 11i You cannot upgrade to Release 11i directly from releases prior to 10.7.

Maintaining Oracle Applications

Use this guide to help you run the various AD utilities, such as

AutoUpgrade, AutoPatch, AD Administration, AD Controller, ADRelink, License Manager, and others It contains how–to steps,

screenshots, and other information that you need to run the AD

utilities This guide also provides information on maintaining theOracle Applications file system and database

Oracle Applications System Administrator’s Guide

This guide provides planning and reference information for the OracleApplications System Administrator It contains information on how todefine security, customize menus and online help, and manage

concurrent processing

Oracle Alert User’s Guide

This guide explains how to define periodic and event alerts to monitorthe status of your Oracle Applications data

Trang 20

Oracle Applications Developer’s Guide

This guide contains the coding standards followed by the OracleApplications development staff It describes the Oracle ApplicationObject Library components needed to implement the Oracle

Applications user interface described in the Oracle Applications User

Interface Standards for Forms–Based Products It also provides information

to help you build your custom Oracle Forms Developer 6i forms so that

they integrate with Oracle Applications

Other Implementation Documentation

Oracle Applications Product Update Notes

Use this guide as a reference for upgrading an installation of OracleApplications It provides a history of the changes to individual Oracle

Applications products between Release 11.0 and Release 11i It includes

new features, enhancements, and changes made to database objects,profile options, and seed data for this interval

Multiple Reporting Currencies in Oracle Applications

If you use the Multiple Reporting Currencies feature to recordtransactions in more than one currency, use this manual beforeimplementing Oracle Workflow This manual details additional stepsand setup considerations for implementing Oracle Workflow with thisfeature

Multiple Organizations in Oracle Applications

This guide describes how to set up and use Oracle Workflow withOracle Applications’ Multiple Organization support feature, so you candefine and support different organization structures when running asingle installation of Oracle Workflow

Oracle Applications Flexfields Guide

This guide provides flexfields planning, setup and referenceinformation for the Oracle Workflow implementation team, as well asfor users responsible for the ongoing maintenance of Oracle

Applications product data This manual also provides information oncreating custom reports on flexfields data

Trang 21

Oracle eTechnical Reference Manuals

Each eTechnical Reference Manual (eTRM) contains database diagramsand a detailed description of database tables, forms, reports, andprograms for a specific Oracle Applications product This informationhelps you convert data from your existing applications, integrateOracle Applications data with non–Oracle applications, and writecustom reports for Oracle Applications products Oracle eTRM is

an application built by using Oracle Forms

Oracle Manufacturing APIs and Open Interfaces Manual

This manual contains up–to–date information about integrating withother Oracle Manufacturing applications and with your other systems.This documentation includes APIs and open interfaces found in OracleManufacturing

Oracle Order Management Suite APIs and Open Interfaces Manual

This manual contains up–to–date information about integrating withother Oracle Manufacturing applications and with your other systems.This documentation includes APIs and open interfaces found in OracleOrder Management Suite

Oracle Applications Message Reference Manual

This manual describes all Oracle Applications messages This manual isavailable in HTML format on the documentation CD–ROM for Release

Trang 22

courses are organized into functional learning paths, so you take onlythose courses appropriate to your job or area of responsibility.

You have a choice of educational environments You can attend coursesoffered by Oracle University at any one of our many Education

Centers, you can arrange for our trainers to teach at your facility, oryou can use Oracle Learning Network (OLN), Oracle University’sonline education utility In addition, Oracle training professionals cantailor standard courses or develop custom courses to meet your needs.For example, you may want to use your organization structure,terminology, and data as examples in a customized training sessiondelivered at your own facility

Support

From on–site support to central support, our team of experiencedprofessionals provides the help and information you need to keepOracle Workflow working for you This team includes your TechnicalRepresentative and Account Manager, and Oracle’s large staff ofconsultants and support specialists with expertise in your businessarea, managing an Oracle Database, and your hardware and softwareenvironment

Do Not Use Database Tools to Modify Oracle Applications Data

Oracle STRONGLY RECOMMENDS that you never use SQL*Plus, Oracle Data Browser, database triggers, or any other tool to modify Oracle Applications data unless otherwise instructed.

Oracle provides powerful tools you can use to create, store, change,retrieve, and maintain information in an Oracle Database But if youuse Oracle tools such as SQL*Plus to modify Oracle Applications data,you risk destroying the integrity of your data and you lose the ability toaudit changes to your data

Because Oracle Applications tables are interrelated, any change youmake using Oracle Applications can update many tables at once Butwhen you modify Oracle Applications data using anything other thanOracle Applications, you may change a row in one table withoutmaking corresponding changes in related tables If your tables get out

of synchronization with each other, you risk retrieving erroneousinformation and you risk unpredictable results throughout OracleApplications

Trang 23

When you use Oracle Applications to modify your data, OracleApplications automatically checks that your changes are valid OracleApplications also keeps track of who changes information If you enterinformation into database tables using database tools, you may storeinvalid information You also lose the ability to track who has changedyour information because SQL*Plus and other database tools do notkeep a record of changes.

About Oracle

Oracle develops and markets an integrated line of software productsfor database management, applications development, decision support,and office automation, as well as Oracle Applications, an integratedsuite of more than 160 software modules for financial management,supply chain management, manufacturing, project systems, humanresources, and customer relationship management

Oracle products are available for mainframes, minicomputers, personalcomputers, network computers and personal digital assistants,

allowing organizations to integrate different computers, differentoperating systems, different networks, and even different databasemanagement systems, into a single, unified computing and informationresource

Oracle is the world’s leading supplier of software for informationmanagement, and the world’s second largest software company Oracleoffers its database, tools, and applications products, along with relatedconsulting, education, and support services, in over 145 countriesaround the world

Your Feedback

Thank you for using Oracle Workflow and this guide

Oracle values your comments and feedback At the end of this guide is

a Reader’s Comment Form you can use to explain what you like ordislike about Oracle Workflow or this guide Mail your comments tothe following address or call us directly at (650) 506–7000

Trang 24

Oracle Applications Documentation ManagerOracle Corporation

500 Oracle ParkwayRedwood Shores, CA 94065U.S.A

Or, send electronic mail to appsdoc_us@oracle.com.

Trang 25

C H A P T E R

1

T

Overview of Oracle Workflow

his chapter introduces you to the concept of a workflow processand to the major features of Oracle Workflow

Trang 26

Overview of Oracle Workflow

Oracle Workflow delivers a complete workflow management systemthat supports business process based integration Its technology enablesmodeling, automation, and continuous improvement of businessprocesses, routing information of any type according to user–definedbusiness rules

E–business is accelerating the demand for integration of applicationswithin the enterprise as well as integration of a company’s systems withtrading partners and business–to–business exchanges Oracle Workflowautomates and streamlines business processes both within and beyondyour enterprise, supporting traditional applications based workflow aswell as e–business integration workflow Oracle Workflow is unique inproviding a workflow solution for both internal processes and businessprocess coordination between applications

Routing Information

Business processes today involve getting many types of information tomultiple people according to rules that are constantly changing With somuch information available, and in so many different forms, how doyou get the right information to the right people? Oracle Workflow letsyou provide each person with all the information they need to takeaction Oracle Workflow can route supporting information to eachdecision maker in a business process, including people both inside andoutside your enterprise

Defining and Modifying Business Rules

Oracle Workflow lets you define and continuously improve yourbusiness processes using a drag–and–drop process designer

Unlike workflow systems that simply route documents from one user toanother with some approval steps, Oracle Workflow lets you modelsophisticated business processes You can define processes that loop,branch into parallel flows and then rendezvous, decompose intosubflows, and more Because Oracle Workflow can decide which path

to take based on the result of a stored procedure, you can use the power

of Java and of PL/SQL, the language of the Oracle Database, to expressany business rule that affects a workflow process See: WorkflowProcesses: page 1 – 6

Trang 27

Delivering Electronic Notifications

Oracle Workflow extends the reach of business process automationthroughout the enterprise and beyond to include any e–mail or Internetuser Oracle Workflow lets people receive notifications of items

awaiting their attention via e–mail, and act based on their e–mailresponses You can even view your list of things to do, includingnecessary supporting information, and take action using a standard Webbrowser

Integrating Systems

Oracle Workflow lets you set up subscriptions to business events whichcan launch workflows or enable messages to be propagated from onesystem to another when business events occur You can communicateevents among systems within your own enterprise and with externalsystems as well In this way, you can implement point–to–pointmessaging integration or use Oracle Workflow as a messaging hub formore complex system integration scenarios You can model businessprocesses that include complex routing and processing rules to handleevents powerfully and flexibly

Major Features and Definitions

Oracle Workflow Builder

Oracle Workflow Builder is a graphical tool that lets you create, view, ormodify a business process with simple drag and drop operations Usingthe Workflow Builder, you can create and modify all workflow objects,including activities, item types, and messages See: Workflow Processes:page 1 – 6

At any time you can add, remove, or change workflow activities, or set

up new prerequisite relationships among activities You can easily workwith a summary–level model of your workflow, expanding activitieswithin the workflow as needed to greater levels of detail And, you canoperate Oracle Workflow Builder from a desktop PC or from a

disconnected laptop PC

Workflow Engine

The Workflow Engine embedded in the Oracle Database implementsprocess definitions at runtime The Workflow Engine monitorsworkflow states and coordinates the routing of activities for a process

Trang 28

Changes in workflow state, such as the completion of workflowactivities, are signaled to the engine via a PL/SQL API or a Java API.Based on flexibly–defined workflow rules, the engine determines whichactivities are eligible to run, and then runs them The Workflow Enginesupports sophisticated workflow rules, including looping, branching,parallel flows, and subflows.

Business Event System

The Business Event System is an application service that uses the OracleAdvanced Queuing (AQ) infrastructure to communicate business eventsbetween systems The Business Event System consists of the EventManager, which lets you register subscriptions to significant events, andevent activities, which let you model business events within workflowprocesses

When a local event occurs, the subscribing code is executed in the sametransaction as the code that raised the event Subscription processing caninclude executing custom code on the event information, sending eventinformation to a workflow process, and sending event information toother queues or systems

Workflow Definitions Loader

The Workflow Definitions Loader is a utility program that movesworkflow definitions between database and corresponding flat filerepresentations You can use it to move workflow definitions from adevelopment to a production database, or to apply upgrades to existingdefinitions In addition to being a standalone server program, theWorkflow Definitions Loader is also integrated into Oracle WorkflowBuilder, allowing you to open and save workflow definitions in both adatabase and file

Complete Programmatic Extensibility

Oracle Workflow lets you include your own PL/SQL procedures orexternal functions as activities in your workflows Without modifyingyour application code, you can have your own program run wheneverthe Workflow Engine detects that your program’s prerequisites aresatisfied

Electronic Notifications

Oracle Workflow lets you include users in your workflows to handleactivities that cannot be automated, such as approvals for requisitions or

Trang 29

sales orders The Notification System sends notifications to and

processes responses from users in a workflow Electronic notificationsare routed to a role, which can be an individual user or a group of users.Any user associated with that role can act on the notification

Each notification includes a message that contains all the information auser needs to make a decision The information may be embedded inthe message body or attached as a separate document Oracle Workflowinterprets each notification activity response to decide how to move on

to the next workflow activity

Electronic Mail Integration

Electronic mail (e–mail) users can receive notifications of outstandingwork items and can respond to those notifications using their e–mailapplication of choice An e–mail notification can include an attachmentthat provides another means of responding to the notification

Internet–Enabled Workflow

Any user with access to a standard Web browser can be included in aworkflow Web users can access a Notification Web page to see theiroutstanding work items, then navigate to additional pages to see moredetails or provide a response

Monitoring and Administration

Workflow administrators and users can view the progress of a workitem in a workflow process by connecting to the Workflow Monitorusing a standard Web browser that supports Java The WorkflowMonitor displays an annotated view of the process diagram for a

particular instance of a workflow process, so that users can get a

graphical depiction of their work item status The Workflow Monitoralso displays a separate status summary for the work item, the process,and each activity in the process

If you are using the version of Oracle Workflow embedded in OracleApplications and you have implemented Oracle Applications Manager,you can also use the Oracle Workflow Manager component of OracleApplications Manager as an additional administration tool for OracleWorkflow Oracle Applications Manager is a tool that provides

administrative and diagnostic capabilities for concurrent processing,Oracle Workflow, and other functionality in Oracle Applications Formore information, please refer to the Oracle Applications Manageronline help

Trang 30

Also, if you are using the standalone version of Oracle Workflow, youcan use the standalone Oracle Workflow Manager component availablethrough Oracle Enterprise Manager as an additional administration toolfor Oracle Workflow For more information, please refer to the OracleWorkflow Manager online help.

Workflow Processes

Oracle Workflow manages business processes according to rules thatyou define The rules, which we call a workflow process definition,include the activities that occur in the process and the relationshipbetween those activities An activity in a process definition can be anautomated function defined by a PL/SQL stored procedure or anexternal function, a notification to a user or role that may optionallyrequest a response, a business event, or a subflow that itself is made up

of a more granular set of activities

A workflow process is initiated when an application calls a set of OracleWorkflow Engine APIs The Workflow Engine takes over by drivingthe relevant work item defined by the application, through a specificworkflow process definition According to the workflow processdefinition, the Workflow Engine performs automated steps and invokesappropriate agents when external processing is required

The following diagram depicts a simplified workflow process definitionthat routes a requisition to a manager or set of managers for approval

Trang 31

We refer to the whole drawing as a process or process diagram Theicons represent activities, and the arrows represent the transitionsbetween the activities In the above example, new items are created forthe process when a user creates and submits a requisition in the

Trang 32

Oracle Workflow Procedures and Functions

Oracle Workflow supplies a list of public PL/SQL and Java proceduresand functions that you can use to set up a workflow process They aregrouped within the following packages and classes:

Trang 33

C H A P T E R

2

T

Workflow Engine APIs

his chapter describes the APIs for the Workflow Engine The APIsconsist of views and PL/SQL and Java functions and procedures thatyou can use to access the Workflow Engine, the Workflow Monitor, andworkflow data

Trang 34

Overview of the Workflow Engine

The Workflow Engine manages all automated aspects of a workflowprocess for each item The engine is implemented in server–sidePL/SQL and is activated whenever a call to a workflow procedure orfunction is made Since the engine is embedded inside the OracleDatabase, if the Workflow server goes down for any reason, the OracleDatabase is able to manage the recovery and transactional integrity ofany workflow transactions that were running at the time of the failure.Additionally, Workflow Engines can be set up as background tasks toperform activities that are too costly to execute in real time

The Workflow Engine performs the following services for a clientapplication:

• It manages the state of all activities for an item, and in particular,determines which new activity to transition to whenever aprerequisite activity completes

• It automatically executes function activities (execution is eitherimmediate or deferred to a background engine) and sendsnotifications

• It maintains a history of an activity’s status

• It detects error conditions and executes error processes

The state of a workflow item is defined by the various states of allactivities that are part of the process for that item The engine changesactivity states in response to an API call to update the activity The APIcalls that update activity states are:

Trang 35

• Active—activity is running

• Complete—activity completed normally

• Waiting—activity is waiting to run

• Notified—notification activity is delivered and open

For environments such as database triggers or distributedtransactions that do not allow savepoints, the Workflow Engineautomatically traps ”Savepoint not allowed” errors and defersthe execution of the activity to the background engine

Note: The Oracle Database supports autonomous transactions

By embedding the pragma AUTONOMOUS_TRANSACTION

in your procedure, you can perform commits and rollbacksindependently of the main transaction Oracle treats this as aseparate session; as such, you will not have access to anydatabase changes that were made in the main session but arenot yet committed Consequently, you are restricted fromupdating workflow–specific data in an autonomous

transaction; for instance, you cannot set item attributes Youcannot access this data because the item itself has not yet beencommitted, and because you may have lock contentions withthe main session

Oracle Workflow will not support autonomous commits in anyprocedure it calls directly If you need to perform commits,then embed your SQL in a subprocedure and declare it as anautonomous block This subprocedure must be capable of beingrerun Additionally, note that Oracle Workflow handles errors

by rolling back the entire procedure and setting its status toERROR Database updates performed by autonomous commitscannot be rolled back, so you will need to write your owncompensatory logic for error handling For more information,

see: Autonomous Transactions, Oracle Database Concepts.

Trang 36

Oracle Workflow Java Interface

The Oracle Workflow Java interface provides a means for any Javaprogram to integrate with Oracle Workflow The Oracle WorkflowEngine and Notification APIs are accessible through public serverPL/SQL packages and published views The Oracle Workflow Javainterface exposes those APIs as Java methods that can be called by anyJava program to communicate with Oracle Workflow The Javamethods directly reference the WF_ENGINE and WF_NOTIFICATIONPL/SQL package procedures and views and communicate with theOracle Workflow database through JDBC

The methods are defined within the WFEngineAPI class and theWFNotificationAPI class, in the Java package

’oracle.apps.fnd.wf.engine’ If a Workflow Engine or Notification APIhas a corresponding Java method, its Java method syntax is displayedimmediately after its PL/SQL syntax in the documentation See:Workflow Engine APIs: page 2 – 19 and Notification APIs: page 4 – 12.Additionally, Java functions can be incorporated within Workflowprocesses as external Java function activities This functionality iscurrently only available for the standalone version of Oracle Workflow.The custom Java classes for these activities are implemented as classesthat extend the WFFunctionAPI class The custom classes must follow astandard API format so that they can be properly executed by theOracle Workflow Java Function Activity Agent See: Standard API for

Java Procedures Called by Function Activities, Oracle Workflow

Developer’s Guide and Function Activity, Oracle Workflow Developer’s Guide.

The WFFunctionAPI class and the WFAttribute class also containmethods that can be called to communicate with Oracle Workflow.These classes are defined in the Java package ’oracle.apps.fnd.wf’ See:Workflow Function APIs: page 2 – 87 and Workflow Attribute APIs:page 2 – 95

Java programs that integrate with Oracle Workflow should include thefollowing import statements to provide access to classes required byOracle Workflow:

Trang 37

import oracle.apps.fnd.common.*;

import oracle.apps.fnd.wf.engine.*;

import oracle.apps.fnd.wf.*;

Oracle Workflow Context

Each Oracle Workflow Java method that accesses the database requires

an input of a WFContext object The WFContext object consists ofdatabase connectivity information which you instantiate and resourcecontext information that the WFContext class instantiates To call one

of these Workflow Java APIs in your Java program, you must firstinstantiate a database variable of class WFDB with your databaseusername, password and alias You can also optionally supply a JDBCstring Then you must instantiate the WFContext object with thedatabase variable You can retrieve the system property CHARSET tospecify the character set for the database session The following codeexcerpt shows an example of how to instantiate these objects

ctx = new WFContext(myDB, m_charSet);

// m_charSet is ’UTF8’ by default

Trang 38

If you have already established a JDBC connection, you can simply setthat connection into the WFContext object, as shown in the followingexample:

// m_charSet is ’UTF8’ by default ctx.setJDBCConnection(m_conn);

// m_conn is a pre–established JDBC connection

The Oracle Workflow Java APIs can be used safely in a thread, withcertain restrictions:

• Each thread should have its own WFContext object, meaningyou should not instantiate WFContext before starting threads.Because each context keeps track of an error stack, contextscannot be shared

• You should not use the same JDBC connection for differentworkflows, because using the same connection may causeproblems with commits and rollbacks for unrelated transactions.There is no synchronized code inside the Oracle Workflow Java APIs,but there are no shared resources, either

There is also no connection pooling in the Oracle Workflow Java APIs.For Oracle Applications, connection pooling is implemented at theAOL/J level; after you get the JDBC connection, you use the

WFContext.setJDBCConnection() API to set the connection This

approach lets you manage your JDBC connection outside of the OracleWorkflow APIs

Sample Java Program

Oracle Workflow provides an example Java program that illustrateshow to call most of the Workflow Engine and Notification Java APIs.The Java program is named WFTest It calls the various Java APIs tolaunch the WFDEMO process, set and get attributes and suspend,resume and abort the process, as well as the APIs to send a notification,set and get notification attributes, and delegate and transfer the

notification Before running the WFTest Java program, make sure you

Trang 39

define CLASSPATH and LD_LIBRARY_PATH for the Oracle JDBCimplementation and a supported version of Oracle For example, onUNIX, use the following commands:

setenv CLASSPATH

<Workflow_JAR_file_directory>/wfapi.jar:${ORACLE_HOME}/jdbc/

lib/classes111.zip

setenv LD_LIBRARY_PATH ${ORACLE_HOME}/lib:${LD_LIBRARY_PATH}

Note: If you are using the standalone version of OracleWorkflow, the Workflow JAR files are located in the

<ORACLE_HOME>/jlib directory If you are using the version ofOracle Workflow embedded in Oracle Applications, theWorkflow JAR files are located in the

<ORACLE_HOME>/wf/java/oracle/apps/fnd/wf/jar/

directory

To initiate the WFTest program, run Java against

oracle.apps.fnd.wf.WFTest For example, on UNIX, enter thefollowing statement on the command line:

$java oracle.apps.fnd.wf.WFTest

The source file for this program is also included in your OracleWorkflow installation so that you can view the sample code The sourcefile is named WFTest.java and is located in the

<ORACLE_HOME>/wf/java/oracle/apps/fnd/wf/ directory

Additional Workflow Engine Features

In addition to managing a process, the Workflow Engine also supportsthe following features:

• Completion Processing: page 2 – 8

• Deferred Processing: page 2 – 8

• Error Processing: page 2 – 9

• Looping: page 2 – 10

• Version/Effective Date: page 2 – 11

• Item Type Attributes: page 2 – 12

• Post–notification functions: page 2 – 12

Trang 40

• Synchronous, Asynchronous, and Forced Synchronous Processes:page 2 – 14

• Business Events: page 2 – 17

Completion Processing

Engine processing is triggered whenever a process activity completesand calls the Workflow Engine API The engine then attempts toexecute (or mark for deferred execution) all activities that aredependent on the completed activity

Note: A process as a whole can complete but still containactivities that were visited but not yet completed For example,

a completed process may contain a standard Wait activity that

is not complete because the designated length of time to waithas not yet elapsed When the process as a whole completes,the Workflow Engine marks these incomplete activities ashaving a status of COMPLETE and a result of #FORCE Thisdistinction is important when you review your process statusthrough the Workflow Monitor

Deferred Processing

The engine has a deferred processing feature that allows long–runningtasks to be handled by background engines instead of in real time.Deferring the execution of activity functions to background enginesallows the Workflow Engine to move forward to process otheractivities that are currently active The engine can be set up to operateanywhere on a continuum between processing all eligible workimmediately, to processing nothing and marking all transitions asdeferred

Each activity has a user–defined processing cost You can set this cost

to be small if the activity merely sets an item attribute, or you may set it

to be very high if the activity performs a resource–intensive operation

If the result of a completed activity triggers the execution of a costlyfunction, you might want to defer the execution of that costly function

to a background engine

The Workflow Engine integrates with Oracle Advanced Queues tocarry out deferred processing If a function activity has a cost thatexceeds the main threshold cost, the Workflow Engine marks thatactivity with a status of ’DEFERRED’ in the workflow status tables andenqueues the deferred activity to a special queue for deferred activities

A special queue processor called the background engine checks andprocesses the activities in the ’deferred’ queue The order in which the

Ngày đăng: 21/12/2013, 04:17

TỪ KHÓA LIÊN QUAN

w