Siebel Tools Reference > Business Objects Layer > Business Components >

Search Specification Property


If the value in the Search Specification property in a Business Component object definition is non-blank, the set of records provided to an applet using this business component is restricted. The search specification contains the names of one or more fields in the business component and various operators, combined to create a conditional expression. Records in which the value of the conditional expression evaluates to TRUE are provided to the applet for display; those records in which the expression evaluates to FALSE are excluded.

NOTE:  Search specifications on child applets are not executed.

Some sample search specification expressions appear below:

[Type]= "COST LIST"

[Revenue] > 5000

[Competitor] IS NOT NULL and [Competitor] <> "N"

[Type] = LookupValue ("TODO_TYPE", "In Store Visit")

Search specification expressions are built according to the following syntax rules:

An applet search specification cannot be used to override the search specification of the underlying business component, if the business component has one. Rather than overriding the business component's search specification, the applet's search specification is appended to that of the business component. Search specifications should appear in the business component or the applets that use it, but not both.

The search specification on an applet is converted to a WHERE clause by the data manager at runtime. When two applets based on the same business component appear in the same view, one query is generated against the database to populate both applets. Because a database select statement only supports one WHERE clause, only one of the applets should have a search specification—or if both do, they should have the same specification.

For example, the Account List Applet and the Account Entry Applet both appear in the Account List View. The record that is selected in the Account List Applet also appears in the Account Entry Applet. When you select a different row in the list or scroll through the list, the Account Entry Applet is updated to show the same record that is selected in the Account List Applet. This is made possible by the fact that both applets are populated from the same query and therefore show the same record set.

To prevent the two applets from being synchronized, they would have to be on separate business components, for example by copying the business component on which the first applet is based.

For more information on the usage of the Search Specification property of applets, see Siebel Developer's Reference.

NOTE:  Search specifications can impact performance negatively, particularly when you include fields based on joins in the search specification. Search specifications with NOT or OR can also adversely affect performance by forcing the database to execute a full table scan.


 Siebel Tools Reference, Version 7.5, Rev. A 
 Published: 18 April 2003