Configure Business Processes for Object Workflows

This topic covers the key points to consider when you work with object workflows to trigger a business process. When you configure object workflows, you also specify the actions that the workflow must perform when triggered.

One of the actions you configure is the Business Process Flow action. This business process flow action in object workflows is essentially an approval flow. You configure the approval flow using BPM Composer.

Overview

You use templates in BPM Composer to create and deploy a project, which you then call from object workflows. A project that you create and deploy is called an approval flow. You must create and deploy at least one project (or approval flow) before you configure the Business Process Flow action in object workflows.

Note: You must work directly in the mainline metadata to create an approval flow. You can't configure the business process flow task while you're in an active sandbox.For each approval flow that you create, keep track of your configurations. Whenever you update BPM Composer, you must reenter those same configurations to ensure that your approval flows still work smoothly.

First, create or update approval flow in BPM Composer. Then, select that approval flow in object workflow business process flow action.

  • Application Composer. Use this application to configure object workflows.

    For examples of how to configure various event actions in object workflows, see "Configure Object Workflows" and "Configure Object Workflows to Trigger Approval Requests for Creating Sales Leads" topics.

  • Oracle Business Process Management (BPM) Composer. Use this application to create business processes (or approval flows) using existing or user-defined templates.

    Note: Modifying templates in BPM Composer might be disabled for your implementation in this release. If so, contact Oracle Support for assistance.

    For an example of how to create and deploy a business process flow, see Configure Object Workflows to Trigger Approval Requests for Creating Sales Leads topic.

    For more information on BPM Composer, refer to the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management.

  • Oracle Business Process Management (BPM) Worklist application. Use this application to take an appropriate action on the approval requests.

    The Worklist application displays tasks or approvals that are assigned to a user. Your worklist tasks appear on the Home page.

Use the Default Template to Create Approval Process

The template delivered with the product is the ExtnBusinessProcessComposite template, which uses a basic CrmCommonSerialApprovalProcess process flow. This template contains an approval process covering a typical sales use case. Any project that you create with the seeded template uses the CrmCommonSerialApprovalProcess process.

The ExtnBusinessProcessComposite template supports only Business Process Management Notation (BPMN), which is an industry standard notation for defining business processes. For more information on BPMN, see http://www.bpmn.org.

This figure shows the standard ExtnBusinessProcessComposite template.
This figure shows the standard ExtnBusinessProcessComposite template

For an example of how you create and deploy a project, see "Configure Object Workflows to Trigger Approval Requests for Creating Sales Leads".

The default ExtnBusinessProcessComposite template contains services, business rules, and tasks which you can use for configuring approval flows.

Note: Modifying templates in BPM Composer might be disabled for your implementation in this release. If so, contact Oracle Support for assistance.

You can change or add nodes or business rules for the human task implementation process. For example, you can change SerialGivenUserNameApproval with SerialApprovalGroupApproval. However, when creating or modifying a project, don't attempt the following unless you're sure:

  • Deleting or modifying the services, rules, tasks, or system fields in an existing business process. It may fail validations.

  • Removing or changing reserved parameters such as owner, heldEntity, heldEntityId, heldEntityStatusField, and objectProperties.

  • Removing nodes such as CreateHold, UpdateHold, UpdateEntity, and so on.

Note: You can edit only those projects that have been created by launching BPM Composer from within Application Composer.

To see the services, tasks, and rules available, select the Project Home tab in BPM Composer.

Note that these human task patterns, however, aren't supported:

  • SerialSupervisorHierarchyApproval, SerialJobLevelHierarchyApproval, SerialPositionHierarchyApproval

  • ParallelSupervisorHierarchyApproval, ParallelJobLevelHierarchyApproval, ParallelPositionHierarchyApproval

For information on working with business rules, services, and tasks and how to model process flows, refer to the Oracle Fusion Middleware Modeling and Implementation Guide for Oracle Business Process Management.

Supply Inputs to the Business Process from Object Workflows

Using input parameters, you can pass specific values to the associated approval process when the trigger condition is met. These input parameters are specific to the template that you're using to create your approval flow. By default, you use the ExtnBusinessProcessComposite template, which is shipped with the product and covered in the documentation related to object workflows. If you're using some other template, refer to the documentation for that product for the parameters that you can use.

To see where these input parameters reside in BPM Composer, right click on the Start node of the approval flow and select Properties.

Notice the heldEntityStatusField and approvers parameters in the figure. These are some of the parameters you're mapping to from object workflows when using the ExtnBusinessProcessComposite template.

When using the standard ExtnBusinessProcessComposite template, these are the inputs you can supply to the associated approval process:

  • approvers

  • heldEntityStatusField

  • emailAddress

  • title1

  • title2

While the approvers and heldEntityStatusField parameters are mandatory, the emailAddress, title1, and title2 are optional parameters.

For more information on these inputs and how you can configure notifications using these inputs, see "Configuring Input Parameters for Modifying Notifications" section in this topic.

Using input parameters, you can pass either static or runtime values to the approval process as follows:

  • To pass actual or static values to the approval flow, select either Literal check box in the Select Default Value dialog or manually enter parameters in single quotes, for example, 'user1'.

    This figure illustrates how you select and mark the input parameters as Literal. This dialog appears when you click on the function icon in the Inputs region.

  • To pass runtime values, don't select Literal in the Select Default Value dialog or just enter the parameters manually without quotes.

    For example, to pass a runtime field (token) for Opportunity Region, enter Region (without quotes). When the workflow is triggered, this field is replaced with runtime value of Region.

You can also obtain approvals serially or in parallel from multiple approvers. For example, to obtain serial approvals first from user1 and then from user2 using Literal values, enter 'user1,user2'. Similarly, for runtime fields, enter user1,user2.

Note: To supply multiple, literal values use single quotes for the entire string without any space in between those values.

Configure Input Parameters for Modifying Notifications

The field values or the input parameters that you pass from object workflows to the approval flow depends on the template that you have chosen for creating the approval flow. This section contains examples assuming you're using the default ExtnBusinessProcessComposite template.

Before we go into configuring input parameters, it's essential to understand what types of notifications occur when the approval flow is triggered, and when the approval flow is approved or rejected.

  • When the approval flow is triggered, the BPM worklist notification shows, for example, "Opportunity has been submitted for your approval", which is in format "<Object name> has been submitted for your approval".

  • When the approval or rejection happens, the e-mail notification (based on the emailAddress parameter) contains the outcome of the action taken by the approver. The subject of the e-mail can be, for example, "Opportunity has been approved".

You can only minimally change the way the BPM Worklist and e-mail notifications appear by appending information using some of the input parameters.

To change the BPM notification, for example, let's assume you're creating a workflow using the Opportunity object and have specified only the approvers and heldEntityStatusField parameters. When such an approval flow is triggered, the notification in BPM Worklist application shows "Opportunity has been submitted for your approval", which is a standard notification.

Now, let's assume that you also want the opportunity name and region to appear in the notification. Assuming that the opportunity is Pinnacle Deal and the region is West, you can change the BPM notification to a more meaningful one by configuring the parameters as follows:

Parameter

Values

Description

Field Type

approvers

'Matt Hooper, Manager of Created By, Resource Group: Direct Reports of Created By'

Specifies one or more people who receive the approval request.

Run Time

heldEntityStatusField

'Approvalstatus_c'

Specifies the field that displays the status of the approval request.

Note: Make sure to select the field from the list of values and select Literal. Don't type or paste the value.

Literal

emailAddress

[Optional]

'jsmith@pinnacle.com,blopez@pinnacle.com'

Specifies e-mail addresses of one or more individuals who receive the approval or rejection notification.

Literal

title1

[Optional]

Name

Appends the name of the opportunity to the title.

Run time

title2

[Optional]

Region

Appends the name of the region (of the opportunity) to the title.

Run time

Now trigger the approval flow again. This time the notification in the BPM Worklist application shows "Opportunity Pinnacle Deal West has been submitted for your approval," which follows the format "<Object name> <title1> <title2> has been submitted for your approval".

Similarly, when an approver takes an action on the request, the title1 and title2 parameters are also appended to the e-mail notification. For example, when the request is approved, the subject of the e-mail shows "Opportunity Pinnacle Deal West has been approved".

To display the notifications in a different format, you can specify only some of the optional parameters.

Note: Along with the modified notification, the approver of the BPM may also receive the standard email notification. There's no configurable way to stop receiving the standard notification.

Specify the Trigger Condition in Object Workflows

You must ensure that the trigger condition for the object workflow contains the field that you update to trigger the workflow. For example, if you have defined your own field Submit_c of type check box, the trigger condition looks like: isAttributeChanged('Submit_c') && Submit_c=='Y'.

Defining an expression prevents the triggering of the object workflow each time an update or create event point occurs.

For more information on how to set trigger conditions, see Configuring Object Workflows: Example topic.

If you're specifying a drop down, fixed-choice list field for capturing approval status, use the lookup type ZCX_HOLD_STATUS to configure the status values as per your business requirement. The default values provided in this lookup type are: APPROVALPENDING, APPROVED, and REJECTED. Ensure that ZCX_HOLD_STATUS contains the default values or the values that you have specified in this lookup type for tracking the approval status.

Note: To capture the approval status, you can use only fields of type text or fixed choice list.