
There’s another Siebel User Group event coming up in Sydney. On Thursday 21st August we’re back at the Australia Graduate School of Management for a panel discussion on The Single View of a Customer - Myth or Reality?
I’m personally interested to hear the panellists’ experiences with building business processes around search. Being able to locate an existing customer record is such a fundamental part of maintaining that ’single view’ - yet it’s something Siebel hasn’t totally nailed. Fulcrum in Siebel 6 was limited, Hummingbird in 7 is only an incremental improvement and then in Siebel 8 we seem to have gone backwards again. In the age of Google and Spotlight and (even!) Vista Live Search, I think users should expect better results than come out of the box with Siebel. I wonder if the panellists agree, or if they’ve come up with solutions?
If you’re planning to attend then register now before spaces fill up.
August 14th, 2008
There’s no standard loop construction (For/While/Do) in Siebel Workflow, but there are still a couple of ways to have a Workflow Process handle multiple rows.
Update Operation
For a simple update to a child entity use a Siebel Operation. When a Workflow Process has a Business Object then a Siebel Operation Update step defined for a child Business Component will update all records that are children of the selected record in the Primary Buisiness Component. The update can be filtered to specific records by specifying a SearchSpec on the Update.
This technique can be expanded through the use of Runtime Events: define an Event on the child BusComp to catch a simple update operation and trigger further processing of the record.

Bear in mind that for this to work then the Object Id process property must specify a valid record in the Primary Business Component. Also, watch out for this gotcha if you’re trying to dynamically update a field.
Sub Process SearchSpec
An alternative way to process more complicated actions is to call a sub-process for multiple rows. In this case a Workflow Process is defined as normal to act on a single record specified through the Object Id. Then to have this workflow run for multiple rows, define a new ‘wrapper’ workflow and add a Sub Process step to call the original process. To this Sub Process step add the Input Argument SearchSpec, supplying a search specification through the Value in the normal way.
When the wrapper workflow is executed, the SearchSpec is applied to the primary Business Component of the sub-process and the child workflow is run once for each row returned.

August 6th, 2008