General Settings
General Settings
The <settings> section contains parameters specifying the default behavior of the interface.
Next & Previous policies (Conf. only)
The nextPolicy & previousPolicy describes the rules to define which element in the user interface will have the focus (meaning: ‘will become the current element’) once the Next (resp. Previous) action has been called.
The automatic scrolling mode that rules the focus put on Form Properties when answering them can be setup in the cameleon.properties file. See the CPQ Administration guide for more details on the scrollMode parameter.
The Next action is automatically called when the user clicks on the ‘Next’ button.
Moreover, it is also called each time a Form Property is valuated on condition that it complies with the automateNextPolicy rules. The purpose of automateNextPolicy is to set rules on focus automation, but it cannot disable it.
By default, the layout file is configured so that, once the end user has answered a FP:
- If the FP is mandatory, the next policy is called if (and only if) the FP has been valuated without error
- If the FP is optional, the next policy is called if (and only if) the FP has been valuated without error or if no value has been chosen.
The Previous action is called when the user clicks on the ‘Previous’ button.
When the Next/Previous action is called, the Configurator Engine returns which UI element has to become ‘Current’ and then have the focus.
| XML ELEMENT ID | SUB-ELTS | ATTRIBUTES | VALUE |
|---|---|---|---|
| nextPolicy previousPolicy | useCurrentCPE: Value “true” --> Getting the next/previous Form Property will take into account the current form property before accessing the next one. Value “false” --> The first form property in the configuration box will be retrieved whatever the current form property position is. | true / false | |
| useParentCPE: shows whether when retrieving the next/previous form property only the current form will be used. Value “true” --> only the form in which the current form property is located will be used as a scope for the search of next form property. Value “false” --> The next form property can be a form property in another form. | true / false | ||
| mustExist mustBeVisible mustBeUpdateable mustBeMandatory mustBeWithoutFailure mustBeWithoutUnrecommended mustBeUncompleted mustBeNotComputed Next (or Previous) form property is the nearest one having its status and properties complying with these settings. | true / false [- Not yet implemented -] |
Step by Step navigation (Conf. only)
CPQ allows to navigate from one form property to another one without taking into account the sequential access to the questions.
However, in some cases, it can be useful to guide the end-user by offering a step-by-step navigation. The goal of this navigation is to have a User Interface displaying a horizontal menu (see selectorBar chapter) whose tabs represent the navigation steps.
A tab of the main selector bar will become accessible if all the preceding steps have been successfully completed.
HOW TO ACTIVATE THE STEP-BY-STEP NAVIGATION?
Declare the step by step policy in the settings part of the Layout XML file.
< stepByStepPolicy selectorBarName ="selectorBarMain”… />
The ‘selectorBarMain’ is the component that will define the different steps of navigation.
In addition to the Step-by-step policy, the usage of the dynamic NEXT_STEP and PREVIOUS_STEP actions allows the end-user to be automatically redirected to the next (or previous) tab without clicking on the selector bar itself.
Declare the Previous/Next step actions in the Layout XML file:
<action actionName="PREVIOUS_STEP" alignment="center"
resourceName="btnPreviousStepMNT" resourceOffName="btnPreviousStepMNTOff"
translationName="tooltip.previousStep" url=""/>
<action actionName="NEXT_STEP" alignment="center"
resourceName="btnNextStepMNT" resourceOffName="btnNextStepMNTOff"
translationName="tooltip.nextStep" url=""/>
When the step-by-step navigation and Next_Step/Previous_Step actions are used, the following
settings are recommended:
<nextPolicy useCurrentCPE="true" useParentCPE="true" … />
<previousPolicy useCurrentCPE="true" useParentCPE="true" … />
Actions automation (Conf. only)
The automateActionPolicy allows triggering automatically a SAVE or ADD_TO_CART or ADD_TO_CART(goTo=cart) or ADD_TO_CART(multiConfiguration=on) action every XX seconds in case the issuer is idle.
The timer attribute is in Seconds.
A confirmation flyer can be raised each time the action has to be launched in order to let the user confirm is this action has to be completed.
<automateActionPolicy timer="100" confirmationFlyer="on"
actionName="ADD_TO_CART"
onConfirmationTranslationName="automateActionPolicy.onConfirmation"
onSuccessTranslationName="automateActionPolicy.onSuccess"
onFailureTranslationName="automateActionPolicy.onFailure" />
The ‘Success’ or ‘Failure’ messages returned by the automated action can be parameterized in the translation section.
Selector policy
The selectorPolicy gives some parameters shared by all value selectors (Configurator or Catalog).
| XML ELEMENT ID | SUB-ELTS | ATTRIBUTES | VALUE |
|---|---|---|---|
| selectorPolicy | maxValueCount: Max number of values displayed in a value selector list (default is 200). | #IMPLIED | |
| intervalCount: Number of intervals generated in the sliders. | #IMPLIED |
Comparison policy
The comparisonPolicy gives the parameters of the comparison tools that are used during the sales script.
| XML ELEMENT ID | SUB-ELTS | ATTRIBUTES | VALUE |
|---|---|---|---|
| comparisonPolicy | minProductCount: min number of slots in the compareBox | #IMPLIED | |
| maxProductCount: max number of products that can be compared in a compareBox | #IMPLIED |
Indexing policy
The indexingPolicy gives the RMO usertype which is used by CPQ UI to build the pages header and to fill the <meta> tags.
By default, the following header is inserted into the CPQ UI HTML pages:
<title>Cameleon-edge</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta http-equiv="pragma" content="no-cache"/>
<meta http-equiv="cache-control" content="no-cache, must-revalidate"/>
If a userType has been specified in the indexingPolicy, the RMOText of the rootCP, or rootCollection corresponding to this userType is used and appended to existing <meta>.
Then it is possible to add RMOText to sub-collections or products and these meta will be used to build the corresponding collection or productPage.
E.g. Content of the RMO Text attached to the rootCP:
<title>My Configurable Product Title </title>
<meta content="Lore Ipsum…… " name="description"/>
<meta content="Web, Configuration" name="keywords"/>
Generated Meta in the resulting HTML confUI pages:
<title>My Configurable Product Title </title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta http-equiv="pragma" content="no-cache"/>
<meta http-equiv="cache-control" content="no-cache, must-revalidate"/>
<meta content="Lore Ipsum…… " name="description"/>
Search policy
The searchPolicy gives the way products descriptions and text will be searched in the Catalog
| XML ELEMENT ID | SUB-ELTS | ATTRIBUTES | VALUE |
|---|---|---|---|
| searchPolicy | searchMode: activates the full text search mode | standard: default value fullText: the search mode is forced to full text. NOTE: In Full text, the rmoUserTypeand type attributes are ignored | |
| searchScope: allows to limit the scope of the search (to the name, the description, the rmoText of the product or a combination of them) If not specified, the search applies on the name, descry and rmoText. When rmoText is specified, the userType to be used for the search is specified in the rmoUserType attribute. Only used when searchMode=’standard’ | #IMPLIED name / description / rmoText (a list of types can be provided) | ||
| rmoUserType: specifies the userType to be used for the search on the RMOText Only used when searchMode=’standard’ | #IMPLIED (a list of types can be provided) | ||
| productType: allows to limit the type of product to be searched If not specified, the search applies on all types. Only used when searchMode=’standard’ | #IMPLIED SI / CP / SP (a list of types can be provided) | ||
| value: specifies the type of the search Only used when searchMode=’standard’ | 1 :Approximate search (‘Like’) CaseInsensitive 2 : Approximate search (‘Like’) CaseSensitive 3 : Exact Match CaseInsensitive 4 : Exact Match CaseSensitive 5 : Approximate search (‘Like’) Case&Accent Insensitive |
| XML ELEMENT ID | SUB-ELTS | ATTRIBUTES | VALUE |
|---|---|---|---|
| maxAddedProducts: Specify the max number of products that can added to the quote by the SEARCH_AND_ADD action. | #IMPLIED | ||
| autoRedirect: Allows to automate the redirection to the product page when only 1 item is returned by the search process. | on / off | ||
| name: Allows to identify the search policy with a name. It is mandatory if several search actions are defined to launch various type of search process: <action actionName="SEARCH(searchPolicy=MyCustomSearch) " /> <action actionName="SEARCH_AND_ADD(searchPolicy=MyCustomSearch2) "/> | #IMPLIED | ||
| limitedToCatalog: Applies only for the full text search. If set to off, the search is performed on all the workspaces and all collections. If set to on, the search is limited to the current catalog only. | on / off |
For more details, please refer to the Search Tools chapter.
Linked products search policy
The linkedProductsSearchPolicy gives the way products will be searched in a complex product structure.
The search applies on the name, description and rmoText (having a userType specified in the rmoUserType attribute.
| XML ELEMENT ID | SUBELTS | ATTRIBUTES | VALUE |
|---|---|---|---|
| linkedProductsSearchPolicy | rmoUserType: specifies the userType to be used for the search on the RMOText | #IMPLIED (a list of types can be provided) | |
| value: specifies the type of the search | 1 :Approximate search (‘Like’) CaseInsensitive 2 : Approximate search (‘Like’) CaseSensitive 3 : Exact Match CaseInsensitive 4 : Exact Match CaseSensitive 5 : Approximate search (‘Like’) Case&Accent Insensitive | ||
| maxAddedProducts: specify the max number of products that can added to the quote by the SEARCH_AND_ADD action. [- Not yet implemented -] | #IMPLIED | ||
| autoRedirect: Allows to automate the redirection to the product page when only 1 product breadcrumb / product path is returned by the search process. | on / off |
| XML ELEMENT ID | SUBELTS | ATTRIBUTES | VALUE |
|---|---|---|---|
| linkType: list of the product link types that will be browsed to define the searchable the product structure. | Predefined Link types (breakdown, upSelling, crossSelling, spareParts, replacement) or custom (customLink1, …) (a list can be provided) | ||
| hiddenLinks: list of product link types that will be hidden to render in the resulting productPathBox E.g. SI0 >(link1)> SI1 >(linkToHide)> SI2 will be rendered as SI0 >(link1)> SI2 | Predefined Link types (breakdown, upSelling, crossSelling, spareParts, replacement) or custom (customLink1 …). Only a subset of the links contained in the ‘linkType’ attribute can be provided. (a list can be provided) |
For more details please refer to the Search Tools chapter.
Navigation policy
The navigationPolicy defines the way the path of items associated via product links are displayed in a navigationPathBox.
| XML ELEMENT ID | SUB-ELTS | ATTRIBUTES | VALUE |
|---|---|---|---|
| navigationPolicy | linkType: type of the link to be displayed | #IMPLIED. Predefined Link types (breakdown, upSelling, crossSelling, replacement, spareParts) or custom (customLink1, …) (an ordered list can be provided) |
Example with a list of links:
<navigationPolicy linkType="spareParts,CustomLink1" />
Example for all types of links:
<navigationPolicy linkType="*" />
For more details please refer to the navigationPathBox chapter
Drag and Drop policy
The dragAndDropPolicy allows (de)activating the capability, in the Catalog, at runtime, to drag a product from a product list and to drop it in the cart box, thus adding this item to the Quote.
| XML ELEMENT ID | SUB-ELTS | ATTRIBUTES | VALUE |
|---|---|---|---|
| dragAndDropPolicy | ddProducts: activate or deactivate the drag and drop of products in the Catalog from a product list in the cartBox | on / off off by default |
Example:
<dragAndDropPolicy ddProducts="off"/>
For more details please refer to the cartBox chapter.
