Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases now! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Oracle BPM Suite 11g Developer's cookbook

You're reading from   Oracle BPM Suite 11g Developer's cookbook Over 80 advanced recipes to develop rich, interactive business processes using the Oracle Business Process Management Suite with this book and ebook

Arrow left icon
Product type Paperback
Published in Apr 2012
Publisher Packt
ISBN-13 9781849684224
Length 512 pages
Edition 1st Edition
Arrow right icon
Author (1):
Arrow left icon
Vivek Acharya Vivek Acharya
Author Profile Icon Vivek Acharya
Vivek Acharya
Arrow right icon
View More author details
Toc

Table of Contents (20) Chapters Close

Oracle BPM Suite 11g Developer's Cookbook
Credits
About the Author
Acknowledgement
About the Reviewers
www.PacktPub.com
1. Preface
1. Process Modeling FREE CHAPTER 2. Process Implementation 3. Process Deployment and Testing 4. Business Rules in the BPM Process 5. Human Workflow in BPM Process 6. Process Simulation 7. Developing UI using Oracle ADF 8. Exception Management 9. BPM and SOA in Concert 10. End User Interaction 11. Manage, Monitor and Administer BPM Process Oracle BPM—Application Development Lifecycle
Approval Management

Controlling Process Flow—Sequence Flows


Task # 4 is performed at the Contracts swimlane by the Contracts role. You will merge the outcome of the Approval Deal and Approval Terms User tasks. Data objects that have already been created (approveDealOutcome and approveTermsOutcome) will contain the values of outcome from the Approve Deal and Approve Terms User tasks, respectively.

How to do it...

  1. 1. Merge Outcome: Merge the outcome of Approve Deal and Approve Term User tasks:

    • Go to Component Palette | BPM | Gateways

    • Click on Parallel Gateway

    • Click on the Contracts swimlane, where you want to place the Parallel Gateway

    • Name the Parallel Gateway Merge Approvals

    • Create an unconditional, unnamed sequence flow from the Approve Deal and Approve Terms User tasks to the gateway Merge Approvals.

    • When you have finished the preceding steps, click Save

  2. 2. Create a Finalize User task:

    • Go to Component Palette | BPM | Activities

    • Select a User task from the interactive section

    • Click on the Contracts swimlane and position User task before theEnd event

    • In the User task Properties window, enter the following:

    • In the Basic tab, enter Name = Contract Finalize

    • Leave the implementation tab as default

    • When you have finished the preceding steps, click Save

    • Create an unconditional sequence flow from the gateway Approvals Outcome to the Contract Finalize User task.

    • Name the sequence flow as Approved

    • When you have finished the preceding steps, click Save

  3. 3. Switch on Approve Deal and Approve Terms outcome:

    Post merger, you have to switch on the outcome of Approve Deal and Approve Terms User tasks. Create Exclusive Gateway to implement conditional switch on outcomes.

    • Go to Component Pallet | BPM | Gateway and select Exclusive Gateway

    • Click on the Contracts swimlane, where you want to place the Exclusive Gateway

    • Name the gateway Approvals Outcome

    • When you have finished the preceding steps, click Save

  4. 4. Create sequence flows:

    To implement the outcome scenario

    If the outcome of Approve Deal OR Approve Terms User tasks is REJECT, then send the quote back to the Sales Representative

    Else: Send it to Finalize Contract User task

  5. 5. When REJECT:

    • Click on the sequence flow icon on top of the process editor to create a sequence flow

    • Create a conditional sequence flow from the gateway Approvals Outcome to the Enter Quote User task.

    • Enter the following information in the properties of the sequence flow:

    • In the Description tab, enter Name = Deal or Terms Rejected

    • In the Properties tab, Type = Condition

    • In the Expression section, choose Simple Expression

    • Select Expression Builder

    • You can find the approveDealOutcome and approveTermsOutcome process Data objects. They hold the outcome values from User tasks:

    • approveDealOutcome == REJECT or approveTermsOutcome == REJECT

    • When you have finished, click Save

  6. 6. When APPROVE:

    • Create an unconditional sequence flow from the Gateway Approvals Outcome to the Contract Finalize User task.

    • Name the sequence flow Approved

    • When you have finished the preceding steps, click Save

How it works...

As per Process Flow:

If: the outcomes for the Approve Deal or the Approve Terms User tasks' is REJECT,

Else: The contract will be finalized.

You can also use the parallel gateway to merge process paths split by the parallel gateway. The merge of the parallel gateway waits for a token to arrive from each of the incoming sequence flows. After all tokens arrive, only one token is passed to the outgoing sequence flow.

In addition, you should design your process so that a token arrives for each incoming sequence flow, for the merging parallel gateway. If you do not, your process can freeze if the merger is expecting tokens that do not arrive.

You have been reading a chapter from
Oracle BPM Suite 11g Developer's cookbook
Published in: Apr 2012
Publisher: Packt
ISBN-13: 9781849684224
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime