Remove vanilla buttons from the configurstor UI.
<td nowrap>
<swe:control id="swe:Cancel" CfgUIControl="Cancel" CfgHtmlType="MiniButton" InvokeMethod="PrevView"/>
</td>
Solution:
Solution doesn't involve any configuration in Siebel tools or compilation, it requires editing of the confgirator vanilla template files directly.
Buttons like Done , verify, reprice etc are displayed on confgurator UI as a part of eCfgTopLevelButtonsJS.swt template file.
Buttons in this file are displayed inside the table cells and luckily there not much of css style attached on them.
So to remove the buttons we can define a style property for each cell that we want to remove. style="display:none"
For Example to remove the Save button from the UI, you need to change the code from :
<td nowrap>
<swe:control id="swe:Cancel" CfgUIControl="Cancel" CfgHtmlType="MiniButton" InvokeMethod="PrevView"/>
</td>
to:
<td nowrap style="display:none">
<swe:control id="swe:Save" CfgUIControl="Save" CfgHtmlType="MiniButton" InvokeMethod="SyncInstance"/>
</td>
<swe:control id="swe:Save" CfgUIControl="Save" CfgHtmlType="MiniButton" InvokeMethod="SyncInstance"/>
</td>
Nitin Jain · 817 weeks ago
jay · 812 weeks ago
<swe:control id="swe:101Id+400" CfgFieldName="CxEnabled" CfgUIControl="CfgLabel" CfgHtmlType="CfgLabel" property="FormattedHtml"/>';
I have a question. where do we get the value "swe:101Id+400"?? do you have any idea.
we're trying to customize the product configurator where in. we can hide the products conditionally.
in SI mode it's working but when we migrate it to HI and the reason is we're unable to get the value for <swe:control id="swe:101Id+400"
Tejeshwer 34p · 812 weeks ago
hope you can throw some light on this.
jay · 812 weeks ago
var ID = '<swe:control id="swe:101Id+2000" CfgFieldName="Product Id" CfgUIControl="CfgLabel" CfgHtmlType="CfgLabel" property="FormattedHtml"/>';
var Enabled = '<swe:control id="swe:101Id+400" CfgFieldName="CxEnabled" CfgUIControl="CfgLabel" CfgHtmlType="CfgLabel" property="FormattedHtml"/>';
var Selected = '<swe:control id="swe:101Id+600" CfgFieldName="Selected" CfgUIControl="CfgLabel" CfgHtmlType="CfgLabel" property="FormattedHtml"/>';
any suggestion guys?
Tejeshwer 34p · 812 weeks ago
If your are trying to hide a product in an relationship then you can do it by excluding the product using a constraint and adding an Excluded = Y user property on the root product.
This will hide your product conditionally.. you can also specify this property on child products also.
hope this helps.
jay · 812 weeks ago
Tejeshwer 34p · 812 weeks ago
If your condition is based on selection made by user then you have two predefined user properties in siebel to make the product hidden.
1. Excluded
2. Hide. both of them have totally "different" use.
But i think condition is not like that in your case.
For such condition i can suggest you changing the showcheckbox and showDomainAndChildrenControl method of cfgui.js file instead of the swt file.
This might help you to get your thing done in both the UIs.
Please share what solution works for you.
Jay · 810 weeks ago
we're modifying the showDomainAndChildrenControl method of cfgui.js and we are unable to get the profile attribute value.
We're trying to get the pass a value of a profile attribute from PreInvokeMethod event of FS Agreement Item BC to the cfgui.js showDomainAndChildrenControl function
We're using this syntax in the cfgui.js showDomainAndChildrenControl function to get the profile attribute
var sROSvcId = top.theApplication().GetProfileAttr("ROSvcId");
We are unable to get the value of the Profile Attribute because when we used the Alert (sROSvcId); we're getting null value
Do we have any other way on how to get the profile attribute from PreInvokeMethod to cfgui? any idea if it's possible
Tejeshwer 34p · 809 weeks ago
Try using browser cookies if profile attribute fails completely for you. Search on google for code to set and get browser cookies.