Siebel Product Administration Guide > Product Attributes with Business Component Domains > Process of Creating an Attribute with a Business Component Domain >
Creating a Business Component Field Constraint
You can constrain the records that display in the pick applet based on a field that they have in common with the business component that starts the configuration session. This is similar to using Oracle's Siebel Tools to constrain the display of records in a pick applet based on a field in the originating business component.
This task is a step in Process of Creating an Attribute with a Business Component Domain.
You do this by defining an additional PickMap UI property on an attribute. This additional UI property defines how to constrain the records in the pick applet specified in PickMap01. The constraint PickMap specifies the business component name and field to use to filter the records in the pick applet.
The Product Administrator has created a product with components called Premier Service Package. This product has been assigned to a product class that has the attributes Account, Location, and Opportunity defined on it. These attributes have been added to a group in the User Interface view and will display in selection pages.
The Product Administrator wants users to be able to select an account name when configuring the product in a quote. When they do, the Account Administrator wants to automatically populate the Location attribute with the state in which the account is located.
In addition, the Product Administrator wants to constrain the pick applet to display only the accounts associated with the opportunity name displayed in the Quote Opportunity field. For example, if the opportunity name is Boeing, the pick applet would display all the Boeing accounts only.
To do this, the Product Administrator must define the following UI properties on the Account attribute:
- PickList. Its value is PickList Account.
- PickApplet. Its value is Account Pick Applet.
- PickMap01. This UI property provides the name of the attribute and the business component field. Its value is an XML tag that has the following elements:
- Field = "Account". This is the attribute name.
- PickField = "Name". This is the business component field.
- PickMap02. This UI property defines an attribute that will receive its value automatically when the user selects a value for the primary attribute. In this case, the attribute is Location. The value of the UI property is an XML tag that has the following elements:
- Field = "Location". This is the attribute name.
- PickField = "State". This is the business component field.
- PickMap 03. This UI property filters the display of records in the pick applet to those having the same value as a field in the business component that starts the configuration session. The value of the UI property is an XML tag that has the following elements:
- Constrain = "Y". This notifies the application that the UI property defines a constraint.
- Field = "Quote.Opportunity". This is the business component name and field name that will be used as a filter.
- PickField = "Name". This is the picklist field name that will be filtered.
The Account and Location attributes display with a text box next to them in the configuration selection pages. When the user clicks the select button for Account, a pick applet displays. It contains only the accounts that have the name specified in the Opportunity field of the quote that started the configuration session (Quote business component). When the user selects an account and clicks OK, the Account name is transferred to the Account field and the state name is transferred to the Location field.
Table 7 shows how to use the predefined UI properties to constrain the user's choices.
Table 7. UI Properties
The name of the pick applet.
The name of the picklist.
This is an XML tag that associates the attribute name with the picklist field that you want to display.
PickMap01 must be defined on the primary attribute
Only the Field and PickField variables are required. Enclose their values in quotes.
Field: The name of primary attribute.
PickField: The name of the business component field.
Only the Field and PickField variables are required.
These variables are for attributes other than the primary attribute. These attributes will be populated automatically when the user selects a pick applet record for the primary attribute. Attribute values for these attributes are read-only. Enclose their values in quotes.
Field: The name of the attribute, other than the primary attribute.
PickField: The name of the business component field.
You can define PickMaps to populate as many fields as desired. Number the PickMaps in sequential order, for example Pickmap03, PickMap04, and so on. Define one PickMap for each field.
This PickMap defines the business component field used to filter the records displayed in the pick applet
Field, PickField, and Constrain variables are required. Enclose their values in quotes.
Field: Specifies the business component name and field that filters the pick applet. The format for specifying the field name is
The business component specified in Field must be in the same Tools business object (BusObj) as in Siebel Configurator. The field cannot be the field specified in PickMap01.
For example, to constrain the records displayed in the pick applet to those having the current record's Opportunity name in the Quotes view, (Quote business component), you would enter
PickField: Specifies the name of field in the picklist that is filtered by the Field variable.
Constrain: Must be set to "Y".
All PickMaps must be have a unique number. For example if there are 4 PickMaps, PickMap01...PickMap04, name the constraint PickMap, PickMap05.
To use a field to constrain the user's choices
- Navigate to the Administration - Product screen, then the Product Definitions view.
- Select and lock the desired product with components.
- Navigate to the Properties view.
- Select the desired attribute.
- Define the UI properties as shown in Table 7.