The User Task in Context
6.4 Communicating With Other Processes and Services
Oracle BPM enables you to define interactions across business processes within a process-oriented application. The following sections describe the BPMN flow objects used to model communication between processes. This section describes how to use these flow objects to create process models using Business Process Composer. For information on how to implement these flow objects within a process-based application, see the Oracle Fusion Middleware Modeling and Implementation Guide for Oracle Business Process Management.6.4.1 Introduction to the Service Task
The service task enables you to communicate with other processes and services. Process analysts can add the service task when they know that a process must invoke an external service or process. Process developers can then implement the necessary services. You can use the service task to invoke the following: ■ Other BPMN processes ■ BPEL processes ■ SOA service adapters ■ Mediators that are exposed as services The service task has similar behavior to the send and receive task pair and the message throw and catch event pair. The primary difference is that the service task is used to invoke processes and service synchronously. When the service task invokes a process or service, the token waits at the service task until a response is returned. After the response is received, the token continues to the next sequence flow in the process. See Using Service Tasks to Invoke Synchronous Operations in Services and BPMN Processes in the Oracle Fusion Middleware Modeling and Implementation Guide for Oracle Business Process Management for more information on how to implement the service task with these types of processes and services. Figure 6–17 shows the default notation for the service task. Figure 6–17 The Service Task The service task is represented by blue rectangle with two gears in the middle.6.4.1.1 The Service Task in Context
Figure 6–18 shows an example of the service task used to save the finalized sales quote to a database. 6-16 Modeling and Implementation Guide for Oracle Business Process Management Figure 6–18 The Service Task within the Sales Quote Example Process This graphic shows a user task labeled Finalize Contract with a sequence flow extending to a service task labeled Save Quote. The Save Quote task has a sequence flow extending to an end event.6.4.1.2 Implementing Reusable Services in Project Templates
Oracle BPM enables you to incorporate reusable services in project templates. These services are components of the business catalog.6.4.2 Introduction to the Call Activity
The call activity allows you to call a reusable process from within the current process. The process being called becomes a child process of the calling process. When calling a reusable process, the call activity of the parent process waits until the child process completes before continuing. Figure 6–19 shows the default notation for the call activity. Figure 6–19 The Call Activity The call activity is represented by an empty rectangle. Data objects of the parent process are not automatically available to the reusable process. Data objects must be passed to and from the child process using argument mapping of the call activity.6.4.2.1 Reusable Processes
Oracle BPM supports a type of process called reusable processes. In BPMN terminology, this is sometimes referred to as a reusable subprocess. Reusable processes allow you to create processes that can be called from other BPMN processes. Reusable processes allow you to create processes that can be called from other BPMN processes. For example all your processes may need to charge a credit card, so you can create a charge credit card reusable subprocess Reusable processes have the following characteristics: ■ Must start with one none start event ■ Can contain multiple end events. ■ Can only be called by other BPMN processes.Parts
» Oracle Fusion Middleware Online Documentation Library
» Introduction to the Oracle Business Process Management Suite
» Oracle BPM Studio Oracle Business Process Composer
» Oracle Metadata Service MDS Repository
» Oracle BPM Projects Process Modeling and Implementation
» Oracle BPM Engine Oracle BPM Run Time Components
» Oracle Human Workflow Oracle BPM Run Time Components
» Oracle Business Rules Oracle BPM Run Time Components
» Oracle WebLogic Application Server
» Oracle Enterprise Manager Oracle BPM Run Time Components
» Oracle BPM WorkSpace Oracle BPM Suite Process Participant Applications
» Process Analytics Other Oracle BPM Suite Components
» Guided Business Processes Other Oracle BPM Suite Components
» Oracle Business Process Analysis BPA Suite
» Process Modeling Introduction to the Application Development Life Cycle
» Implementation Deployment Introduction to the Application Development Life Cycle
» Use Case: Using BPM Studio to Create Project Templates
» Use Case: Using BPM Studio to Model Processes and Deploy an Application
» Use Case: Using Business Process Composer to Create Process Blueprints
» What is Business Process Management Notation BPMN
» Data Objects Introduction to Business Process Management Notation BPMN
» Initialize Data objects script task Initiate the process instance user task with initiator pattern
» Determine Business Practice Review Approve Quote
» Approved Rejected: Sends the process flow back to the enter quote.
» Oracle BPM Studio Use Cases Introduction to JDeveloper Roles
» Workflow: Creating Applications Based on Process Blueprints
» Workflow: Creating Project Templates
» Workflow: Integration between the Oracle BPM Suite and Oracle BPA
» BPMN Process Editor BPMN Component Palette
» Oracle BPM MDS Browser Structure View Simulation View
» Log Window Documentation Window
» Introduction to Project Resources
» Sharing Projects Between Oracle BPM Users
» How to Open a Project from the File System
» How to Import a Previously Exported Project
» How to Edit Project Preferences
» How to Create a New Project Template How to Create a Project Template from an Existing BPM Project
» How to Set the Edit Policies for a Process in a Project Template
» How to Set the Edit Policies for an Activity in a Project Template
» Introduction to the Oracle Metadata Service MDS Repository
» How to Checkout a Project in Oracle BPM MDS
» How to Lock or Unlock a Project in Oracle BPM MDS
» Types of Processes Introduction to Business Processes
» How to Create a New Business Process How to Open a Business Process
» Introduction to the Process Editor
» Introduction to the Documentation Editor
» How to Add Documentation to Your Process
» Roles in Context Introduction to Roles
» Swimlanes in Context Introduction to Swimlanes
» Adding Roles and Swimlanes to Your Process
» Sharing Roles Between Business Process Composer and BPM Studio
» Using Multiple Start Events in a Process
» Using Multiple End Events in a Process
» The None Start Event in Context
» The Message Start Event in Context
» Using Process Input and Output Arguments
» The Signal Start Event in Context
» Introduction to the Timer Start Event
» Introduction to the Error End Event
» Introduction to the Message End Event
» Introduction to the Terminate End Event
» Using Interactive Activities Using the User Task in Project Templates
» Reusable Processes Introduction to the Call Activity
» A token reaches the call activity in the parent process
» A new instance of the child process is created.
» The child process continues running until an end event is reached or an error
» The process flow returns back to the call activity in the parent process.
» Flow of the main process continues.
» Starting a Process with the Receive Task
» Using the Send and Receive Tasks to Communicate Between Processes
» Introduction to the Message Throw Event
» Introduction to the Message Catch Event
» Using Message Throw and Catch to Communicate Between Processes
» Introduction to Oracle Business Rules
» Introduction to Sequence Flows Introduction to Unconditional Sequence Flows
» Introduction to Conditional Sequence Flows
» Introduction to Default Sequence Flows
» The Exclusive Gateway in Context Splitting and Merging Exclusive Gateways
» Splitting and Merging Inclusive Gateways
» The Parallel Gateway in Context
» Introduction to the Complex Gateway
» Introduction to Intermediate Events Introduction to the Timer Catch Event
» Introduction to the Error Catch Event
» Subprocesses and Sequence Flows
» Subprocesses in Context Using Subprocesses to Organize Your Process
» Looping Subprocesses Using Subprocesses to Organize Your Process
» Working with Guided Business Processes
» Introduction to the Organization Editor
» Introduction to Organizational Units
» How to Create an Organizational Unit
» How to Create a Calendar How to Create Holidays
» Basic Data Objects versus Complex Data Objects
» Supported Data Types for Data Objects
» Default Values Introduction to Data Objects
» How to Add a Process Data Object
» How to Edit a Process Data Object
» How to Assign a Value to a Process Data Object
» Introduction to Roles Introduction to Activity Instance Attributes
» Working with Activity Instance Attributes
» Adding a Data Object to a Subprocess Editing a Data Object in a Subprocess
» Deleting a Data Object from a Subprocess
» How to Add a Project Data Object
» How to Assign a Value to a Project Data Object
» Introduction to Subprocess Data Objects Introduction to Arguments
» Naming Conventions Oracle Fusion Middleware Online Documentation Library
» Scope and Access Oracle Fusion Middleware Online Documentation Library
» How to Define a Transformation
» What Happens When You Define a Transformation
» Introduction to Transformations Introduction to Importing Processes from the BPA Repository
» Simulation Models and Simulation Definitions
» Select Specify number of process instances to be created.
» How to Create a Simulation Definition
» From the Simulation list, select the simulation definition you want to run.
» What Happens When You Run a Simulation
» Understanding the Simulation View
» How to Analyze the Results of a Simulation Using a Chart
» How to Generate a Simulation Report
» What Happens when You Generate a Simulation Report
» Process and Activity Performance Metrics Workload Metrics
» Human Resource Metrics Introduction to Process Analytics
» Typical Process Analytics Workflow
» How to Configure the Sampling Point Generation of a Project
» How to Add a Business Indicator to a Project
» What Happens When You Add a Business Indicator to a Process
» How to Add Single Measurement Marks to a Process
» What Happens When You Add a Single Measurement to a Process
» How to Measure a Business Indicator in a Process Section Using Measurement Marks
» BPM Process Cubes Configuring Cubes Generation in a Project
» How to Enable Oracle BAM in a Project
» What Happens When You Enable Oracle BAM
» Non-Synthesized Components Synthesized Components Adding Components to the Business Catalog
» How to Customize a Synthesized Type
» What Happens When You Customize a Synthesized Type
» Types of Business Objects Benefits of Modeling Using Business Objects
» How to Add a Business Object
» What Happens When You Delete a Business Object How to Document a Business Object
» How to Use a Business Object in a Process What Happens When You Use a Business Object in a Process
» How to add an XML Schema to Your BPM Project
» Supported Data Types for Business Object Attributes
» Naming Conventions for Business Object Attributes
» How to Add a Business Object Attribute
» How to Delete a Business Object Attribute How to Document a Business Object Attribute
» What Happens When You Document a Business Object Attribute
» Typical Design Workflow Introduction to Human Tasks in BPM
» How to Assign an Existing Human Task to a User Task
» How to Create a Human Task from Oracle BPM Studio How to Configure the Outcome of a Human Task
» What Happens When You Create a Human Task from Oracle BPM Studio
» How to Edit a Human Task Using the Oracle BPM Simplified Editor
» How to Edit a Human Task Using the SOA Human Task Editor
» Click Browse Resources. Using Human Task Patterns in Oracle BPM
» Introduction to Callbacks Introduction to Services and References
» Introduction to Service Adapters in Oracle BPM
» Introduction to Oracle Mediator in Oracle BPM
» Introduction to BPEL Processes in Oracle BPM
» Using Services in Oracle BPM
» How to Customize a Service or a Reference
» How to Customize an Operation
» What Happens When You Customize a Service or a Reference
» Using Business Rules in a BPMN Process
» How to Assign an Existing Business Rule to a Business Rule Task
» What Happens When You Assign an Existing Business Rule to a Business Rule Task
» How to Edit the Business Rule Associated to a Business Rule Task
» Gateways Introduction to Controlling the Process Flow
» Timer Events Introduction to Controlling the Process Flow
» Errors Introduction to Controlling the Process Flow
» Message Events Introduction to Controlling the Process Flow
» Loop Markers Introduction to Controlling the Process Flow
» Multi-Instance Loop Markers Introduction to Controlling the Process Flow
» How to Configure Loop Markers
» How to Configure Multi-Instance Markers
» Using References in Oracle BPM Introduction to Timer Events
» How to Add a Delay to the Process Flow
» What Happens When You Add a Delay to the Process Flow
» How to Design a Process to Start Based on a Time Condition
» How to Configure a Deadline for an Activity
» How to Configure a Deadline for a BPMN Process
» What Happens When You Configure a Deadline for a BPMN Process
» How to Run Additional Activities While an Activity is Running
» What Happens When You Run Additional Activities While an Activity is Running
» How to Run Additional Activities While a Process is Running
» What Happens When You Run Additional Activities While a Process is Running
» How to Configure a Timer Event To Use a Specific Date and Time
» What Happens When You Configure a Timer Event to Use a Specific Date and Time
» How to Configure a Timer Event to Use an Interval
» What Happens When You Configure a Timer Event to Use an Interval
» Handling Errors Using Exceptions
» Using Business Exceptions Oracle Fusion Middleware Online Documentation Library
» Using System Exceptions Oracle Fusion Middleware Online Documentation Library
» Typical Flow of an Exception Thrown in a Task
» Typical Flow of an Exception in a Subprocess
» Typical Flow of an Exception in a Reusable Process
» How to Handle an Exception Using an Event Subprocess
» What Happens When You Handle an Exception Using an Event Subprocess
» How to Configure an Error Event to Catch Business Exceptions
» Click the Browse button next to the Exception field.
» How to Configure a Catch Event to Catch System Exceptions
» What Happens When You Throw an Exception
» How to Create a Business Exception
» What Happens When You Create a Business Exception
» How to Configure the ErrorInfo Attribute in a Business Exception
» Click OK. Handling Exceptions in Subprocesses
» How to Handle Errors in a Peer Process Using Message Events
» What Happens When You Handle Errors in a Peer Process Using Message Events
» Introduction to Synchronous and Asynchronous Operations
» Communicating With Other BPMN Processes and Services Using Message Events
» How to Invoke Asynchronous Service Operation Using Message Events
» How to Receive the Callback Operation of an Asynchronous Service Using Message Events
» How to Invoke the Callback Operation of an Asynchronous BPMN Process Using Message Events
» What Happens When You Invoke an Asynchronous BPMN Process Using Message Events
» Using Message Events Configured as Boundary Events
» How to Invoke a Synchronous Service Operation Using a Service Task
» What Happens When You Invoke a Synchronous Service Operation Using a Service Task
» How to Invoke a Synchronous BPMN Process Operation Using a Service Task
» What Happens When You Invoke a Synchronous BPMN Process Operation Using a Service Task
» Communicating With Other BPMN Processes and Services Using Send and Receive Tasks
» How to Use a Send Task to Invoke an Asynchronous Service Operation
» How to Use a Receive Task to Invoke the Callback Operation of an Asynchronous BPMN Process
» What Happens When You Invoke an Asynchronous BPMN Process Using Send and Receive Tasks
» Introduction to Invoking a Process Using Call Activities
» How to Invoke a Process Using Call Activities
» Introduction to Communication Between Processes Using Signal Events
» How to Broadcast a Signal to Multiple Processes
» What Happens When You Configure a Process To React to a Specific Signal
» Defining the Process Interface
» Using Message Events to Define the Callback Interface for BPMN Processes
» How to Configure the Start Operation of a BPMN Process as Asynchronous Using Message Events
» How to Define a Callback Operation Using Message Events
» How to Configure the Start Operation of a BPMN Process as Synchronous Using Message Events
» How to Configure the End Event of a Synchronous Process
» Defining the Callback Interface for BPMN Processes Using a Send Task
» Select Properties. Click the Implementation tab.
» How to Configure a Process Operation as Synchronous Using Send and Receive Tasks
» From the Implementation Type list, select None. Select Properties.
» Click the Implementation tab.
» From the Implementation Type list, select None.
» What Happens When You Define a Synchronous Operation Using Send and Receive Tasks
» How to Add Input and Output Arguments to a BPMN Process
» How to Edit the Input and Output Arguments of a BPMN Process
» How to Delete an Input or Output Argument of a BPMN Process
» Introduction to Expressions in Oracle BPM
» How to Implement a Complex Gateway
» How to Configure Loop Markers How to Configure Multi-Instance Markers
» subtraction year DateTime and Interval Functions
» seconds timezone DateTime and Interval Functions
» Using String Literals Using Literals
» Using Time Literals Using Interval Literals
» Using Array Literals Using Literals
» getActivityInstanceAttribute XPath BPM Extension Functions
» getDataOutput XPath BPM Extension Functions
» getGatewayInstanceAttribute XPath BPM Extension Functions
» getProcessInstanceAttribute XPath BPM Extension Functions
» Understanding the Relationship Between SOA Composites and SOA Components
» How to Add a BPMN Process from the SOA Composite Editor
» What Happens When You Add a BPMN Process from the SOA Composite Editor
» Integrating with BPEL Processes Using the SOA Composite
» Connecting to a BPMN Process Using Web Services
» How to Build a BPM Project What Happens When You Build a BPM Project
» Guided Business Process Design Time Architecture
» Components of a Guided Business Process
» Client Tier Guided Business Process Run-Time Architecture
» Business Logic Tier Guided Business Process Run-Time Architecture
» Online Public Sector Form Processing
» Online Loan Application Procedure
» Standards and Guidelines for Working with Guided Business Processes
» The Typical Flow of Developing a Guided Business Process
» How to Add a User Task to a Milestone
» What Happens When You Order the Milestones in a Guided Business Process
» How to Delete a Task from a Guided Business Process
» What Happens When You Delete a Task from a Guided Business Process
» What Happens When You Delete Milestone
» How to Configure an Optional Task
» What Happens When You Configure an Optional Task
» How to Configure a Parallel Task Flow in a BPMN Guided Business Process
» How to Branch the Task Flow in a BPMN Guided Business Process
» How to Configure a Task to Display a Blocked Icon
» What Happens When You Configure a Task to Display a Blocked Icon and Message
» How to Configure an Icon for a Guided Business Process
» What Happens When You Configure an Icon for a Guided Business Process
» How to Configure an Icon for a Milestone
» What Happens When You Configure the Task Access Mode for a Guided Business Process
» How to Localize a BPMN Guided Business Process
» Introduction to Developing a Guided Business Process Configuring Activity Guide Properties
» What Happens When You Deploy a Guided Business Process to Oracle WebLogic Server
» What Happens When You Create a Guided Business Process Instance
» Introduction to Building a Guided Business Process Client Application
» How to Develop a Guided Business Process Client Application
» What Happens When You Develop a Guided Business Process Application with Oracle ADF
» How to Configure the Supported Locales for a Guided Business Process Client Application
» Guided Business Process query Service API
» JNDI Names for the Guided Business Process Enterprise Java Beans
» How to Enable Client Side Logging
» How to Enable Server-Side Logging
» Configuring Log Levels Using Guided Business Process Logging
» AMX Components Introduction to Approval Management
» Task Understanding Approval Management Concepts
» List Creation Business Rules for Approval
» Approver Substitution List Modification
» Introduction to the Modeling Process
» Before You Begin Designing Approval Management Tasks in Oracle JDeveloper
» Choose Entity. How to Define Entity Parameters
» Set the collection for the stage.
» Click OK. How to Define Entity Parameters
» Provide the XSD where the schema is defined.
» Define the task payload parameter as static XML.
» Define the collection, its XPATH expression, and its keys.
» How to Create Service Data Object SDO References How to Define Collections
» Double-click the stage you just created, or select the stage and click the Edit icon.
» How to Model Task Participants
» How to Model and Configure List Builders
» How to Use Assignment Context
» In the Assigmnent and Routing Policy section of the Human Task Editor, select a
» In the Configure Restricted Assignment dialog, select the Assignment tab.
» Defining Escalation and Renewal Policies Specifying Notification Settings
» From the Task Editor, expand the Advanced Settings section.
» Click the Other Callbacks tab.
» Click OK. Click OK to close the dialog.
» Header View How to Use Task Forms
» Task Payload View Task History View
» Select Users from the dropdown list.
» Enter a full name in the text-entry field and click Search. You also can perform a
» Click the Add icon. Select Approval Group. Click OK.
» How to Specify Routing Settings The Event Driven tab contains a limited set of
» Click Apply when you have finished making your changes. Click Add variable.
» How to Define Conditions You can set the left and right sides of a condition by
» Add the following libraries from Libraries and Classpath to the class path:
» Choose adflibTaskListFlow.jar from the Component Palette, and drag
» Add the following shared libraries to weblogic-application.xml:
» From the Edit WAR Deployment Profile Properties dialog, select the following:
» Click Finish. Oracle Fusion Middleware Online Documentation Library
» Select oracle.soa.workflow.jar.
» Navigate to Domain Structure Services Foreign JNDI Providers.
» Click New. Oracle Fusion Middleware Online Documentation Library
» Click OK. Oracle Fusion Middleware Online Documentation Library
» Click Save. Oracle Fusion Middleware Online Documentation Library
Show more