Friday, March 12, 2010

Interview Question #2 - What is a Siebel Operation Step?

This interview question uses a technical term to test a Siebel Developer's understanding of a topic. "Siebel Operation" can be almost anything to someone who does not have a basic familiarity with Siebel Workflow, but it is an everyday term for any Workflow Developer.

Q: Please explain what a Siebel Operation is, and how it is used.

A: At minimum, the candidate should know that a Siebel Operation is a type of Workflow Process Step. If the candidate does not volunteer this information without additional prompting, he or she is not a Workflow Developer.

Candidates should know that a Siebel Operation can be used to Insert or Update records as part of a Workflow Process. A candidate should know the difference between a Workflow Process and a Workflow Policy or Workflow Policy Program. Siebel Operation is a term that is only used in connection with Workflow Processes.

In addition to Insert and Update, recent versions of Siebel have other types of operations. Most Siebel Workflow Developers know that a Query operation is now available. Since Siebel 8.0, there are Upsert and looping operations: PrevRecord, NextRecord, and QueryBiDirectional. In my experience, knowledge of these operations is less common; it can be difficult to find a developer who can explain how to build a loop in a Workflow Process.

Workflow Process Steps operate on the business layer of Siebel, as opposed to the database layer. A Business Component that is associated with the Workflow Process's Business Object is required for any Siebel Operation. Workflow Developers should know these things, although a little prompting may be required.

A good Workflow Developer should also know about the Siebel Operation Object Id process property, which is updated after an Insert, Update, or Upsert operation. If one record is inserted or updated, this process property will contain the row id of the affected record. If more than one record, the property will contain an asterisk: '*'. If no records are affected, the property will not contain a value.

6 comments:

Anonymous said...

hey good post Jim!

Tejeshwer said...

can you please explain what are expression and filter business component properties in Siebel Operation Search Spec.

And is there any way to loop through records of an MVG through Siebel Operation?

Jim Tanner-Uicker said...

Hi Tejeshawar,

The filter buscomp should be the buscomp you are searching. For example, if the Siebel Operation is defined on the Account BC, the filter buscomp should be the Account BC. The expression buscomp gives you the search expression for searching the filter buscomp.

Square Brackets in the search expression are evaluated according to which side of the comparison operator they are on. Anything to the left of the equals sign is assumed to be the filter BC, and anything to the right is the expression BC.

Here's an example from Bookshelf: if Account is the filter BC and Contact is the expression BC, then the expression "[Id] = [Account Id]" would be evaluated as "[Account.Id] = [Contact.Account Id]".

carlos.roberto741 said...

Hi

I read this post 2 times. It is very useful.

Pls try to keep posting.

Let me show other source that may be good for community.

Source: Property accountant interview questions

Best regards
Jonathan.

Amit said...

Hi This is Amit, currenlty I am working on one scanario, this scanario is there is a case and case may have multiple benefits, benefits is a MVG applet,for eg. case is have 4 beneefits,now the issues if user is changing the primary to another record, and I wanted to last modified/updated value, however after changing the primary value is not it is not showing last updated value as todays date,it is not modifiying that field,I wanted to set last modifed/updated date whenever the user is changing the primary on mvg record on mvg applet for both the record, old primary and new primary record.. provide some suggestion,its urgent

Jim Tanner-Uicker said...

You would need to update a field on the MVG Buscomp other than the SSA Primary virtual system field. Changing the primary updates the parent, record, not the MVG.