Siebel Product Administration Guide > Siebel Configurator Technical Reference >

Displaying Fields from S_PROD_INT in Selection Pages


You can add fields from S_PROD_INT to selection pages in both the High Interactivity and the Standard Interactivity interface.

To add the fields from the Product Master tables (S_PROD_INT) to selection pages, perform the following steps:

  1. Add Fields to the Cfg ISS Prod Def Buscomp. Add the fields to the Cfg ISS Prod Def Buscomp and define user properties. This buscomp is part of the Object Broker and extracts data from S_PROD_INT.
  2. Add Controls to the Repository. You can add a new control to the repository to display the name of this new field.
  3. Add SWE Code to the Web Template. Add SWE code to the desired Web template. The SWE code retrieves the field from the business component and displays it in the selection pages. Fields display as text boxes.
  4. Delete Contents of ISS_OBrkCache Directory. Delete the contents of the ISS_OBrkCache directory. This forces the system to create a new instance of the customizable product containing the fields.

You can display text fields only for product items or for the product root. This means you can insert the SWE code only in the following places:

  • For-each loops that iterate on relationship domains or the children of relationship domains. You cannot insert the code in for-each loops that iterate on attributes or on groups.
  • At the root level. The template in which you insert the SWE code must not be called from inside a for-each in any other Web template.

The procedures in this topic require you to have a thorough knowledge of Oracle's Siebel Tools. You must also have a thorough understanding of Siebel Configurator Web template structure.

Add Fields to the Cfg ISS Prod Def Buscomp

This procedure adds the fields you want to display to the Object Broker and recompiles the application. This makes the fields available for display.

To add fields to the Cfg ISS Prod Def Buscomp

  1. Locate the Cfg ISS Prod Def Buscomp in Oracle's Siebel Tools.
  2. Add the desired fields from S_PROD_INT to the buscomp.
  3. For each field you add, define a user property called Cfg UI Field. Set the user property value to TRUE.
  4. Recompile the repository and copy it to the application installation directory.
Add Controls to the Repository

You can add a new control in the repository to show the localized field name for a new field.

To add a new control to the repository

  1. In Oracle's Siebel Tools:
    • For the HI UI, locate the applet Cfg Cx Runtime Instance Frame (JS HI).
    • For the SI UI, locate the applet Cfg Cx Runtime Instance Frame.
  2. Add a new control.

    For example, you can add Name = lblTest, Caption = TestLabel.

  3. Use this control in the template.
Add SWE Code to the Web Template

The following example shows the SWE code you would insert in a Web template to retrieve the Part Number field for display:

<swe:control id="swe:101Id+4400" CfgUIControl="CfgLabel" CfgHtmlType="CfgLabel" property="FormattedHtml" CfgFieldName="Part Number"/>

The "id" must be that specified in the for-each loop iteratorName, and the increment amount must be unique within the for-each loop.

If you want to display a field name next to the field value, insert an swe:control statement that extracts the field name from the repository. This allows you to support localization. You can insert the swe:control wherever needed in the template. It does not have to be inside a for-each loop. Here is an example of an swe:control tag that extracts the field name for Part Number from the repository. The "id" in the tag must be present but is not used for anything. The lblPartNumber value is the name of the label control in the repository.

For the SI interface, insert the following code:

<swe:control id="partnum" CfgUIControl="lblPartNumber" property="Displayname"/>

For the HI interface, insert the following code:

<!-- Template Start: eCfgRelationContentsPriceQuantityJS.swt -->

<table border="0" cellpadding="0" cellspacing="3" width="100%">

<swe:for-each id="500" CfgLoopType="Children" startValue="1500" count="Dynamic" iteratorName="101Id"

CfgFieldList="CfgFieldName:Quantity, CfgUIControl:lblQuantity, HtmlAttrib_width:80, HtmlAttrib_align:left, Default:Y*

CfgFieldName:Name, CfgUIControl:lblName, HtmlAttrib_width:250, HtmlAttrib_align:left, Default:Y*

CfgFieldList="CfgFieldName:Part Number, CfgUIControl:lblPartNo, DataSource:Broker, NeedRefresh:N, HtmlAttrib_align:center,

HtmlAttrib_width:80*

CfgFieldName:RequireMoreChild, Default:Y*

CfgFieldName:List Price, CfgUIControl:lblListPrice, DataType:DTYPE_CURRENCY, NeedRefresh:N, HtmlAttrib_align:center, HtmlAttrib_width:80*

CfgFieldName:Current Price, CfgUIControl:lblYourPrice, DataType:DTYPE_CURRENCY, HtmlAttrib_align:center, HtmlAttrib_width:80*

CfgFieldName:Explanation, CfgUIControl:lblExplanation, HtmlAttrib_width:70, HtmlAttrib_align:center*

CfgFieldName:Customize, CfgUIControl:lblCustomize, HtmlAttrib_width:70, HtmlAttrib_align:center"

>

To add SWE code to a template

  1. Copy the desired template and give it a new filename.
  2. Insert the SWE code into the new template.
  3. Add the new template to the Pick UI Style dialog box.
  4. Select the new template as the UI control for a relationship or an item.
Delete Contents of ISS_OBrkCache Directory

You must delete the contents of this directory. This makes sure that the application loads your changes when generating a customizable product, rather than loading the objects from the cache directory.

To delete the contents of the ISS_OBrkCache directory

  1. Locate the Siebel File System directory.

    To see the directory path or system name for the directory, from the Siebel application Help menu, choose Technical Support.

  2. In the Siebel File System directory, locate the ISS_OBrkCache directory.
  3. Delete all the files in the ISS_OBrkCache directory.
Siebel Product Administration Guide Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Legal Notices.