Using Workflow in Oracle Order Management

An Oracle White Paper October 2001

Using Workflow in Oracle Order Management

Table of Contents
EXECUTIVE OVERVIEW ..................................................................................... 4 INTRODUCTION..................................................................................................... 4 FUNCTIONAL DIFFERENCES............................................................................. 5 R11I FEATURES...................................................................................................... 6 FLEXIBLE AND EXTENSIBLE ORDER PROCESSES ....................................................... 6 Order Header and Line WorkFlow processes ................................................... 6 Workflow enabling order and line business functions....................................... 7 Creating customized workflow activities/sub-processes.................................... 9 Process dependencies...................................................................................... 10 AUTOMATED, DEFERRED AND MANUAL TRANSACTIONS ...................................... 11 INTERACTIVE DECISION SUPPORT AND EXCEPTION HANDLING ............................... 12 ORDER MANAGEMENT WORKFLOW STANDARDS.................................. 12 SYNCHRONOUS - IMPLEMENTING A BUSINESS FUNCTION THAT IS AUTOMATICALLY EXECUTED............................................................................................................. 12 MANUAL - IMPLEMENTING A BUSINESS FUNCTION THAT REQUIRES USER INTERVENTION. ..................................................................................................... 13 DEFERRED - IMPLEMENTING A BUSINESS FUNCTION THAT IS EXECUTED OFF-LINE. 14 NAMING CONVENTIONS ........................................................................................ 15 Process Flow ................................................................................................... 16 Sub-Process..................................................................................................... 16 Function Activity ............................................................................................. 16 ACTIVITY RESULTS ............................................................................................... 17 DEFAULT ERROR PROCESS.................................................................................... 18 ACCESS CONTROL................................................................................................. 18 USING WORKFLOW IN ORDER MANAGEMENT ........................................ 18 SET UP................................................................................................................... 18 Setup “Order Management WF Administrator” WF item attribute ................ 18 Review seeded OM WF data and Define Workflow processes via the Workflow Builder............................................................................................................. 19 Setup approval notification and OM: Notification Approver.......................... 20 Setup Workflow assignments for order/line transaction types ........................ 22 Setup the WF background Engine ................................................................... 23 ORDER OR LINE BUSINESS PROCESSES THAT ARE WORKFLOW ENABLED ............... 23 Booking ........................................................................................................... 23 Scheduling ....................................................................................................... 23

Using Workflow in Oracle Order Management

Page 1

Create Supply .................................................................................................. 24 ATO Processing............................................................................................... 24 Ship.................................................................................................................. 24 Purchase Release ............................................................................................ 24 Return Receipt ................................................................................................. 25 Fulfillment ....................................................................................................... 25 Invoice Interface.............................................................................................. 25 Close Order and Close Line ............................................................................ 26 MOVING ORDERS AND LINES FORWARD IN THEIR FLOWS ...................................... 26 Synchronous Completion................................................................................. 26 Manual Completion......................................................................................... 27 Deferred Completion....................................................................................... 28 TRACKING ORDER STATUS .................................................................................... 28 Order and Line Summary status...................................................................... 28 Workflow Activity Status Page ........................................................................ 29 Workflow Monitor ........................................................................................... 30 Public Status APIs........................................................................................... 31 WORKFLOW AND OTHER OM FUNCTION AREAS .................................................... 32 Cancellations................................................................................................... 32 Holds ............................................................................................................... 32 Processing Constraints.................................................................................... 32 ERROR HANDLING ................................................................................................. 33 Expected Errors............................................................................................... 33 Unexpected Errors .......................................................................................... 33 PURGING WORKFLOW STATUS INFORMATION ....................................................... 34 CUSTOMIZING ORDER AND LINE FLOWS................................................... 34 GUIDELINES .......................................................................................................... 35 EXAMPLES ............................................................................................................ 36 CAVEATS .............................................................................................................. 42 CONCLUSION ....................................................................................................... 43 GLOSSARY ............................................................................................................ 44 REFERENCES........................................................................................................ 44 APPENDIX A.......................................................................................................... 45 R11I.2 SEEDED ORDER HEADER/LINE WORKFLOW PROCESSES .............................. 45 APPENDIX B .......................................................................................................... 45 R11I.2 SEEDED WF ITEM ATTRIBUTES ................................................................. 45 APPENDIX C.......................................................................................................... 47 R11I.2 SEEDED UTILITY ACTIVITIES ....................................................................... 47 APPENDIX D.......................................................................................................... 48 PROCEDURES AVAILABLE TO QUERY HEADER STATUS.......................................... 48 PROCEDURES AVAILABLE TO QUERY LINE STATUS ............................................... 48 APPENDIX E .......................................................................................................... 50 PL/SQL WF WRAPPER FOR THE FUNCTION ACTIVITY “IS THIS A BIG ORDER” ..... 50

Using Workflow in Oracle Order Management

Page 2

Using Workflow in Oracle Order Management

Table of Figures

Figure 1a: Generic Order Header Workflow process ..................................5 Figure 1b: Generic Order Line Workflow process.......................................6 Figure 2: Sub-process that checks Order Totals and sends out a Notification................................................................................................9 Figure 3a: Order Booking sub-process........................................................10 Figure 3b: Enter Line sub-process...............................................................11 Figure 4: Automatic Scheduling sub-process ............................................13 Figure 5: Manual Booking sub- process .......................................................14 Figure 6 : Deferred Booking sub-process ....................................................15 Figure 7: Return Approval sub-process........................................................21 Figure 8: Transaction Types Form................................................................23 Figure 9: Progress Order LOV; available from the Sales Order Form....27 Figure 10: Order Organizer. Shows Order/Line Status summary ..........29 Figure 11: Workflow Status Page, available from the Sales Order Form 30 Figure 12: Workflow Monitor, available from the Status Page.................30 Figure 13 : Line Flow - Standard Items Only..............................................36 Figure 14: Book - Order, Manual and Deferred .......................................37 Figure 15: Export Compliance sub-process that uses a function activity38 Figure 16: Export Compliance sub-process that allows a re-try..............38 Figure 17: Export Compliance sub-process that is externally completed39 Figure 18: Export Compliance sub-process that handles holds. .............40 Figure 19: INCORRECT Flow to support both Order and Return Lines41 Figure 20: CORRECT Flow to support both Order and Return Lines..41

Using Workflow in Oracle Order Management

Page 3

Using Workflow in Oracle Order Management

EXECUTIVE OVERVIEW

Businesses seek technologies to increase profitability and enhance competency. They hope to use such technologies to streamline and automate their transaction flows, better manage exceptions and identify non-value added activities. Companies need software systems that can work in dynamic business environments, allow users to control business rules and increase transaction automation. Such systems not only have to be flexible and but have to also be easy to use. Workflow technology supports automation and continuous improvement of business processes. It supports routing information of any type according to userdefined business rules. Business transactions, such as order placements or purchase requests which involve various controls, routings, and approvals, can be managed more efficiently by leveraging Workflow technology. This is the primary reason why, Oracle Order Management integrates with Oracle Workflow; to provide users with a comprehensive order processing and fulfillment system.
INTRODUCTION

Oracle Order Entry (Release 11 and earlier) includes a feature called Order Cycles. This feature provides the flexibility in setting up different order processes to fit various business needs. Today, Order Management has greatly enhanced the order cycles functionality by replacing Order Cycles with Workflow. The goal is to give you the following benefits: • • • Flexible and extensible order processing for all industry segments Automated transactions for reducing operation overhead Interactive decision support and exception handling

This paper attempts to explain functional differences between R11 Order Cycle and R11i Workflow. It also discusses Order Management Workflow features, Workflow standards, setup procedures, various means of processing orders and other useful tips.

Using Workflow in Oracle Order Management

Page 4

Users can define workflow processes that determine the series of activities that are executed in an order life cycle. The following is an example of a generic order header workflow process: Enter Book .Order End Figure 1a: Generic Order Header Workflow process Using Workflow in Oracle Order Management Page 5 . processes. transitions and notifications. Workflow replaces Order Cycles. Order cycles. sub-processes. Workflow sub-process Workflow activity result and look up Workflow Activity Transitions Workflow Notification Activity that requires a response Note: Please check the Workflow users’ guide(A85440-01) for detailed information on workflow activities. Such workflow activities replace cycle actions. Workflow notification activities replace approval actions. Manual Close .FUNCTIONAL DIFFERENCES In R11i Order Management. cycle actions and approval cycle actions are obsolete.Order. The following table lists how cycle entities map to workflow ones in R11i: R11 Entity Order Cycle Cycle Action Cycle Action Result Cycle Action Prerequisite Approval action R11I Entity Workflow runnable process Workflow activity.

The following is an example of a generic order line workflow process: Unreserve Enter . This can support requirements such as a Car Dealership. booked and then closed.Line. invoice interface.Line C reate Supply . This means that return lines and sales order lines can be processed on the same order using different process flows. In R11 Order Entry. Different lines on an order can follow different line flows. Lines flow through line specific steps after the order is booked. an order header is entered.Line Schedule . thus completing different activities. who can on a single order sell a new car to a customer and accept a trade-in on the customer’s old car. an order and each of its lines follow different workflow processes. M anual Fulfill . such as scheduling. However adding new custom actions is much harder.Line Ship .Line lose End Figure 1b: Generic Order Line Workflow process R11I FEATURES Flexible and extensible order processes Order Header and Line WorkFlow processes In R11i. where an entire order and all its lines followed the same cycle. Using Workflow in Oracle Order Management Page 6 . unlike R11 order cycles.Deferred Fulfill Invoice Interface Line C . since that means you have to integrate with the obscure C based utilities that help set the status columns and move the order or line forward. since the number of status columns (S columns) available is fixed. etc. For example in R11i. you can tailor cycles to your meet order processing needs by defining approval or custom cycle actions. Secondly the number of custom actions or approvals you can define is limited. Adding new approval actions is easy. shipping.

Some functions are seeded in multiple variants (Synchronous. Header flows are started using this item type. Order Management (OM) comes seeded with the following workflow item types: OM Order Header (OEOH) . a tool that lets you model your Ordering process. the activity is expensive and needs to be executed off-line. Line flows are started using this item type. An order line flow is started when an order line is created and saved. These functional activities. Workflow enabling order and line business functions If a business function is a workflow enabled. by integrating with Workflow. Order Management provides you with seeded functional activities and subprocesses. graphically. An order flow is started when an order header is created and saved. with the header ID as the Item Key.Order Management addresses both these drawbacks in 11i. by assigning them to order and line transaction types.All order line level activities and sub-processes. whether the activity requires user intervention. are seeded under this WF Item type.All Order Header level activities and sub-processes. Oracle Workflow provides you with the Workflow Builder. OM Change Order (OECHGORD) .Common functions and lookups are seeded under this item type. The product comes seeded with several order and line flows. notifications and sub-processes serve as building blocks for creating flows. Using the Workflow Builder. Manual & Deferred). you can control when it is going to occur by adding the appropriate activity or sub-process into a workflow process. You can also control how it is executed. If these seeded flows do not meet your requirements you can define your own. are seeded under this WF item type. whether the activity is automatically executed. You can use these for processing your orders and lines. in the seeded OM workflow activities or sub-processes.Change Order Notification flows are started using this item type. The following is a list of all the business functions that are Workflow enabled: Header level functions Activity or Sub-process name Equivalent to Cycle Action Concurrent program available in R11I Using Workflow in Oracle Order Management Page 7 . you can define new function activities and notifications. with the line ID as the item key. OM Standard (OESTD) . Secondly there is no limit on the number of custom function or notification activities you can define. You can find order header or line business functions that are workflow enabled. No flows are started using this item type. OM Order Line (OEOL) .

Line No No Yes N/A Manufacturing Release No Yes.Line Close .Line Create Configuration Line Create Configuration Manufacturing Data. Deferred Invoice Interface -Line Invoice Interface . Manual Pick Release. to create Configuration.Order. Ship Confirm and Inventory Interface N/A Close line Purchase Release Yes.The seeded sub-processes have been designed such that concurrent program will pick up lines that did not schedule due to exceptions (holds.Order. Manual Book .Line Return Receiving . Manual Purchase Release . Using Workflow in Oracle Order Management Page 8 . Deferred Close Order Header level Invoice Interface Booking Close order N/A No No No Line level functions Activity or Sub-process name Schedule .Line. Deferred Ship -Line.Line.Line Purchase Release . please refer to the Order or Line business processes that are workflow enabled section.Line. further down in this paper. Deferred Create Supply . ** .Book . to create Work Orders.Line Schedule . RMA Interface No Note: For more details on the sub-process. to Pick Release Receivable Interface No Equivalent to Cycle Action Demand Interface Concurrent program available in R11i Yes ** Fulfill .Line Create Supply Order .Line.

To ensure that the lines on the order wait for the approval. Note: Please refer to the Using Workflow in Order Management section for examples of defining approval notifications. However you could also design this sub-process such that the notification requires a response.e. That is there is no result type associated with it. You can create custom sub-process that checks the order total and send FYI notifications to a group of people. If it does. The Appendix lists the PL/SQL API that the function activity calls. You can then. For example. Oracle Workflow provides a complete set of PL/SQL APIs and public views that can be used to make any application function workflow enabled. Instead of providing flows and activities to meet every possible business rule and need. Manual” sub-process and assign it to an Order Type. it is an approval notification. Yes Start Is this a BIG Order? No Big Order coming through End (Yes) End (No) Figure 2: Sub-process that checks Order Totals and sends out a Notification. your business makes a big floor announcement if an order whose total value exceeds a certain amount. Refer to the Workflow Users Guide (A85540-01) for details on defining Response and FYI Notification Activities). Using Workflow in Oracle Order Management Page 9 . is booked. i. then it completes with a ‘Yes’ and a FYI notification is sent to a certain application Responsibility. The sub-process could then meet the requirement where an order whose value exceeds a certain amount needs a special approval before it can proceed. The following section discusses how you can do that.missing data etc. this sub-process in a header flow after the seeded “Book Order. Refer to the section Customizing Order and Line Flows for more examples of customizations. Companies in different industries or regions often have different business needs and rules for fulfilling orders. The function activity “Is this a BIG Order” checks whether the Order value exceeds a certain amount (set via an activity attribute). Creating customized workflow activities/sub-processes Order processes can be dynamic and complex.). you would need to coordinate the order and line flows using the workflow continue-flow and wait-for-flow activities. Order Management integrates with Workflow to provide easy customizing capability. The notification activity this sub-process uses is defined to be an FYI notification.

With respect to orders and lines.Line” sub-process in the line flow (Figure 3b). This ensures that the line flow waits for the header level booking sub-process to complete. Inc omplete N ot Eligible Complete Start Book .). Line flows for the lines on an order are created as child (detail) flows. Example: All order lines should close. Order Management creates all order flows are created as parent flows.Process dependencies Oracle Workflow provides utilities to build dependencies between parent and child workflow processes. The “Continue Flow” (Book . Native WF utilities “Wait For Flow” and “Continue flow” are used to support this kind of order(parent) . So to coordinate orders and lines for Booking. before the order header closes. It is configured (via activity attributes) to continue the line activity that is waiting for the order to book.Continue Line) activity is included as part of the Order Booking Sub-process (Figure 3a. The “Wait For Flow” (Wait for Booking) activity is included in the “Enter . It is configured (via activity attributes) to wait for the “Continue Flow” inside the seeded booking process.Eligible On H old Book Book . the following dependencies come to mind: Example: Order lines should wait for the order to book before progressing in their individual Line flows.line(child or detail) coordination.Continue Line End (Complete) Figure 3a: Order Booking sub-process Using Workflow in Oracle Order Management Page 10 .

a workflow activity can be set to require user intervention. You can setup an expedited order process where several activities are performed Using Workflow in Oracle Order Management Page 11 . This is called “synchronous” or “automatic” execution mode. As opposed to the synchronous mode.Line” sub-process (Figure 4) in a line flow. Order For example. Management additionally gives you the manual mode for more flexibility. A workflow activity can also be set-up to be executed by the Workflow background engine in order to save on-line transaction time. Note: Please Refer to the Workflow Users Guide (A85540-01) for details on using coordination activities. Instead of users pulling orders by running batch processes.Start Wait for Booking End Figure 3b: Enter Line sub-process You may need similar coordination for other business functions. if you use the seeded “Schedule. you would also need to use these Wait-for-flow and ContinueFlow activities and configure them based on your custom approval activity (Notification). Deferred and Manual Transactions Workflow activities can be executed automatically by the Workflow engine. This is called “deferred” execution mode. an order line automatically schedules after the order header is booked. To support that. the Workflow engine can push orders forward. Automated. Example: All order lines should wait for a custom order level Legal Approval to complete before progressing in their individual Line flows. We call this “manual” execution mode. Automatic and deferred modes are natively supported by Workflow.

the order will book only when the user requests to book an order (by clicking the “Book” button OR via the Progress Order LOV in the R11I Sales Order form). the function executes automatically. If you use the seeded “Book . Rather the order will book when Workflow Background Process concurrent program will processes the deferred activity. ORDER MANAGEMENT WORKFLOW STANDARDS Most Order Management functions are seeded in one or more variants (Automatic/Synchronous.The seeded “Schedule . we discuss how to implement business functions in synchronous. Example . and manual modes.Order. Synchronous .Line” sub-process. determines whom the notification is sent to. Using Workflow in Oracle Order Management Page 12 . Interactive decision support and exception handling Notification functionality is new in R11I and can be used for handling business exceptions and approval requests. As described before. If you use the seeded “Book . Note : Please refer to Setup approval notification and OM: Notification Approver in later section for details on notification features. The following section discusses how these variants are designed. Manual or Deferred).Implementing a business function that is automatically executed. Deferred” sub-process(Figure 6) you do not need to explicitly request for the order to book. deferred. users can view their own notifications in Order Management. In the Order Management Workflow Standards section. Users can setup the Workflow notification viewer to view notifications using a web interface or receive notifications as e-mails in plain text. In a synchronous mode. you can setup a notification that requires a sales manager’s approval when booking orders over a certain dollar amount. The role assigned to the Notification Performer. (See Setup Workflow Background Engine in later section). The “Notifications” menu entry in the Order Management Menu launches the Workflow Notification Viewer Web Page. it requires no User intervention.sequentially (synchronously) without user intervention. By default.Order. Manual” sub-process (Figure 5) in a header flow. That is.

Implementing a business function that requires user intervention.BLOCK.Order.Schedule . Manual” sub-process.STANDARD_BLOCK and NOT the WF_STANDARD. We recommend that you follow the following naming conventions to name this special block activity: Internal Name .Eligible) Example . To enable a function to be completed manually. Using Workflow in Oracle Order Management Page 13 . in the Sales Order Form. If Scheduling cannot complete due to Holds or other expected errors then the flow will transition to the ScheduleEligible activity. Manual . you need to place special block activity before the actual function activity. This special block activity needs to call the function OE_STANDARD_WF. You can run the Schedule Order Concurrent program to reprocess such lines or complete them via the Progress Order LOV on the Sales Order Form. This ensures that Orders or Lines awaiting at this special activity shows up in the Progress Order LOV.“FuncName_ELIGIBLE” (eg: BOOK_ELIGIBLE) Display Name “Function Name .Eligible” (eg: Book .Eligible On Hold Incomplete Not Eligible Start Schedule Complete End End Figure 4: Automatic Scheduling sub-process If you create a Line that uses a flow with this Scheduling sub-process.The seeded “Book . then the Line will schedule as soon as the Order books.

Continue Line End (Complete) Figure 5: Manual Booking sub. Generally. That is instead Using Workflow in Oracle Order Management Page 14 . the Workflow Engine completes the execution of a single activity before continuing to a subsequent activity. Order Management uses the Workflow API WF_ENGINE. In some cases. Since you have all the standard information for these customers already set-up.Incomplete Not Eligible Complete Start Book . long running activities a high cost. The Progress Order LOV on the Sales Order Form will show you that this order is eligible for Booking. In normal processing. an activity might take so long to process that background processing would be more appropriate. you should assign complex. When a flow comes across an activity whose cost is higher than the threshold. To give you such flexibility. it’s flow will stop at the “Book Eligible” activity. This refers to the processing time it takes to execute that activity. you have some other Order Entry clerks who deal with new first-time customers. you would rather that the order is entered as quickly as possible into the system and the clerk not have to wait for it to book. Deferred . Cost can also be relative in terms of the business flow that is being executed. You can book such an order either by clicking ‘OK’ button on the LOV or by clicking the “Book” button on the Sales Order Form. you want the order to be booked online so that the clerk can if required get additional information from the Customer or inform him about credit check related issues. long time customers.Implementing a business function that is executed off-line. The default threshold for the Workflow Engine is 50 hundredths of a second. For example. Oracle Workflow lets you associate a cost to a function activity. it is deferred to the background. before he can move on to the next order or customer. you have a few Order Entry clerks who are dedicated to taking orders from habitual.process The “Book . So in this case you would want the booking process to be deferred. Now on the other hand. In this case.Defer_Thread to defer a flow to the background. STANDARD_BLOCK.Eligible” activity calls the function OE_STANDARD_WF.Eligible On Hold Book Book . If you create an Order with an Order Type that uses this Booking sub-process in its Header flow.

g. sub-processes.of defining an activity to be a high cost one. Manual” sub-process for processing orders from new customers. The naming convention followed WF_ENGINE. Deferred” sub-process Book .DEFER_THREAD to defer the flow to the background.g.: Book . we discuss only the “display name” naming conventions.Continue Line End (Complete) Figure 6 : Deferred Booking sub-process In this sub-process. Naming Conventions Order Management follows certain naming convention for creating WF processes. Unlike internal names.Eligible On Hold Incomplete Start Book . thus booking the order.Deferred (e.Deferred) Example . However doing so.: BOOK_DEFER) Display Name . will make all OM WF data (seeded and custom) appear consistent to the end user. it executes the “Book” activity. the activity “Book -Deferred” calls the WF API WF_STANDARD. When the Workflow Background Engine picks up this deferred flow.Defer_Thread is as follows: for activities that call the Internal Name . activities. Here.Order.FunctionName_DEFER (e.The seeded “Book . display names can be changed after Workflow data is created. it gives you variants of business functions that are deferred and those that are not. but use the seeded “Book . It is not necessary that you follow the same conventions.Order. This gives you a lot more flexibility in designing your flows. Note that both these sub-processes use the same “Book” function activity. Thus you could use the seeded “Book .Function Name .Deferred Book Complete Not Eligible Book . Users can Using Workflow in Oracle Order Management Page 15 . etc. Deferred” sub-process for processing orders from longtime customers.Order.

g. return. For “internal name” naming conventions. Deferred Invoice Interface .Deferred Description The actual booking function activity Booking eligibility block Activity to defer Booking Using Workflow in Oracle Order Management Page 16 . please refer to Order Management User Guide.Order. model.Generic Line Flow .XXX e.Eligible Book . Manual Book . Name Order Flow .Line Function Activity Description Automatic booking header level sub-process Deferred booking header level sub-process Automatic Invoice Interface line level sub-process Format: Function .Generic.Order.Return for credit only Description Generic order header flow that can go with any line flow for standard item.g. Generic sales order line flow that supports all item types except the Configured Item.Generic Order Flow .Eligible/Deferred/Continue/Wait e.see these display names in both Workflow builder and in the Workflow monitor when viewing the order or line status.g. Name Book .Order/Line. Generic order header flow that includes header level invoice activities. Order Management follows the following naming convention for “Display Names”: Process Flow Format: Order/Line Flow . Sub-Process Format: Function . Name Book Book . Manual/Deferred e. Return line flow for issuing credit only. with header level invoicing Line Flow .

A function activity completes the “On Hold” result when it runs into a generic or activity specific Hold. A function activity completes with the “Not Eligible” result when it does not make sense for the Order Header or Line to be processed by a that activity. handles Holds”.g. You can then provide the missing information and attempt to re-book the order via the “Book” button or the Progress Order LOV. This lookup has the following result codes: Complete. On Hold. It is important to note.g.processes (those that can be used in runnable flows) use the seeded lookup “OM Sub-Process Success Results”. that only on a successful completion (Complete or Not Eligible result) of a business function. All seeded flows are built using the “Default” transitions to move a flow forward.: When the seeded ‘Schedule” activity processes a Service Item Line. E. Not Eligible.: When the seeded “Book” function successfully books an order. E. Hence most function high-level sub. You can then provide the missing information and attempt to re-book the order via the “Book” button or the Progress Order LOV.g. The “Incomplete” result normally transitions to an “Eligibility” block or a Wait Activity.Book . Incomplete. The “On Hold” result normally transitions to an “Eligibility” block or a Wait Activity. Activity Results Most Order Management function activities use the standard seeded lookup “OM Sub-Process Results. does a flow exits out of the respective functional sub-process. E. Not Eligible. it completes with a “Not Eligible” result and transitions to the end of the scheduling subprocess.: When the seeded “Book” function finds that there is generic hold on the order. E. it will complete with a “Complete” result.: When the seeded “Book” function finds that the order header does not have a Customer specified. it will complete with an “Incomplete” result and transition to the “Book -Eligible” activity. it will complete with an “On Hold” result and transition to the “Book -Eligible” activity. A function activity completes with the “Incomplete” result when it runs into expected errors that it is built to handle. as opposed to having separate transitions for the “Complete” and the “Not Using Workflow in Oracle Order Management Page 17 . This lookup has the result codes: Complete.g.Continue Line Wait for Booking Booking coordinating activity to continue the waiting line flows Line coordinating activity that waits for the Order to Book. A function activity completes with the “Complete” result when it executes successfully.

Access Control All Order Management seed WF data is locked at the access level of 20. When you create any new OM WF data. then Oracle Workflow does not start a notification flow in case the activity runs into an unexpected error. you can make copies of the seeded processes and then make the necessary modifications.Eligible” results. Note: Please refer to “Handling Errors” section for details on how unexpected errors are handled. The following data is not locked: • • Item Attribute . you should specify this error process as the default. This process determines the notification flow that Oracle Workflow starts when a workflow activity runs into an unexpected error. Default Error Process All Order Management seed WF data is defined to use the “Retry Only” error process. the user who receives the error notification has the option of skipping or aborting the errored activity. You should be working at an access level of 100. To customize.OM WF Administrator Message Bodies USING WORKFLOW IN ORDER MANAGEMENT Set up Here are the things you need to do before using Workflow with Order Management: • • • • • Setup “Order Management WF Administrator” Workflow item attribute Review seeded OM WF data and define Workflow processes via the Workflow builder Setup approval notifications and OM: Notification Approver Setup Workflow assignments for order/line transaction types Setup the WF background Engine Setup “Order Management WF Administrator” WF item attribute Using Workflow in Oracle Order Management Page 18 . If you specify a default error process other than “Retry Only”. The assumption being that in either case the sub-process has completed processing and the flow can move forward. this can result in data corruption. Order Management does not support you specifying a default error process other than “Retry Only” error process. If you do not specify an error process.

you need to setup the order header/line workflow processes. Under the “Attribute”. you’ll need to load roles from the database by going to the menu bar “File” and select “Load roles from database”. notifications. Or you can build several simpler flows to handle the different business process needs and use them appropriately via Transaction Type Workflow Assignments. OR Copy a seeded workflow process to create a new workflow process and modify this newly. Order Management comes with several seeded order and line workflow processes. OEOL (OM order line) and OECHORD (OM Change Order) and needs to be set for all three. Note: Please refer to the section Error Handling on details on how errors are handled. click on any of the OM Workflow items (OEOH. and any other components needed to build flow processes to meet your specific business requirements. Assign a responsibility in the “Value” field. Create custom activities. The WF activity that generated the error is marked to be in an error state. 3. a notification is sent (please refer to Workflow error process in Workflow User’s Guide) to the responsibility assigned to “Order Management WF administrator” item attribute. the down side of Using Workflow in Oracle Order Management Page 19 . Review seeded OM WF data and Define Workflow processes via the Workflow Builder Before you can process orders in Order Management. You can set this item attribute via the WF builder. the performance cost will be higher. However. Data integrity errors etc). just like you setup order cycles in R11 Order Entry. In the “Attribute” tab. The item attribute is available for Order Management Workflow items OEOH (OM order header). Check whether the seeded data meets your business needs. Suggestion: You can build few complex flows to accommodate various business scenarios. We recommend you do the following: 1. An order progressing along a flow can run into unexpected errors (Rollback segment errors. Since a complex flow will have more condition checking and branching to handle various scenarios. Right click on it and select “Properties” to open the properties window. You need to balance performance with user convenience. In the Workflow builder. activities. Review the seeded flows. 2.You need to assign a responsibility (role) to the Order Management Workflow item attribute “Order Management WF Administrator” for unexpected error handling. Whenever an unexpected error occurs. find “Order Management WF administrator”. using seeded and/or custom sub-processes/activities. notifications. copied workflow process according to your business requirements. The item attribute is set to have a default value of SYSADMIN. there is a “Default” region. OEOL or OECHORD). etc. Use the seeded runnable flows as examples to create your own flows. If you can’t see any other responsibilities in the LOV.

2) When an order or line is created..2 workflow processes. Setup approval notification and OM: Notification Approver Workflow Notifications in R11I replace R11 Approval functionality. This is a static approver for this notification for any order or line using this workflow process. In R11 Order Entry. the responder of the notification is the value indicated by the “NOTIFICATION_APPROVER” Workflow Item attribute. decline. any user who had access to “Approve Orders” form could perform an approval. When an order or line flow comes across such an activity. The approver can either approve. Using Workflow in Oracle Order Management Page 20 .creating many simpler flows is that it relies on user to pick the right Order Type/Line Type when entering orders. set the “Performer” to be of type “Constant” and assign a value (WF Role) to it. You can also set the value of this Workflow item attribute dynamically based on one of the following values: “OM: Notification Approver” profile option value. “Created By” of the order or line. or forward the notification to another approver. In this case. • (With R11i. When you add the notification activity to a workflow process. this WF item attribute is set based on the value of the Profile Option “OM: Notification Approver”. the recipient is derived based on the value of the “Notification Approver” item attribute. there are a couple of ways you determine who gets an Approval Notification : • When you add the notification activity to a workflow process. you place the seeded order Management Workflow utility “Set Notification Approver” in a workflow process before the notification activity. That is such a notification will always go to the same recipient (WF Role). This means that the same notification can go to different recipients for different orders/lines. you need to define Notification Activities that require a response. set the “Performer” to be of type “Item Attribute” and assign the value “Notification Approver” to it. To support the Approval requirements. When the notification is sent. To do this. In R11i Order Management. the WF Engine will send out a notification to the approver and request a response. Note: Please see the Appendix for seeded R11i.

option number.This returns the order type and order number. However note that having too many workflow item attributes defined can deteriorate performance.g.Approval Failed End (Incomplete) Fails Passes Start Utility .Set Notification Approver Approve Return Order Approve . you can use the following seeded Order Management Workflow item attributes to provide context: • • Header Short Descriptor . When this activity is executed.This returns the order type. This return order (&RMA_HDR_SHORT_DESCRIPTOR) requires your approval. the message attribute RMA_HDR_SHORT_DESCRIPTOR has the WF item attribute “Header Short Descriptor” as its default value. order number. and line quadruplet (Line number. You can use the seeded “Approval Failed” block defined under OM: Standard (OESTD) to manage failed approvals. since a database row is created for the order or line for every item attribute defined. Line Short Descriptor . service number). Created By. e. Again you can define additional item attributes. We recommend that you use the Notification Approver Item attribute as a place holder to store such a value.Continue Line End (Complete) Figure 7: Return Approval sub-process You then need to set its activity attribute “Source” to one of the following: Profile Approver. You can use these as default values for your message attributes and then use the message attributes in the body of the message. Again the responder on the Notification Activity would default from the Notification Approver Item attribute. Order Created By. shipment number. In this example. • You could define custom activities that dynamically determine who the Approver is. it will dynamically set the WF Item Attribute “Notification Approver” for that Order or Line to the appropriate role value. When defining notification message bodies. Transition failure results to this block to Using Workflow in Oracle Order Management Page 21 . set them using custom function activities and use them for message context. And the notification will be sent to that role. as opposed to defining additional item attributes.

Now if you create an order with the “Standard” order type. You can assign the seeded “Order Flow .g. When you define an order type.g.ensure that the flow does not progress any further.Generic” workflow process. add a Line using the Standard line type for a standard item. Using Workflow in Oracle Order Management Page 22 . you need to assign a header workflow to it. and Item type. Now. Both order and line types are setup using the Transaction Types form. If you leave item type field empty. Since each line follows its own flow. E. You have to do the following: 1. Line type. you also need to setup workflow assignments at the Line Type level. 4. how do you get an Order or a Line to start a particular workflow process? by setting up workflow assignments for Order and Line transaction types. In R11i. 2. Line level workflow processes are assigned based on an order type. any type of item will be able to use this line flow assignment. it will start a flow using the Line Flow Generic workflow process. in addition to order types. You can then manually cancel the Order or Line that failed the approval. If you setup the following assignment: Standard Order Type + Standard Line Type + Standard Item -> Line Flow Generic When you create an Order using the Standard order type. Setup Line and Order Types in the Transaction Type form Query up a particular Order Type Click on the “Assign Line Flows” button Assign a line workflow process for a combination of Order type. Setup Workflow assignments for order/line transaction types Note: Please refer to the Transaction Types White Paper for detailed information on defining Transaction types and setting up workflow assignments . This is very similar to associating order cycles to order types in R11 Order Entry. and item type combination. 3. line type. The order header will start a flow using the “Order Flow . E.Generic” to it. You set up a “Standard” order Type. you have line types.

but defers it to the background. You may decide to use the “Book . A seeded sub-process “Enter . Order Management uses native WF co-ordination activities to ensure that order lines wait for the order to book before progressing.® 12 Figure 8: Transaction Types Form Setup the WF background Engine The Workflow Background Engine processes deferred activities. Scheduling Using Workflow in Oracle Order Management Page 23 . You need to schedule the “Workflow Background Process” concurrent program to re-submit periodically. Manual” for certain others.Order. Booking an Order is workflow enabled. You can also add an order-level approval before the Booking process in a header flow. You can also create you own Booking process that say.Line” is provided at the line level. please specify Order Management work item types as parameter so that it only picks up activities specific to Order Management work items.Order. lets you control when the Order books. You can book an order in various ways. Note: Refer to the Oracle Workflow Users Guide (Part Number A85440-01) for information on the Workflow Background Engine. Deferred” process for certain kinds of Orders and the “Book . Order or Line business processes that are workflow enabled Booking In R11i. wait activities and timed out activities. When scheduling the concurrent program. this is configured to wait for the seeded Booking function to complete before progressing (figure 3).

In fact the “Ship” activity is a block activity that waits until the line is picked. The processing needed for handling the configuration item is separated out from that for the ATO Model. Ship The functionality provided by the cycle actions of Pick Release. In both cases exceptions are routed to the “Schedule Eligible” block activity. one where it is performed synchronously and another one where it is deferred.Line. Back Order Release. etc. Each of the shipping functions are not Workflow enabled in R11i. You could also define your own custom sub-process. The seeded flow “Line Flow . You need to use this sub-process when defining line flows that need to support different types of items. such that Scheduling can only be done via the concurrent program (by placing the “Schedule . You can progress lines that are at this activity using the Schedule Orders Concurrent program or the Progress Order LOV.Configuration” supports processing for Configured Item Lines.In R11i. There are various seeded subprocesses to support functions such as creating the configuration item. it branches ATO model lines through the Create Configuration process. Ship Confirm and Inventory Interface is now delivered via the seeded “Ship . One a Line hits this block activity. ATO Processing The entire ATO process is now workflow enabled. Note: The “Create Supply” sub-process can handle all kinds of lines except the Configured Item Line. the BOM & routings. you need to manually pick and ship the line using the Shipping transaction forms. or branches externally sourced lines to the Purchase Release process. calculating lead time and rolling-up cost. shipped and interfaced to Inventory and Shipping communicates that information to Order Management. The seeded “Line Flow . creating the work order. Manual” sub-process.Eligible” activity before the “Schedule” activity). Order Management provides two variations on Scheduling. Create Supply The seeded “Create Supply” sub-process has the intelligence to route Order Lines differently based on the item type and whether they are internally or externally sourced. the Scheduling function allocates supply to your demand and makes the Order line visible to MRP (as demand). Purchase Release Using Workflow in Oracle Order Management Page 24 . For example. Note: Please refer to the Scheduling White Paper for more details.Generic” can handle all kinds of lines except the Configured Item Line.

When the WF Background Process Concurrent Program is run it picks up such deferred activities and processes them.Line” sub-process interfaces line information to Invoicing. “Purchase Release .Order”. Invoice Interface The Receivable Interface concurrent is obsolete in. ATO and PTO configurations are viewed as native fulfillment sets by the application. The seeded “Invoice Interface . ensure that you configure the “Fulfill” activity appropriately by setting its activity attributes. Order Management also provides the means to interface all lines on an Order to Invoicing at the same time via the seeded sub-process “Header level Invoice Interface . You can use the seeded Order Flow “Order Flow . Manual” . Ship-confirmation. out of the box. Order Management enhances this functionality of “Fulfillment” and separates it from the function that interfaces to Invoicing. You can define your own fulfillment sets and put Lines in them.Line. Purchase Release Receipt and Returns Receipt are supported as fulfillment events. Return Receipt The RMA Interface concurrent program is obsolete in Order Management. You can Purchase Release the Line either via the Progress Order LOV from the Sales Order form or by running the Purchase Release Concurrent Program. This process has been seeded in two variations: “Purchase Release . Example: The ATO Model.Generic with Header Level Invoice Interface” along with the seeded Line Flow “Line Flow . Class and Option lines would not interface to Receivables until the Configured item was shipped. Fulfillment is also workflow enabled and the seeded “Fulfill” activity ensures that lines do not move forward in their flows until they are fulfilled.Generic with Header Level Invoice Interface” to interface the entire order Using Workflow in Oracle Order Management Page 25 .The seeded Purchase Release sub-process interfaces information to Purchasing when order lines need to be drop-shipped. The Returns receipt and acceptance function is workflow enabled using block activities. It then communicates information to Order Management regarding receipt and acceptance against those lines. Purchasing looks at a view based off Return Lines to determine what is eligible to be received. Fulfillment In R11 Order Entry the Receivables Interface Concurrent program had built-in intelligence to not interface lines that were not “fulfilled”. Deferred” . Returns are received using the Oracle Purchasing Receipt functionality. When you define custom line flows.This needs manual intervention.Line. The fulfillment functionality will ensure that they all go past the “Fulfill” activity together.This defers the Purchase Release activity to the background.

Secondly various seeded constraints go into effect one a line is Invoice interfaced. Management calls CRM APIs whenever an Order is created or updated. When an order (or line) is created. once a flow is started or re-started (after it has stopped) the WF Using Workflow in Oracle Order Management Page 26 . The flow stops when it hits block activities. You need to setup Invoicing Grouping Rules if you want to create one invoice for the entire order. Manual or Deferred.: You cannot cancel a line once it is interfaced to Invoicing. Closing Orders and Lines is workflow enabled. Invoicing data will be pointing only to the original line. Eg. It is designed to close the order at the end of the month. The Workflow engine will push the order/line ahead as long as the activities are synchronous. The flow gets deferred to the background when it hit a highcost activity or an activity that explicitly defers the flow to the background. This will prevent you from canceling a line that is not yet shipped.to Invoicing. However if a line using such a flow is partially shipped. Close Order and Close Line The Close Orders Concurrent program is obsolete in R11i. You would also need to resolve legal issues if any with respect to recognizing revenue before the product is shipped. Synchronous Completion In this mode. there are three modes in which business functions could be executed: Synchronous. Moving Orders and Lines forward in their flows How do you progress an order or line along its flow? As we said before. notification activities or wait activities.Order” sub-process uses native WF co-ordination activities (wait for Flow) to ensure that the order header closes after all the lines have closed. It is important to note that the creation of the invoice is still controlled by the Auto Invoice concurrent program. The seeded “Close . Order Note: Please refer to the Sales Order Overview White Paper on more details on the various products that Order Management integrates with. the application starts a header (or line) flow for it. The seeded “Close . There is nothing to prevent you from a creating a workflow process that interfaces to Invoicing before the Line is shipped.Line” closes the line and uses the native WF activity Continue-Flow to communicate to the waiting header Close process Note: The Service Interface Concurrent Program is obsolete with R11i. The application still supports Invoicing only after Shipping.

Generic”. The following (Figure 9).activities are executed synchronously or online until it reaches the end of the flow or reaches some kind of a block activity or is deferred. then you can move the order/line forward via the Progress Order LOV (Can be accessed from “Action” button).You create a line that uses the seeded “Line Flow . shows the case where an order is eligible for Booking. available from the Sales Order Form Some seeded “Eligibility Blocks” can be completed en-masse by running the following concurrent programs: Schedule Orders Purchase Release Using Workflow in Oracle Order Management Page 27 . This has the seeded “Schedule . the line will automatically go ahead and schedule. The flow will then continue on stop at the “Ship” activity. That is the flow for that order. Clicking OK on the LOV. will trigger completion of the “Book -Eligible” block.Line” sub-process (Figure 5). thus booking the order. The Progress Order LOV displays that the order is eligible for Booking.Eligible” block. This LOV displays the functions that the order or line is eligible for (and can be manually completed). the flow will move to the “Book” activity and execute it. Provided that there are no holds. Manual Completion If the order/line hits an “Eligibility Blocks” like the one we discussed in the section on “Implementing a “manual” function in Order Management”. once the order is booked. making the line eligible for Pick Release.Order. Manual” subprocess (Figure 4). Example . uses the seeded “Book . The order is currently stopped at the “Book . ® 20 Figure 9: Progress Order LOV.

Fulfillment is deferred in all the seeded line flows.Defer” activity. Deferred” sub-process (Figure 6). you need to receive the goods against that return line (and accept them) to move it forward. So how do you know where an order or line is in its flow? There are a couple of ways: Order and Line Summary status The status field on order and line tabs in the Sales Order form and Order Organizer. Example: You create an order that uses a flow that has the seeded “Book . The Workflow Background Engine also processes Wait activities and Timed-Out activities. the Order flow is deferred to the background. you have to Pick Release the line and then Ship Confirm it to move it forward. then you need to respond to the Notification to re-start the flow. The header status displays one of the following values based on where the order Using Workflow in Oracle Order Management Page 28 . Open/Close. Fulfillment etc) is denormalized onto the base Order Management entities. Deferred Completion A order or line flow can also stop because the flow was deferred to the Background Engine. in WF_ITEM_ACTIVITY_STATUSES and WF_ITEM_ACTIVITY_STATUSES_H tables. Some core status information (Booking. You need to schedule the Workflow Background Engine Process concurrent program to run at periodic intervals to be able to fulfill and invoice interface lines. If a return line is stopped at the “Wait for Receiving” activity. Thus if a line is waiting at the “Ship” activity. You need to run the Workflow Background Engine Process concurrent program to pick up such deferred flow and process them. Tracking order status R11 Order Entry tracks cycle status via the S and S Date columns on Order Headers and Lines. In R11i Order Management workflow status is stored Workflow entities.Order. When the flow reaches the “Book . shows where an order or line is in its flow. If a order or line flow stops because it is awaiting a user response on a Notification Activity. The Workflow Engine maintains state information and history for work items (orders & lines) in these tables.AutoCreate Configuration Items AutoCreate Final Assembly Orders Some other block activities can be completed by performing certain specific actions.

which activity is currently active etc. Booked. Shipped. The line status displays one of the following values based on where the order line is in its flow: Entered. Closed or Canceled. Config Item Created. Invoice Interfaced Partial. Shows Order/Line Status summary Workflow Activity Status Page You can also launch the Workflow Status page from the “Tools” menu from the Sales Order Form/Order Organizer. Picked Partial. Fulfilled. Awaiting Receipt. Awaiting Shipping. Booked. A Browser window is launched to display the Workflow status history in a tabular format.header is in its flow: Entered. depending on where the line is in its line flow. Picked. Awaiting Fulfillment. Production Complete. Using Workflow in Oracle Order Management Page 29 . Status for configuration and ATO Item lines will additionally show: Production Eligible. Functions etc. Received. Production Partial. Production Open. Invoice Interfaced. Figure 10: Order Organizer. FYI Notifications. It displays detailed information on when an activity was completed.). You can use filters on this page to only view status information for certain kinds of activities (eg: Response Notifications. Status for the Configuration Line will additionally show the following information: BOM and Routing Created..

You can select individual components of the flow.Figure 11: Workflow Status Page. and the tabs at the bottom will display information about the selected activity/sub-process. available from the Sales Order Form Workflow Monitor From the Status Page. Figure 12: Workflow Monitor. you can launch the Workflow Monitor. via the “View Diagram” button. This gives you a graphical representation of where an order or line is in its flow. You can also zoom in/out of sub-processes using the buttons in the right-hand corner. available from the Status Page Using Workflow in Oracle Order Management Page 30 . The progress of flow is highlighted in green.

Pick Release. you can call the booking status API as follows: OE_ORDER_HEADER_PUB. then after this call.GET_BOOKED_STATUS(12345. a ‘N’ when a order or line has not completed a specified business function and a ‘P’ when a order or line has partially completed a specified business function (eg: Invoiced Interfaced partial on account of unfulfilled Required for Revenue components). Fulfillment. you can call the booking status API as follows: OE_ORDER_HEADER_PUB. L_result is declared as a variable of type VARCHAR2. These APIs allow you to retrieve status information or status and date(when the function was completed) information for a order header or line. Invoice Interface.Public Status APIs Order Management also provides you with Public PL/SQL APIs to query order and line workflow status. DATE_COMPLETED OUT DATE) Where FUNCTION stands for the actual function that you are querying status information for. These APIs are overloaded with the following generic signature: GET_FUNCTION_STATUS (ENTITY_ID IN NUMBER. l_result will have a value of ‘Y’. You need to pass to the API the HEADER_ID or LINE_ID for the order or line that you are querying status for. if the order isn’t booked then l_result will have a value of ‘N’. Configuration Creation. The APIs return a ‘Y’ when a order or line has completed a specified business function. Return Receipt. Example . If the order is booked. The package OE_LINE_STATUS_PUB provides status information for Order Lines for Cancellation. Drop-Ship Receipt.GET_BOOKED_STATUS(12345. Cancellation and Close status. Shipping and Work Order Management. If you wanted to query both the booking status and the date the order was booked. STATUS OUT VARCHAR2) GET_FUNCTION _STATUS(ENTITY_ID IN NUMBER STATUS OUT VARCHAR2. Scheduling. ENTITY_ID stands for either HEADER_ID or LINE_ID depending on whether the functions is returning order or line status information. Using Workflow in Oracle Order Management Page 31 . Close. In this case the header_id for the order whose booking status you are querying is 12345.To check whether a certain order is booked. l_result). The package OE_HEADER_STATUS_PUB provides status information for order headers for Booking.

l_result. Holdable Line Activities) based on your custom workflow activities and define holds based on them. However when you fully cancel an order or a line. Order Management provides Public APIs (OE_HOLDS_PUB) that can apply holds. Holds In R11 Order Entry. If the order is booked then the l_result_date will indicate the date the order was booked on. The Book activity posts messages indicating that a hold exists. Cycle actions honor both kinds of holds. The application checks constraints before every update/delete/insert operation. A flow that comes across a hold does not proceed unless that hold is removed. Using Workflow in Oracle Order Management Page 32 . You can also seed lookups (Holdable Header Activities. If the Constraints are status based. Note: Please see the Appendix for a listing of Procedures. check whether an order or line is on hold and remove holds. you cand define generic or cycle action specific holds. once the Order is booked. Example: Cannot change quantity. you can define and apply generic or activity specific Holds (based on workflow activities). You can define processing constraints based on flow state or custom PL/SQL APIs. once Line is past some custom approval. It then completes with an “On Hold” result and transition back to the “Book . the Processing Constraints Framework provides you with enhanced security rules functionality. the framework logic looks at WF status tables or status information de-normalized onto the base Order Management entities.Eligible” activity. This is carried forward in Order Management. Processing Constraints In R11 Order Entry you can define security rules based on cycle actions. In R11i Order Management. The order or line summary status will indicate the order or line is canceled. The product comes seeded with various constraints and you can define additional constraints. Header and line flows honor both kinds of holds. Example: Cannot delete an Order Line. l_result_date). its flow is stopped and transitioned to the Close Order or Line activity. Workflow and other OM function areas Cancellations Cancellations is not workflow enabled in Order Management. You can define custom workflow activities that honor holds. Example: You cannot Book an order that has a generic order level hold or a Booking specific hold.

If you attempt to Book an Order that does not have a Customer specified.Since the Processing Constraints Framework looks at Workflow status tables. The Administrator can also choose to retry the activity from the Workflow Monitor. Expected Errors These are errors that business processes expect to run into and handle. the activity errors out and Oracle Workflow starts the default error process . This triggers a retry of the errored activity. Eg: Database errors such as running out of rollback segments. or the Workflow activity (Book) and/or by Order or Line Basis. Example: Booking requires that a Customer is specified on the Order. In this case. T he activity that ran into the unexpected error gets marked with an ‘Error’ status (in WF_ITEM_ACTIVITY_STATUSES) and a notification listing the details is sent to the role specified in the “OM Workflow Administrator” item attribute. you can define constraints based your custom activities as well. Data integrity errors. When an activity is processed by the Background Engine. i. Unexpected Errors These are errors that a business process does not expect under normal circumstances.e the activity is synchronous or is manually completed via the Progress Order LOV. You can view these messages via the Processing Messages window using either the Concurrent Program request number. these error messages are stored in the Order Management processing message table. the Processing Messages window pops up to display messages that indicate the errors. Error handling There are two kinds of errors that Order and Line flows can run into. Once the problems have been corrected the administrator can choose the ‘Re-try’ option on the notification and complete it. The seeded WF activity “Book” will complete with an “Incomplete” result.e the activity is deferred. When an activity is completed via a concurrent program. its output file lists all the error messages that were posted. When an activity is completed via the Sales Order Form. This is seeded WF error process. i.“Retry Only”. Using Workflow in Oracle Order Management Page 33 . Expected errors and Unexpected errors. the application will display an appropriate message and the Order will not book.

Most of the core Order Management status information (like open. you will not be able to use these Status APIs for those orders. you can run this Concurrent program to delete WF status history data for Closed Orders (and their closed Lines) whose flows have completed. Do remember. you should be aware of the following: • • You will no longer be able to view Workflow status information for such orders. You can copy seeded runnable processes. Purging Workflow Status Information Oracle Workflow provides a Concurrent program that lets you purge workflow status information for flows that have completed. If the high volume of workflow status information is affecting performance negatively. fulfilled etc) is de-normalized onto the base OM entities. Again you should be working at an access level of 100. If you purge workflow status information for closed orders. However if you had defined custom constraints based off workflow activity statuses. Many OM Public Status APIs look at Workflow tables to return status and date information for some seeded business functions. Any new runnable Order or Line flows can be used by assigning them to Using Workflow in Oracle Order Management Page 34 . booked. to specify a value (in days) for the "Age" parameter. The Purge Orders concurrent program lets you purge selected closed orders and their workflow history. the program only purges those flows that completed before the number of days specified. Most seeded processing constraints work off these base columns. However if you run this concurrent program.Note: Refer to “Setup Order Management WF Administrator WF item attribute” section on how you can set this WF Item attribute. CUSTOMIZING ORDER AND LINE FLOWS You can customize Order or Line Workflow processes via the Workflow builder. • Note: Order Purge functionality is provided with Order Management. they would no longer apply (since the WF status information is deleted). Seeded constraints prevent you from updating Orders/lines that are closed. change the internal & display names and then modify them as needed.

use one of the seeded Booking processes as opposed to the seeded “Book” function activity.Fulfillment activity. Þ If the header or the line flow (used with the header flow) is using any of the seeded functional sub-processes then. You need to set the activity attributes when such an activity is placed in a process. Þ If you add order level approvals that need to be honored by all lines on an order. Example . Þ Do not design a line flow such that the line interfaces to Invoicing before it ships. All line flows should have the Close Line sub-process. Guidelines We recommend the following guidelines when you define custom data: • When defining runnable order or line flows. Example: All the seeded line flows that support fulfillment use the function activity “Fulfill”. The functional sub-processes are designed to handle exceptions and sometimes to additional stuff.Order or Line types via the Define Transaction Types form. Example: When defining a header flow. you need to ensure that its flow has a subprocess that does that.Invoice Interface for details. via setting its activity attributes. Þ Include the functions sub-processes that represent the processing you would like the order or line to go through. The activity to set the Notification Approver. then you may need to ensure that new lines are not added to the order once it is past that header approval (via custom constraints). See the section Order or Line processes that are workflow enabled . If Close Order and Close Line are the only seeded subprocesses you are using in your header or line flows then you do not need to include the Booking sub-process in the Header flow and you do not need to include the Enter sub-process in the Line flow. Thus if a line needs be interfaced to Invoicing. You could use specific function activities when the seeded flows also use them. Using Workflow in Oracle Order Management Page 35 . Þ Some WF activities need to be configured to be used. use the seeded functional subprocesses as opposed to using the function activities. the order header flow should have the Booking sub-process and the line flow should have the Enter sub-process (to ensure that lines wait for the order to book). • Adhere to the following rules Þ All order header flows should have the Close Order sub-process.

when the seeded functional sub-process is altered to provide enhanced functionality. thus making them more efficient. The seeded Order Management flows are designed to handle different kinds of items. If you copy a seeded functional sub-process and change its definition (eg: add a custom activity in between seeded activities. change its internal and display name. Examples You can do simple to very complex customizations using Oracle Workflow. Oracle does not guarantee that such a custom subprocess will provide the same functionality as the seeded sub-process. You can then remove the sub-process “Create Supply . You can also define constraints based on your custom activities and how they were completed.• • Always specify “RETRY_ONLY” as the default error process for any custom WF data. This sub-process internally calls other sub-processes based on whether the item is built and whether the line is internally or externally sourced.Line Schedule .Generic” to a new one. the custom sub-process will not automatically be changed.Your business does not do ATO processing and it does not drop-ship lines. You can design order .Line” from this new definition(Figure 13).Deferred Fulfill Invoice Interface . Secondly. you should create a different activity or sub-process that does the custom processing. • Standard Items and PTO Only . Manual Fulfill .Line Line End Figure 13 : Line Flow . You can copy the flow “Line Flow .Standard Items Only Using Workflow in Oracle Order Management Page 36 . Since you only deal with Standard items and PTOs and you do not source from an external vendor.Close . Enter .line co-ordination based on custom activities. delete a seeded activity etc) and use it in new order or line flows. You can define custom activities such that they can be completed via the Progress Order LOV. then this sub-process is considered a custom sub-process. your line flows do not need this sub-process. You can then place this new activity or sub-process before or after the appropriate seeded functional sub-process in a runnable Order or Line flow. You can copy and modify these to exactly suit your requirements.Line. You can define your custom activities such that they honor holds.Line Ship . Hence instead of customizing the seeded functional sub-process.

Order.Your business sells to foreign nations and hence needs to comply with export regulations. Using the seeded activities Book -Eligible. however you do not want them to have to wait while the order books.• Deferred Booking that is manually controlled . Book -Deferred.You want your Order Entry clerks to be able to control when an order is booked. Order Management does not seed a sub-process that supports this exact variant.Eligible Book . however you can very easily create such a sub-process. In case of failure it completes with a “Fails” result and transitions to a failure block(WF_STANDARD. If the Order line is export compliant then if completes with a “Passes” result.Continue Line. you can create a new Booking sub-process. You would then need to manually cancel the line. and Book . Incomplete Start Book . Create an order header flow that uses this booking process and assign it to an Order Type. Manual and Deferred • Custom external processing .Deferred Book Book . Using Workflow in Oracle Order Management Page 37 . You use Export Compliance software from an external vendor that ensures that you are compliant. Book.Continue Line End (Complete) On Hold Figure 14: Book . that ensures that the flow does not move forward. You need to integrate with this software so that it checks that an order line is export compliant before it can be processed further.Eligible activity.BLOCK). Branch the transitions for the Incomplete and On Hold results back to the Book . There are many different ways to achieve this: Define a workflow function activity “Export Compliance” that calls a PL/SQL API that integrates with your Export Compliance software (Figure 15).

In the latter case. Users who have the authority to deal with such lines can either cancel the line or complete the necessary procedures to make the line compliant. Export Compliance Failed. in case of failure it transitions the flow to a Block activity that calls the API OE_STANDARD_WF. The sub-process is designed such that it performs the compliance check again. If you think it is more efficient to process Lines for export compliance en-masse. Cancel or Re-try Fails Passes Start Export Compliance End (Passes) Figure 16: Export Compliance sub-process that allows a re-try If the Export Compliance call is expensive you can defer it by setting its cost to be higher than the WF Threshold.Export Compliance Failed Fails End (Fails) Passes Start Export Compliance End (Passes) Figure 15: Export Compliance sub-process that uses a function activity Alternatively you could also code the cover for the “Export Compliance” activity such that.STANDARD_BLOCK (Figure 16). they would be able to progress the line from the Progress Order LOV(from the Sales Order Form). you can design the sub-process as follows(Figure 17): Using Workflow in Oracle Order Management Page 38 .

BLOCK. It then integrates with the export compliance software and processes them.COMPLETE_ACTIVITY).g. in cases where completing some additional procedures could make an Order Line compliant. that is it queries lines that are awaiting at the block activity “Eligible for Export Compliance Check” by looking at WF Item Activity Statuses view. Using Workflow in Oracle Order Management Page 39 . In case it is deemed that there is anything that can be done to make this Order Line export compliant. If they pass export compliance. You can write a concurrent program that can pick up lines that are eligible for “Export Compliance”.Process_Order) to cancel such lines. In such cases the flow transitions with a “On Hold” result to an eligibility block. You can also set a time-out interval (e. the user could cancel the line. it can complete the block activity using WF Engine APIs (WF_ENGINE. This will force the flow to closure. If they fail export compliance. using the Order Management Hold APIs). this will automatically trigger its completion after the specified time. the concurrent program can call the Order Management Process Order API (OE_ORDER_PUB. You could refine it further (Figure 18). They could then complete the “Handle Holds” block activity via the Progress Order LOV.Start Eligible for Export Compliance Check Passes End (Passes) Figure 17: Export Compliance sub-process that is externally completed The block activity “Eligible for Export Compliance Check” calls the API WF_STANDARD. 1 day) on the block activity. the concurrent program could put the Line on Hold. Authorized Users could complete required procedures and release the Hold.

• Defining a flow that can be used for both Outbound(order) and Inbound(return) Lines: Order Management does not seed a generic flow that can support both order and return lines. Once you have defined one or more sub-processes to meet your needs. Refer to the Open Interfaces Manual (Part Number . Note: Refer to the Oracle Workflow Users Guide (Part Number A85440-01) for more information on the WF APIs and on defining function activities of type PL/SQL and External. if you wanted to do so for some reason. using Order Management and Workflow you can solve this business requirement in many different ways. However. you can do so using the seeded sub-processes. Using Workflow in Oracle Order Management Page 40 .Handle Holds On Hold Complete Start Eligible for Export Compliance Check End Figure 18: Export Compliance sub-process that handles holds. However this should be done with caution as Workflow does not function identically to Cycles. you need to use it/them in a line flow(s) and assign the flow(s) to a Line Type(s). by adding notifications activities. It uses Oracle Advanced Queues functionality to achieve this. You could enhance this process further. Oracle Workflow also lets you define activities that call external functions. As you can see.A83746-01) for information on the calling the Process Order API.

Unreserve Schedule .Line. For this to work correctly you need to define the flow as follows: Unreserve Schedule . the line will schedule and hit the “Ship .Deferred Fulfill Invoice Interface .Line Utility to Get Line Category Return Return Receiving Line Fulfill . it will get marked as “Not Eligible” and hit the “Fulfill -Defer” activity (to defer thread) and stop. Then the WF Engine starts executing the other branch.Line Create Supply .Line Order Ship . Manual Enter . It then processes it all the way till it can go no further. So for an outbound Line using this flow. since once a line is booked. The activity “Utility to get Line Category” is seeded OM: Order Line Work Item.Line. WF randomly picks which transition to process first.Close . Manual Enter . Manual” sub-process.Line Ship .Deferred Fulfill Invoice Interface . where it will stop and wait to get picked and shipped.Line Line End Figure 20: CORRECT Flow to support both Order and Return Lines After booking the line flow branches based on the Line Category ensuring that only one of the branches are (Order or Return) executed runtime. if the branch ‘Returns receiving’ is first processed.Line.Close .Line Line End Return Receiving Line Figure 19: INCORRECT Flow to support both Order and Return Lines The above flow WILL NOT work correctly. This activity will error out since the fulfilling event for the order line “Ship-Confirmation” is not yet complete. Using Workflow in Oracle Order Management Page 41 . However the Background Engine could pick up the deferred thread and execute the “Fulfill” activity.Line Create Supply .Line Fulfill .

Deferred will not affect the definition of this custom booking process. Using Workflow in Oracle Order Management Page 42 . your custom process will also pick up the updated definition since it is referencing this seeded activity.You define a custom booking process (Figure 13). Hence we recommend that you define new workflow item attributes judiciously. Example: You define 10 new item attributes under the item type “OM: Order Line”. You can use this in your function activities to get more information about a order or line. If you do not. Order Management uses the primary key (Header_id/Line_id) for the Order/Line as the workflow item key when it starts Order/Line flows. It is recommended that you acquire training in using Oracle Workflow. We also recommend that you keep in mind the following: • When Order Management sends you patches for bug fixes or new releases. Workflow will create 10 additional rows in WF_ITEM_ATTR_VALUES for these new attributes. You define new workflow activities that set values for these attributes and you use them in your notification activities. However if Order Management sends out a patch that changes the definition of the seeded Book activity. it will affect only the seeded OM data. Example: Currently the seeded Book function internally calls the Credit Checking API. With a future release Order Management release. this may changed such that credit checking/payment verification is WF enabled. You need to look at the changes made. Manual and Book-Order. Now when you get this patch. However you should keep in mind that Oracle Workflow creates a row for every item attribute whenever a flow is started using a workflow item type (irrespective of whether the item attribute has a value) and this can affect performance negatively. you need to review it and modify your custom booking process accordingly. The API that seeded Book function will be changed to not call the credit checking API. • You may define new workflow item attributes for the seeded Order Management Work items. And the seeded Booking processes will be changed to include the credit checking /payment verification workflow activities.Caveats While you get immense flexibility when designing order and line flows with Oracle Order Management and Oracle Workflow. and decide whether you need to change your custom processes accordingly. before you customize Order Management Workflow processes. Patches that update the definitions of the Book-Order. then your custom booking process will not do credit checking (since it references the updated book function that no longer calls credit checking). You should carefully review any WF patches you receive. Now whenever you create an Order Line. we recommend that you do so wisely. Example . Note: Look at the appendix for an example of a PL/SQL based function activity.

Using Workflow in Oracle Order Management Page 43 . By configuring flows that are flexible and optimal.CONCLUSION Oracle Order Management’s use of Workflow provides you with powerful order processing and fulfillment capabilities. You need to understand the capability that Oracle Workflow provides and the seeded functionality that Order Management provides to design the best order processing flows for your business. thus increase your profitability. you can significantly improve your order fulfillment times.

Part Number A83746-01 All the White Papers that this document refers to are available on Metalink Using Workflow in Oracle Order Management Page 44 .Order Management Order Type(s) .A workflow process is made up of workflow activites or workflow sub-processes.Line Transaction Type(s) OE .A workflow sub-process is made of workflow activites or more workflow sub-processes.Release 11 R11i . REFERENCES Oracle Workflow User’s Guide . A flow is started using a specific "workflow process" Workflow Process .Order and Line Transaction Type(s) WF .Release 11i Transaction Type(s) .Part Number A85440-01 Applications Open Interface Manual .Order Transaction Type(s) R11 .Workflow Other terms used Flow .Order Entry OM . A workflow sub-process is not defined as "runnable" which means that you cannot start a flow using it. Workflow Sub-process .A flow is what the application starts for a order or a line.GLOSSARY The document uses the following abbreviations: Line Type(s) .

Responsibility ID (RESPONSIBILITY_ID) . Application ID (APPLICATION_ID) . Ship Only Line Flow. OEOL: User ID (USER_ID) . You can changes this to reference any other WF Role.Return for Credit with Receipt Line Flow. • Item Attributes that are common for OEOH.The FND User that created the Order or Line.The Responsibility under which the Order or Line was created. This is the role that the default error process sends notifications to.APPENDIX A R11i.Return for Credit only Line Flow. OEOL & OECHORD: Order Management WF Administrator (WF_ADMINISTRATOR) .The Operating Unit in which the Order or Line is created. when a WF activity runs into unexpected errors. Using Workflow in Oracle Order Management Page 45 . Org ID (ORG_ID) .Return for Credit with Approval Line Flow.The Application tied to the Responsibility under which the Order or Line was created.2 seeded WF Item Attributes Order Management comes seeded with the following WF Item attributes.This is set to have a default value of ‘SYSADMIN’. • Item Attributes that are common for OEOH.2 seeded order header/line Workflow processes Header level seeded workflows: Order Flow-Generic Order Flow-Generic with Header Level Invoice Interface Order Flow-Return with Approval Line level seeded workflows : Line Flow-ATO Item Line Flow-ATO Model Line Flow-Configuration Line Flow-Configuration w/authorization to Ship Line Flow-Generic Line Flow-Generic with authorization to Ship Line Flow-Generic with Header Level Invoice Interface Line Flow-Generic. Bill Only Line Flow-Generic.Return for Credit with Receipt & Approval APPENDIX B R11i.Standard Service Line Flow.

Header Short Descriptor(HDR_SHORT_DESCRIPTOR) .APPS_INITIALIZE()). This is set when the Order Line is created. • Item Attributes defined under OECHORD: Using Workflow in Oracle Order Management Page 46 . It can be used to provide context to message bodies. Option Number and Service Line Number. That is it is set dynamically. That is it is set dynamically. Note: Please refer to the Oracle Workflow User’s Guide for more information on the selector function and Callbacks for setting and testing context. Lead Time Date(LEAD_TIME_DATE). this is set to the value of the profile option OM: Notification Approver at the time the Order or Line is created. AFAS Line ID (AFAS_LINE_ID) . This is launched by the ATO Config creation sub-process. The first 3 item attributes are used to set Application Context (Profiles.Notification Approver (NOTIFICATION_APPROVER) .This is an attribute of type PL/SQL Document. Lead Time Request ID (LT_ATTR_REQ_ID). It can be used to provide context to message bodies. Order Number. It is can be used to branch flow logic based on line category. whenever somebody calls it to restart a flow. With 11i. This is set when the Order Header is created. It is can be used to branch flow logic based on order category. It returns the Order Type and Order Number. Shipment Number. Operating Unit context) by calling a AOL utility (FND_GLOBAL. This code is executed in the selector function that the WF Engine calls using a ‘TEST_CTX’ mode.This is an attribute of type PL/SQL Document.The item attribute that is used as a placeholder to hold values for Notification Responders. • Item Attributes defined under OEOL: Line Category(LINE_CATEGORY) . Lead Time Category Structure(LEAD_TIME_CATEGORY_STRUCTURE).These are used to provide parameter values to the Lead Time Calculation Concurrent Program.2 onwards. The utility activity “Set Notification Approver” can set a value for this attribute. Line Number.This is the category of the Order Header (ORDER.This is the category of the Line (ORDER or RETURN). • Item Attributes defined under OEOH: Order Category(ORDER_CATEGORY) . The ORG_ID Item attribute is used to test whether a flow is being re-started in the right application context (Operating Unit). This code is executed in the selector function that the WF Engine calls using a ‘SET_CTX’ mode. when executing deferred activities for a work item (Order or Line). Lead Time Rollup Organization (LEAD_TIME_ROLLUP_ORG). Lead Time Rollup Config Item(LEAD_TIME_ROLLUP_ITEM). It returns the Order Type. RETURN or MIXED). Line Short Descriptor(LIN_SHORT_DESCRIPTOR) .

• The lookup NOTIFICATION_APPROVER_SOURCE (Role Sources for Notification Approver) has the following codes: PROFILE_APPROVER (Notification Approver Profile Role Value). It calls the WF Standard block function. It is set dynamically when the change order notification flow is started. APPENDIX C R11i. It is set when the change order notification flow is started. Utility to Get Line Category(UTIL_GET_LINE_CATEGORY) . Order Number(ORDER_NUMBER) . Set Notification Approver (UTIL_SET_NOTIFICATION_APPROVER) This is a function Activity that can be used to set the value for the item attribute NOTIFICATION_APPROVER It has an activity attribute called ‘SOURCE’ of type lookup(NOTIFICATION_APPROVER_SOURCE). so that you can manually cancel the Order/Line. • Approval Failed (APPROVE_FAILED_BLOCK) .This utility returns a result of Yes or No based on whether the line is receivable. The default value for this attribute is ‘PROFILE_APPROVER’. • • Utility . User Text(USER_TEXT) . Using Workflow in Oracle Order Management Page 47 .The Role that the change Order Notification is going to.This utility returns the line category Order or Return.This is the block activity that can be used to indicate eligibility for a function activity that follows it.Is Return Line Receivable?(RMA_IS_LINE_RECEIVABLE) . A Order or Line awaiting at this activity will show up in the Progress Order LOV (available from the Sales Order form).This is used to store the message body that an end user types in when he chooses to send a Change Order Notification to a certain responsibility.2 seeded utility activities These are seeded under the OM Standard (OESTD) Workflow Item Type. This is set dynamically when a User chooses to send a Change Order Notification to a certain responsibility.This is used to provide context to the change order notification.This is a block activity that can be used to transition failure results from Approvals. CREATED_BY (Role that created the entity) • Sample Block that can be completed from the Sales Order Form (BLOCK_ORDER) . It is set when the change order notification flow is started. The following utility activities seeded under OM Order Line(OEOL) and can be used as decision points in branching a flow. ORDER_CREATED_BY (Role that created Order).Resolving Role(RESOLVING_ROLE) . Using this activity enables the flow to remain active.

x_result_date OUT DATE). x_result_date OUT DATE).• Utility to Get Supply Source Type(UTIL_GET_SUPPLY_SOURCE_TYPE) This Utility return the line supply source type Internal or External. x_result OUT VARCHAR2. x_result_date OUT DATE). x_result OUT VARCHAR2). x_result OUT VARCHAR2. PROCEDURE Get_Closed_Status( p_header_id NUMBER. Procedures available to query Line Status Using Workflow in Oracle Order Management Page 48 . APPENDIX D Procedures available to query Header Status Functions available in the package OE_HEADER_STATUS_PUB: PROCEDURE Get_Booked_Status( p_header_id NUMBER. PROCEDURE Get_Cancelled_Status( p_Header_id IN NUMBER. x_result IN OUT VARCHAR2. IN PROCEDURE Get_Closed_Status(p_header_id IN NUMBER. x_result OUT VARCHAR2). IN PROCEDURE Get_Booked_Status( p_header_id NUMBER. PROCEDURE Get_Cancelled_status( p_header_id IN NUMBER. x_result OUT VARCHAR2).

Using Workflow in Oracle Order Management Page 49 . x_result OUT VARCHAR2). x_result OUT VARCHAR2. PROCEDURE Get_Purchase_Release_status(p_line_id NUMBER. x_result IN OUT VARCHAR2. x_result_date OUT DATE). OUT VARCHAR2. IN PROCEDURE Get_Cancelled_Status(p_line_id NUMBER. x_result OUT VARCHAR2). OUT VARCHAR2. IN PROCEDURE Get_Purchase_Release_status(p_line_id NUMBER. IN NUMBER. PROCEDURE Get_ship_Status(p_line_id x_result IN NUMBER. PROCEDURE Get_pick_Status(p_line_id x_result OUT VARCHAR2). x_result_date OUT DATE). IN NUMBER. x_result_date OUT DATE). PROCEDURE Get_Closed_Status(p_line_id x_result IN NUMBER.Functions available in the package OE_LINE_STATUS_PUB PROCEDURE Get_Closed_Status(p_line_id x_result OUT VARCHAR2). IN PROCEDURE Get_ship_Status(p_line_id x_result OUT VARCHAR2). PROCEDURE Get_Cancelled_status( p_line_id NUMBER. x_result_date OUT DATE). IN NUMBER.

/* This function returns invoice interface status */ PROCEDURE Get_Invoiced_Status(p_line_id IN NUMBER. Note: This API calls an Order Management Group API to get the Order Total. x_result OUT VARCHAR2). A Public version of this totals API will soon be available. IN NUMBER. CREATE OR REPLACE PACKAGE BODY OM_WF_WHITEPAPER as Using Workflow in Oracle Order Management Page 50 . x_result OUT VARCHAR2. x_result OUT VARCHAR2). x_result OUT VARCHAR2. OUT NUMBER. Please refer to the WF Users Guide for more details. x_result_date /* This function returns invoice interface status */ PROCEDURE Get_Invoiced_Status(p_line_id IN NUMBER.PROCEDURE Get_pick_Status(p_line_id x_result OUT VARCHAR2. OUT DATE). PROCEDURE Get_Received_Status(p_line_id IN NUMBER. x_result_date APPENDIX E PL/SQL WF wrapper for the function activity “Is this a BIG Order” Note: WF Function wrappers have to meet certain specifications. x_picked_quantity x_picked_quantity_uom OUT VARCHAR2). OUT DATE). PROCEDURE Get_Received_Status(p_line_id IN NUMBER.

GetActivityAttrNumber(itemtype. IN VARCHAR2.normal process execution IF (funcmode = 'RUN') THEN /* Get Total Order Value for this Order */ l_order_total := OE_TOTALS_GRP. END IF.PROCEDURE CHECK_ORDER_TOTAL( itemtype itemkey actid funcmode IN VARCHAR2. ELSE resultout := 'N'. l_big_value number. itemkey. 'BIG_VALUE').RUN mode .GET_ORDER_TOTAL(to_number(itemkey). /* Check whether this Order is a BIG Order */ IF (l_order_total > l_big_value) then resultout := 'Y'. IN VARCHAR2. BEGIN -. null. Using Workflow in Oracle Order Management Page 51 . resultout IN OUT VARCHAR2) IS l_order_total number. 'ALL'). actid. IN NUMBER. /* Get Activity Attribute Value that determines what amount makes an Order BIG */ l_big_value := wf_engine.

to_char(actid).The line below records this function call in the error system -. RETURN. Using Workflow in Oracle Order Management Page 52 .Other execution modes may be created in the future.activity will indicate that it does not implement a mode -. itemtype. EXCEPTION WHEN OTHERS THEN -. 'CHECK_ORDER_TOTAL'. wf_core. END CHECK_ORDER_TOTAL. itemkey.by returning null resultout := ''.context('OEOH'.in the case of an exception. Your -. -. RAISE. END IF. funcmode).mode is ‘RUN’ -. END OM_WF_WHITEPAPER.RETURN.

oracle. Tsui-Ying Wang Oracle Corporation World Headquarters 500 Oracle Parkway Redwood Shores. All other names may be trademarks of their respective owners. Copyright © Oracle Corporation 2000 All Rights Reserved .7000 Fax: +1.650. Oracle is a registered trademark.com This document is provided for informational purposes only and the information herein is subject to change without notice. Please report any errors herein to Oracle Corporation. CA 94065 U. and Oracle Order Management is a trademark(s) or registered trademark(s) of Oracle corporation.506.650. Worldwide Inquiries: Phone: +1.S.A.506.Using Workflow in Oracle Order Management Created October 2000 Updated October 2001 Authors: Leena Sampemane. Oracle Corporation does not provide any warranties covering and specifically disclaims any liability in connection with this document.7200 Web: www.

Sign up to vote on this title
UsefulNot useful