Search from 700 + Posts

Dec 8, 2009

Raise and Receive Events in Oracle Applications and Workflow.

Oracle Apps and workflow Events.

In this blog I will explain with Simple example how to use EVENTS in Oracle Workflow and then how to Raise Event in Oracle Application and Receive event in Oracle Workflow.
In my next blog I will explain in details about how to RAISE and RECEIVE events in Oracle Workflow, but here I will limit my self to RAISE event from Oracle Apps and then RECEIVE in Oracle workflow.

Step#1  - Define Event in Oracle Apps.

Navigation > Oracle Admin Workflow > Business Events > Press Button Create Event /Create  Group Event.
Note - In this blog I will limit myself to "Create Event" Only and will not discuss "Create Event Group".

Enter
  1. Name
  2. Description
  3. Status
  4. Owner Name/Tag etc for Event


Please Note that when an event is raised , information about event  stoted in Data type WF_EVENT_T.
WF_EVENT_T structure stores
  1. Event Header Properties like Event Name, Event Key , CoRelation ID,, Parameter list etc.
OnceEvent is created , you can raise that ,by means of Test button.

Step 2 - Create the subscription for the Event , an event subscription  registration indicating that a particular event is significant to a system.When ever an event is raised , event manager searches and execute amy subscripion assocaited with Event.

Navigate to Subscription tab and Select "Create Substription" and Define
  1. System                
  2. Source Type
  3. Event Filter           
  4. Phase                     
  5. Status
  6. Rule Data             
  7. Action Type
  8. On Error
  9. If Action Type = "Launch Workflow" then Define Workflow Type
  10. Workflow Process
System  - System where you want to execute subscription .
Event Filter -  Triggering Event
Phase - Order in which subscription to event execute, Phase with value 1 to 99 run synchronously , 100 and above are deferred., The phase number 0 (zero) is reserved for Oracle Workflow seeded subscriptions

Rule Date - Key /Message .
Action type - we have 4 options here , in my Example , I have defined Action Type = "Launch Workflow" as I want to Launch the workflow.








Create your Subscription .Since I have selected Action Type  = "Launch Workflow", I need to create workflow with RECEIVE EVENT activity .

Below are Steps to create Workflow with RECEIVE Event activity.

1.Step #1  - Drag the Event Activity on your workflow and Select Event Action = Receive.Since it is a simple test i just added a wait and end activity.

Step # 2 - Make sure you have Include 3 Mandatory Attribute
  1. Event Name
  2. Event Type
  3. Event Key
in Workflow as shown below.
\





Go to Workflow Adminstator and test the Event , by first query for your Event in Event Tab and then Press the Test Button .
It will trigger the Event
Event In turn trigger all the subscription assocaited with the Event.
In our example , since Action Type for My Subscription is "Launch Workflow", it will trigger my workflow as shown .
you can check the triggering of the workflow , either by query the Workflow @workflow Admin Page > Search in Item_type/item_key
OR
 by executing below database queries.






Hope that helps , Leave your comments , as that help me to improve furthers.

5 comments:

  1. good..but it would have been better if added a real example.

    ReplyDelete
  2. Thanks for your comments.I don't have any live process at my end , But in case you have any Live test case that you want to implement with Events let me know , and will send you all info about how to implement events in your Live scenario.

    ReplyDelete
  3. Hi
    I need to raise Ship confirm Event

    ReplyDelete
  4. HI,
    Thanks for sharing. I have tried the same way but Event is not invoking the WorkFlow. Even i am not getting error also.

    Please advise
    Thanks

    ReplyDelete
  5. Is your workflow setup is working fine? Can you try the existing business event and see if that works.
    Without knowing your setup it is hard to say why it is not working...

    Let me see if I can do something....

    ReplyDelete