Setting Up the Grandchild Display of the Open UI Siebel Configurator User Interface
The grandchild display of the Open UI Siebel Product Configurator user interface allows you to display an arbitrarily deep model and instance hierarchy on a single page, with minimum refresh.
This feature must be used carefully, because performance degrades with the depth of the hierarchy displayed.
To turn on the grandchild display
Set the following UI Properties:
MultiChildrenPort = <the name of the port that has grand child> (at the parent CP group level)
Default Group = <Group Name> (At the child level)
Change the template, as follows:
<!-- Template Start: eCfgControlCheckPriceMultiLevelJS -->
<od-include file="eCfgPort_HeaderJS"/>
<tr>
<td colspan=3>
<od-iterator id="500" CfgLoopType="DomainAndChildren" startValue="1500"
count="Dynamic" iteratorName="101Id"
Usage="CheckBox"
CfgFieldList="CfgFieldName:Name, CfgUIControl:lblName, HtmlAttrib_width:310,
Default:Y*
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_align:center*
CfgFieldName:Customize, CfgUIControl:lblCustomize,
HtmlAttrib_align:center"
>
<od-type="control" id="swe:111Id + 4000" CfgHtmlType="CfgCheckBox"
ForceRefresh="Y"
CfgJSShow="showCheckBox" CfgJSUpdateExclusion="updateExcludedItemForPort"
CfgJSUpdateSelection="updatePortItemsForCheckBox"/>
</od-iterator>
</td>
</tr>
<!-- LM: for each selected product of the current relationship, include full UI
starting from group level -->
<tr>
<td width="100%" colspan="3">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<od-iterator id="500" CfgLoopType="Children" startValue="1500"
count="Dynamic" iteratorName="101Id">
<swe:switch>
<swe:case condition="Default, TestFieldValue, Operator:==,
FieldName:CanDrillDown, FieldValue:Y">
<od-iterator id="110" CfgLoopType="CurrentGroup" startValue="8100"
count="Dynamic" iteratorName="100Id">
<tr>
<td width="10%">
</td>
<td width="80%">
<od-include id="swe:151Id" CfgHtmlType="CurrentGroup"/>
</td>
<td width="10%">
</td>
</tr>
</od-iterator>
</swe:case>
<swe:default>
<od-iterator id="110" CfgLoopType="Attribute" startValue="1100" count="Dynamic"
iteratorName="IncId" >
<tr class="listRowOff">
<td class="row" width="100%" class="AppletBlank">
<od-include id="swe:151Id" CfgHtmlType="Children"/>
</td>
</tr>
</od-iterator>
<tr><td width="100%" class="AppletBlank"></td></tr>
<tr><td width="100%" class="AppletBlank"></td></tr>
<od-iterator id="100" CfgLoopType="Port" startValue="2100" count="Dynamic"
iteratorName="IncId" >
<tr class="listRowOff">
<td width="100%" class="row" class="AppletBlank" >
<od-include id="swe:151Id" CfgHtmlType="Children"/>
</td>
</tr>
</od-iterator>
<tr><td width="100%" class="AppletBlank"></td></tr>
<tr><td width="100%" class="AppletBlank"></td></tr>
</swe:default>
</swe:switch>
</od-iterator>
</table>
</td>
</tr>
<od-include file="eCfgPort_FooterJS"/>
<!-- Template End: eCfgControlCheckPriceMultiLevelJS -->