Reader small image

You're reading from  Oracle Siebel CRM 8 Developer's Handbook

Product typeBook
Published inApr 2011
Reading LevelIntermediate
Publisher
ISBN-139781849681865
Edition1st Edition
Languages
Concepts
Right arrow
Author (1)
Alexander Hansal
Alexander Hansal
author image
Alexander Hansal

Alexander Hansal has worked as an IT professional in small, medium, and global corporations. Since 2001, Alexander works as a technical instructor and consultant for Siebel CRM and Oracle Business Intelligence in Europe. He enjoys teaching, and shares his knowledge and expertise in his classes at Oracle University and in his weblog, http://siebel-essentials.blogspot.com/
Read more about Alexander Hansal

Right arrow

Chapter 20. Advanced Siebel Workflow Topics

While we create program flows with the Siebel Workflow framework, we may find ourselves in the situation where we wish to control the behavior of the workflow process in case of errors. In other situations, it may be useful to reuse existing workflows as subprocesses or to traverse record sets in a loop. For Siebel developers, it is important to master these advanced topics to gain full advantage of Siebel Workflow.

In this chapter, we will learn how to implement the following functionality in Siebel Workflow:

  • Exception handling

  • Subprocesses

  • Loops and iterations

  • Advanced workflow techniques

Exception handling in workflow processes


Those among us who are familiar with classic programming know how important it is to handle erroneous situations within the program flow. Most modern programming languages such as Java or C# provide this kind of exception handling. Because Siebel Workflow is in fact a programming language, it is important to understand how we can handle exceptions within a workflow process.

There are two techniques for exception handling in Siebel workflow processes:

  • Error exception connectors: Allow developers to handle the errors that occur at the execution of a discrete workflow step

  • Error process: Allows specification of a specialized workflow process to be executed when an error occurs at any step of the original workflow process

In the following section, we will discuss both approaches.

Using error exception connectors

An error exception connector can be used to define the path in case of errors. In the sense of programming, it resembles a catch block. Any process...

Subprocesses


Reusability of business logic is a key success factor for any software project, including Siebel CRM projects. The Sub Process step ensures that we can invoke often needed process flows from within another workflow process easily.

Subprocesses can not only help to increase the level of reusability but are also needed when more than one business object is involved in the process. As we have learned in the previous chapter, a workflow process can only be associated with one business object, which provides the context, and links, to the business component data.

If we need to operate on more than one business object, we must implement a subprocess. The Account - New Quote workflow process, associated with the Account business object, is a simple but very explanatory example of this. The following screenshot shows the Account - New Quote workflow process:

The Goto Quote View step is a Sub Process step. The main property of a Sub Process step is Subprocess Name, which is set to the name...

Loops and iterations


A common task for programmers is to create loops or iterations across a record set and operate on each record. The Siebel Workflow Framework supports looping constructs with the Siebel Operation step. The following case study example shall serve as an example of a loop in Siebel Workflow.

Case study example: Iterations on a child record set

AHA managers want to be able to see the currently expected revenue for a customer. The implementation should include a button on the AHA Customer Profile Form Applet that invokes a workflow process. The workflow process should query all opportunities for the account that have a close date in the next 30 days and sum up the expected revenue of these opportunities. A message dialog should then display the result.

The following procedure describes how to implement this requirement using Siebel Operation and Stop steps:

  1. 1. Check out or lock the AHA Workflows project if necessary.

  2. 2. Create a new workflow process with the following property...

Advanced workflow techniques


On several occasions, the ambitious workflow developer will reach a point where the functionality of standard workflow steps such as Siebel Operation is not sufficient to implement the requirements.

Engineers at Siebel Systems and Oracle have developed more than 1,300 workflow processes and created the following business services to assist during the workflow development cycle:

  • Workflow Utilities

  • SIA BC Utility Service

  • PRM ANI Utility Service

In addition, we can use one of the following EAI transport business services to easily write data to files for debugging purposes.

  • EAI XML Write to File

  • EAI File Transport

In the following section, we will briefly introduce the methods of these business services and provide examples for their usage.

Workflow utilities

The Workflow Utilities business service has one public and four hidden methods. Because the public Echo method is the only one that is used in the preconfigured workflow processes, it is the only method to be discussed...

Summary


Siebel developers face several challenges while implementing workflow processes in Siebel Tools. In this chapter, we provided information about popular advanced techniques for configuring workflow processes.

Efficient exception handling is a key issue in programming and workflow development. We learned how to use the error exception connector and error processes to implement exception handling in Siebel Workflow.

Subprocesses, also shown in this chapter, allow implementation of reusable processes.

Furthermore we discovered the Siebel Operation step's ability to iterate through record sets and learned how to use preconfigured utility business services and dot notation to work with hierarchical property sets.

In the next chapter, we will learn how to implement Tasks to guide end users through business processes.

lock icon
The rest of the chapter is locked
You have been reading a chapter from
Oracle Siebel CRM 8 Developer's Handbook
Published in: Apr 2011Publisher: ISBN-13: 9781849681865
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.
undefined
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 $15.99/month. Cancel anytime

Author (1)

author image
Alexander Hansal

Alexander Hansal has worked as an IT professional in small, medium, and global corporations. Since 2001, Alexander works as a technical instructor and consultant for Siebel CRM and Oracle Business Intelligence in Europe. He enjoys teaching, and shares his knowledge and expertise in his classes at Oracle University and in his weblog, http://siebel-essentials.blogspot.com/
Read more about Alexander Hansal