Siebel Business Process Framework: Workflow Guide > Manipulating Data in a Workflow Process > Configuring a Decision Condition for a Workflow Process >

Configuring Expressions in the Expression Builder


You use the Expression Builder in the Compose Condition Criteria dialog box to define a decision condition. This topic describes parts of the Expression Builder, including Compare To options, operations, and patterns.

Using Compare To Options

Table 22 describes Compare To options and their required and optional values.

Table 22. Compare To Options in the Compose Condition Criteria Dialog Box
Compare To
Operation
Object
Field
Value

Applet. Compare the run-time value of an applet column to a literal.

Comparison operation. All operations are allowed.

The name of the applet.

The column in the applet.

One or more literals for comparison.

Business Component. Compare the run-time value of a business component field to a literal.

Comparison operation. All operations are allowed.

The name of the business component.

The field in the business component.

One or more literals for comparison.

Expression. Evaluate expressions and determine if they return true.

Specifies how to evaluate multiple expressions. Only applicable if the Values property includes multiple expressions.

The following choices are available:

  • All Must Match
  • None Can Match
  • One Must Match
  • This Must Match

For more information, see Using Simple Comparison Operations and Using Substitution Variables in an Expression.

Optional. If the expression references a business component field, then the object is a business component name. You can reference the fields of only one business component in the expression.

Not applicable

One or more expressions.

Process Property. Compare the run-time value of a process property to a literal.

Comparison operation. All operations are allowed.

The name of the process property.

Not applicable

One or more literals for comparison.

Using Simple Comparison Operations

A simple comparison operation involves a comparison that can Siebel CRM can express in a simple expression without using an iterative operation. Table 23 describes values for a simple comparison operation.

Table 23. Values for Simple Comparison Operations
Comparison
Run-Time Value That Results in a Successful Comparison
Description

Between

Between two predefined literal values.

This comparison requires two values in the Values property. The Process Designer enforces this requirement.

Not Between

Not between two predefined literal values.

This comparison requires two values in the Values property. The Process Designer enforces this requirement.

Greater Than

Greater than a predefined literal value.

Logically, Siebel Tools requires only one value in the Values property.

Less Than

Less than a predefined literal value.

Logically, Siebel Tools requires only one value in the Values property.

Is Null

Null or empty.

No value is required in the Values property.

Is Not Null

Not null or empty.

No value is required in the Values property.

Using Iterative Comparison Operations

An iterative comparison operation is a type of operation that uses multiple iterations to get a Boolean result. It does these iterations on the literal values or expressions that the Values property contains, or on child business component records.

The following configurations can result in different iterative behavior:

  • You define multiple values in the Values property.
  • Multiple records of the child business component exist in the current workset. A child business component is a business component that is not the primary business component in the current business object that the workflow process references. If you set the Compare To option to Business Component or to Expression, and if you define the Object field as the name of a child business component, then Siebel CRM uses this child business component in the comparison. If Siebel CRM returned multiple records the last time it processed records in the child business component, then multiple records can exist in the current workset of the child business component. For more information, see Defining the Primary Business Component.
All Must Match Operation

The following options are available for the All Must Match operation:

  • Multiple value behavior. If you set the Compare To option to a value other than Expression, and if at least one value matches, then Siebel CRM defines a literal and this comparison succeeds. If the Compare To option is Expression, and if each expression evaluates to true, then this comparison succeeds.
  • Multiple child business component record behavior. If the comparison succeeds for every record, then Siebel CRM uses child business component records for comparison and the overall comparison succeeds.

    Consider an example where Siebel CRM uses All Must Match and multiple child business components. Account is the business object. The following table describes the decision condition.

    Compare To
    Operation
    Object
    Field
    Values
    Business Component
    All Must Match
    Contact
    First Name
    Jane, Julie

    In this example, if a record in the Contact business component in the current workset contains a first name of Jane or Julie, then the comparison succeeds. The workset is the child contact record for the account record that the workflow process is processing.

This Must Match Operation

For the comparison to succeed, field values of the active row of the current instance of the child business component must match the decision condition values that you define for the connector. The This Must Match operation includes the following options:

  • Multiple value behavior. If the values involved are literal values, and if at least one value matches, then the comparison succeeds. If the values involved are expressions, and if at least one expression evaluates to true, then the comparison succeeds.
  • Multiple child business component record behavior. If the comparison succeeds for the current record, then Siebel CRM uses only the current record of the child business component for comparison and the overall comparison succeeds.

If you use Remote Asynchronous, then the workflow process resumes from the Workflow Process Manager. The Workflow Process Manager does not preserve the instance of the child business component and the active row for the child business component is lost. For this reason, the branch connector stops working. If you must use Remote Asynchronous, then use an operation other than This Must Match. Otherwise, use Local Synchronous.

None Can Match Operation

The None Can Match operation includes the following options:

  • Multiple value behavior. If the values involved are literal values, and if none of the values match, then the comparison succeeds. If the values involved are expressions, and if none of the expressions evaluate to true, then the comparison succeeds.
  • Multiple child business component record behavior. If the comparison fails for every record, then Siebel CRM uses the records of the child business component for the comparison and the overall comparison succeeds.
One Must Match Operation

The One Must Match operation includes the following options:

  • Multiple value behavior. If the values involved are literal values, and if at least one value matches, then the comparison succeeds. If the values involved are expressions, and if at least one expression evaluates to true, which is the same as This Must Match, then the comparison succeeds.
  • Multiple child business component record behavior. If the comparison succeeds for at least one of the records, then Siebel CRM uses records of the child business component for comparison and the overall comparison succeeds.
Other Iterative Comparison Operators

Other iterative comparison operators include the following:

  • All Must Match (Ignore Case)

    Same as All Must Match except string comparisons are case insensitive.

  • This Must Match (Ignore Case)

    Same as This Must Match except string comparisons are case insensitive.

  • None Can Match (Ignore Case)

    Same as None Can Match except string comparisons are case insensitive.

  • One Must Match (Ignore Case)

    Same as One Must Match except string comparisons are case insensitive.

Using Substitution Variables in an Expression

You can use a process property or a field in a business component as a substitution variable in an expression. For more information see Referencing a Process Property and Referencing a Business Component Field You.

For more information about the operators, expressions, and decision conditions that you can use in a workflow process, see Siebel Developer's Reference.

Referencing a Business Component Field You

You must use the following format to reference a business component field:

[field_name]

For example, the Contact business component uses the following format:

[First Name] like 'Jane'

You specify the business component name in the Object field of the Expression Builder.

Example of Using an Expression to Compare Values

The following table describes how to use an expression to compare the value of the Object Id process property to the value of the Account Id field in the Contact business component.

Compare To
Operation
Object
Values

Expression

This Must Match

Contact

[Account Id] like [&Object Id]

Siebel Business Process Framework: Workflow Guide Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Legal Notices.