Communicating With Other BPMN Processes and Services Using Send and Receive Tasks

Communicating With Other BPMN Processes and Services 20-17

5. From the Process list, select a reusable process.

For information on how to create a reusable process, see Section 5.1.2, How to Create a New Business Process . 6. If necessary, configure data associations or transformations. For more information on data associations, see Section 8.13, Introduction to Data Associations . For more information on transformations, see Section 8.14, Introduction to Transformations .

7. Click OK.

20.10 Introduction to Communication Between Processes Using Signal Events

Signal events allow you to broadcast a message to all the processes in a BPM project. Only the processes configured to listen to that signal react. In the Sales Quote example you might want to trigger a signal when a quote gets approved to trigger all the process that depend on the approval of a quote. Mediators and BPEL processes also react when a BPMN process broadcasts a signal and they can also trigger a BPMN process by broadcasting a signal. Oracle BPM uses Oracle Event Delivery Network EDN to send and receive signals. For more information about Oracle EDN see Using Business Events and the Event Delivery Network in Oracle Fusion Middleware Developers Guide for Oracle SOA Suite. For information on how to access Event in Oracle BPM, see Chapter 12.1, Introduction to the Business Catalog . The EDN events your SOA project defines automatically appear in the business catalog in the Events predefined module Events. When you add a signal event you can choose which of the events in the business catalog the signal event broadcasts or reacts to. You can broadcast a signal from a throw intermediate signal event or from a signal end event. In a BPMN process you can only receive a signal in a a signal start event in another process. The process that broadcasts the message has no information about the receivers. You might add or remove processes that react to a signal without impacting the process that broadcasts the signal. In a similar way, the process that reacts to a specific message has no information about the processes that broadcast that message. If you add a process that broadcast a message to your project, all the process waiting for that specific message react to it without you having to modify them. The events you use to broadcast a signal contain a payload that you can use to send information to all the processes configured to react to this specific signal. To assign values to the payload in the event you must configure the signal throw event data association. This data association enables you to pass the relevant data stored in the process and project data objects to the event. When the corresponding processes receive the signal, they must obtain the data in the event using another data association. This data association defines which data objects store the data in the event received in the signal start event.