Configuration Single Select Pick Lists
Overview
A Single Select Pick List (SSPL), also referred to as a Dynamic Menu, is a Configuration attribute type. Administrators manage the domain of values for a SSPL attribute within a defined resource (e.g. Data Tables or Configuration arrays). The SSPL attribute type can be created in Configuration for Text, Integer, and Float data types. While similar to a Single Select Menu attribute on the user side, a SSPL attribute’s menu options are managed within a defined resource.
SSPL attributes have several advantages:
-
Administrators can easily maintain menu options through Data Tables or Array Sets. Refer to Using Domains for more information.
-
Administrators can references external images for SSPL Image Menus. Refer to Using Images for more information.
-
SSPL attributes dynamically filter menu options based on static values, other Configuration attribute values, and user input. Refer to Using Filters for more information.
-
SSPL attributes support "Type to Filter" functionality for Text-type attributes that are not Image Menus. For more information, refer to Type to Filter Functionality
Unlike Single Select Menu and Multi-Select Menu attributes, Single Select Pick Lists have a field on the user side in which the user can type. In addition to Filters defined within the attribute, SSPLs respond to user input to filter out options that do not contain the character(s) entered by the user. This is known as “type to filter” functionality.
The following image shows Type to Filter functionality. In the left-hand menu, all components are shown in the drop-down since there is no user input in the Server Component field. In the right-hand menu, only components that contain a capital P are shown in the drop-down, since the user entered a capital P in the Server Component field.
Notes:
- Type to filter functionality is case-sensitive.
- Type to filter functionality is automatically enabled on all Text-type Single Select Pick Lists that are not Image Menus.
- Type to filter cannot be turned off.
-
Pick Maps can be used to force set Configuration attribute values to Data Table values without creating a Recommendation rule or writing BMQL.Refer to Using Pick Maps for more information.
Administration
-
Navigate to the Attributes Administration List page.
-
Click Admin to go to the Admin Home Page.
-
Click Catalog Definition in the Products section.
The Supported Products page opens.
-
In the Navigation column, select Attributes and then click List.
The Attributes Administration List page opens.
-
-
Click Add. The Attribute Editor page opens.
-
Enter the information for the following sections:
Note: The Attribute Editor defines the default display type properties for all layouts.
- *Name - Enter the attribute name.
The Name value appears as the attribute label when this item is added to a Configuration layout. -
*Variable Name - The Variable Name field populates automatically. Variable names can only contain alpha-numeric characters and underscores. The entry can be changed before saving, but after saving the value is read-only.
Note: Customers should not use any of the following names for Configuration attribute variable names. Using these values may cause issues with customer configurations and could possibly alter site functionality.
- action_id
- bm_cm_process_id
- _bom_
- bs_id
- commerce_doc_url_params
- commerce_list_id
- document_id
- document_number
- folder_id
- formaction
- from_config
- scrollTop
- shopping_cart_id
- step_id
- token
- version_id
- *Category - Select Configurable Attribute.
- Array Type - Select this checkbox if the attribute can be used as a column in an array set.
Refer to Managing Arrays and Sets for more information - *Data Type - Select Text, Float, or Integer.
-
Attribute Type - Select Single Select Pick List.
The Single Select Pick List section appears.
-
Set Domain-related information listed below. Refer to Using Domains for more information.
Data Tables Array Sets -
Domain - Select the Data Table resource where the SSPL menu options are defined.
-
Distinct Values - Select this option to ensure that a value displays only once to users in the Single Select Pick List
Refer to Using Distinct Values for more information. -
Variable - Select the column in the Domain that contains the variable names of the Single Select Pick List menu options.
* Only applicable to Text-type SSPL attributes. Variable is not displayed when Distinct Values are enabled.
-
Display - Select the column in the Domain that contains display names for the Single Select Pick List menu options.
-
Order By - (optional) Select the Data Table column that determines how SSPL user options are sorted.
Refer to Using Order By and Order By Direction for more information. - Order By Direction - Select Ascending or Descending order.
-
Domain - Select the Array Set resource where the SSPL menu options are defined.
-
Variable - Select the attribute that contains the variable names of the SSPL menu options.
-
Display - Select the attribute that contains display names for the SSPL menu options.
-
-
Images - Select the column or array attribute that contains the image paths. Refer to Using Images for more information.
*The Images drop-down only appears when Image Menus are enabled. - Filter - (optional) Define a query to filter which menu options in the Domain are shown to the user. Refer to Using Filters for more information.
- Pick Maps - (optional) allow administrators to set one or more Configuration attribute values to a value defined within the Domain, without creating any Recommendation rules. Refer to Using Pick Maps for more information.
- Picker Attribute - Select he column in the Domain that contains the value that will be force set on a Configuration Attribute when the user selects a SSPL option.
- Model Attribute - Select the Configuration attribute that will be force set with the Picker Attribute value.
- *Name - Enter the attribute name.
-
Select one of the following:
- Click Add to save changes and open the Menu Attribute Editor, proceed to Edit a Single Select Pick List Attribute.
- Click Add and New to save changes and create another attribute.
- Click Cancel to return to the Configurable Attributes Administration List page without saving changes.
Edit a Single Select Pick List Attribute
-
Navigate to the Attributes Administration List page.
-
Click Admin to go to the Admin Home Page.
-
Click Catalog Definition in the Products section.
The Supported Products page opens.
-
In the Navigation column, select Attributes and then click List.
The Attributes Administration List page opens.
-
-
Click the name of an attribute with Text in the Attribute Type column, or create a new attribute
The Menu Attribute Editor page opens.
-
Edit information in the following sections, as required.
Note: The Attribute Editor defines the default display type properties for all layouts.
Field Description Name
The name of the attribute
The Name value appears as the attribute label when this item is added to a Configuration layout.Image Menu
Select Yes to enable Image Menus.
Individual images are added in the Menu Population section and display options are set in the Image Properties section.
Display Type
The following Display Types are available:
-
Legacy Display Type:
- Image Menus Disabled: Single Select Pick List
- Image Menus Enabled: Drop-down Menu and Grid
-
JET Display Type:
Select Choice, Film Strip Horizontal, Film Strip Vertical, Cards
Description
The attribute description.
When an attribute Help Icon is displayed on a layout, the description appears when the user hovers over the help icon. Refer to Help Icons for more information.
The following properties cannot be modified for Single Select Pick Lists: Set Type, Auto Lock, Required, Hidden, Auto Update, and Hide in Transaction.
Status - Select one of the following options:
-
Active: An attribute that is active will appear to the buyer and/or be included in rules.
All attributes are active by default.
- Inactive: An inactive attribute cannot appear in a rule to the user.
- Internal: An internal attribute will only appear to FullAccess users.
-
Show Start/End Dates: Click to specify how long the attribute will remain in the chosen status.
If no duration is specified, the attribute maintains its status until the administrator changes it.
Image Menu Properties (Image Menu Properties appear when Image Menus are enabled)
Image Menu Properties
-
Fix Dimension: Base the image size on Height or Width.
The images will be auto-scaled to preserve the proportions of the image to fit the layout.
-
Image Size: Set the image size in pixels.
Create your images in a size similar to the one in which they will be displayed, to keep the image dimensions consistent and avoid distortion.
Legacy Properties
-
Label and Price Location: Select: Above Image, Below Image, or Hover
Sets where the menu item labels and the optional attribute value prices are displayed. View location examples
-
Rows and Columns: Set the number of Rows and/or Columns.
If Rows are set to "0", the number of rows will be auto-populated based on the number of columns.
- To display 12 menu items in rows of 3, enter 3 for Columns.
- To display just the first 2 rows, instead of displaying all 4 rows, set the number of Rows to 2. The image menu will contain a scroll bar so users can scroll to view the rest of the rows.
- To display 12 menu items in rows of 3, enter 3 for Columns.
JET Properties
-
Control Display: Set film strip pagination controls
*Available for Film Strip Horizontal and Film Strip Vertical
View Arrow and Paging Controls example
View Arrows and Paging Information example
-
Label and Price Location: Select: Above Image, Below Image, or Hover
Sets where the menu item labels and the optional attribute value prices are displayed. View location examples
-
Height and Width: Set the image frame size View frame size example
*Available for: Film Strip Horizontal, Film Strip Vertical, Cards
-
Page Size: Set the number of frames displayed in the vertical film strip View page size example
*Available for Film Strip Vertical
-
Set Domain-related information listed below. Refer to Using Domains for more information.
Data Tables Array Sets -
Domain - Select the Data Table resource where the SSPL menu options are defined.
-
Distinct Values - Select this option to ensure that a value displays only once to users in the Single Select Pick List
Refer to Using Distinct Values for more information. -
Variable - Select the column in the Domain that contains the variable names of the Single Select Pick List menu options.
* Only applicable to Text-type SSPL attributes. Variable is not displayed when Distinct Values are enabled.
-
Display - Select the column in the Domain that contains display names for the Single Select Pick List menu options.
-
Order By - (optional) Select the Data Table column that determines how SSPL user options are sorted.
Refer to Using Order By and Order By Direction for more information. - Order By Direction - Select Ascending or Descending order.
-
Domain - Select the Array Set resource where the SSPL menu options are defined.
-
Variable - Select the attribute that contains the variable names of the SSPL menu options.
-
Display - Select the attribute that contains display names for the SSPL menu options.
-
-
Images - Select the column or array attribute that contains the image paths. Refer to Using Images for more information.
*The Images drop-down only appears when Image Menus are enabled. - Filter - (optional) Define a query to filter which menu options in the Domain are shown to the user. Refer to Using Filters for more information.
- Pick Maps - (optional) allow administrators to set one or more Configuration attribute values to a value defined within the Domain, without creating any Recommendation rules. Refer to Using Pick Maps for more information.
- Picker Attribute - Select he column in the Domain that contains the value that will be force set on a Configuration Attribute when the user selects a SSPL option.
- Model Attribute - Select the Configuration attribute that will be force set with the Picker Attribute value.
-
-
Select one of the following options:
-
If translations are required, click Translations and provide translated values for the label and description fields.
- Click Apply to save changes and remain on the Attribute Editor page.
-
Click Update to save changes and return to the Configurable Attributes Administration List.
-
Click Update and New to define another attribute.
-
Click Back to return to the Configurable Attributes Administration List without saving changes.
-
Oracle CPQ introduced "Distinct Values" in release 18B to address scenarios where a SSPL filter returns multiple results with the same value, resulting in users seeing the same result multiple times in the SSPL menu options. Administrators can enable Distinct Values to ensure that a value displays only once to users in the Single Select Pick List.
- When the Distinct Values option is enabled:
- Pick Maps are disabled.
- The Variable option is not displayed.
- The Order By option is set to the column selected in the Display menu.
- The Distinct Values checkbox is available when creating Single Select Pick Lists as stand-alone attributes or array-type attributes.
- When images are enabled on a Single Select Pick List, the combination of the Display value and the Image value define the uniqueness of each row in a data table. The same Display value may appear multiple times in a Distinct Single Select Pick List, but only when the image paths associated with the Display value are different.
If an administrator enables Distinct Values, any pre-defined Pick Maps are removed upon clicking Apply or Update.
The Domain, Variable, and Display determine the menu options of the Single Select Pick List on the user side. If new menu option need to be added to the Single Select Pick List, the administrator can simply add new items to the array set or Data Table resource.
- Domain - This is the resource where the Single Select Pick List’s menu options are defined. Use the Domain field in a Single Select Pick List attribute’s editor to select an array set or a Data Table to use as the source of the data. The array sets are listed prior to the Data Tables, each of which is shown in alphabetical order. There is no displayed separator between the two collections of data sources.
-
Variable - This is the column in the Domain that contains the variable names of all possible menu options for the Single Select Pick List. As in Single Select Menu and Multi-Select Menu attributes, the variable name of a menu option that is selected will be returned to the system to be used in Configuration rules.
Note: The Variable drop-down contains a list of the selected Domain's column names that are the same type (Text, Integer, or Float) as the Single Select Pick List attribute.
-
Display - This is the column in the Domain that contains display names for all possible menu options for the Single Select Pick List. As in Single Select Menu and Multi Select Menu attributes, display names will determine the name of the menu option that is shown on the user side. A display name can be different from or the same as the variable name of a menu option.
In Single Select Pick Lists, if all possible menu options have the exact same display name and variable name, the Display column can be the same as the Variable column.
Notes:
- Display is only available for Single Select Pick Lists with a Data Type of Text.
- The user side only displays the first 1,000 sorted values from the Display column.
Within the Single Select Pick List, the administrator can select the Data Table (Domain) that contains the menu options, the Data Table column that contains menu option variable names (Variable), and the Data Table column that contains menu option display names (Display).
For example: A Single Select Pick List could be implemented so that a user could select a Server.
The following image shows the target Data Table with all possible menu options.
If "Ultra Power Server 4500" is selected, "AS86011" is returned to the system for use in Configuration rules since "Ultra Power Server 4500" is the display name for the "AS86011" menu option variable name, as defined in the Servers Data Table.
On the user side (shown below), the display names for each variable name are shown in the Single Select Pick List.
Using Order By and Order By Direction
When a Single Select Pick List uses a data table as its data source, administrators can apply a sort order to determine how the results of the data table query display to users in a Single Select Pick List.
- Order By: Lists all of the data table columns referenced by the domain (i.e. the data source).
- Order By Direction: Allows administrators to sort the display value in Ascending or Descending order.
To prevent performance issues, Oracle recommends choosing an indexed column for the Order By option.
Note: When an array set is selected from the (Domain) drop-down menu, the Variable, Display, and Picker Attribute fields automatically populate with all of the array attributes in the array set. The options in the Model Attribute field are automatically populated after the administrator selects an array attribute from the Picker Attribute drop-down menu.
Note: Adhere to the following rules for Display or Variable names:
- The following characters are not allowed: | (vertical bar), ~ (tilde), " (double quote), ' (single quote), [ (left bracket), ] (right bracket), or \ (backslash).
- A literal "null" or "Class" values are not allowed.
If the display or variable value of a Single Select Pick List is literal "null", pick maps do not work.
In addition, "Class" and "null" cannot be the column name for a data table.
Single Select Pick Lists can filter the menu options that are shown to the user based on static values or other Configuration attribute values. Menu option filtering is configured in the Filter field within the Single Select Pick List panel. The size of the Filter text box supports 4000 characters.
Within the Filter field, the administrator can define a query to filter which menu options in the Domain are shown to the user.
The Filter field accepts a subset of MongoDB syntax. For more information on what MongoDB operators Oracle CPQ can recognize, see Query Specification Syntax. For more information on MongoDB syntax, see MongoDB’s Query Documents documentation.
The first value in the Filter statement must contain the name of the column in the Domain that will be compared against the second value in the Filter statement. The second value in the Filter statement must contain the value that the column in the Domain will be compared against. The data type of the column in the Domain will be the data type that the system assumes for the value on the right side of the filter.
{Column:ComparisonValue}
Menu options in the Domain will only be shown on the user side if the column in the Domain and the value it is compared against are equal.
You cannot use a non-array Single Select Pick List within an array Single Select Pick List’s filter.
Within an array Single Select Pick List’s filter, you can reference:
- Non-array attributes
- Array attributes that have the same array control attribute as the Single Select Pick List.
Column Syntax
The column in the Domain must be referenced by its name.
Syntax: No formatting required
Example: ServerComponent
Comparison Value Syntax
The value can contain:
-
Literal string values (can include numbers, but it will still be treated as a string)
Syntax: Within quotation marks
Example:
"Processor"
-
Numeric values (can be integers or floats)
Syntax: No formatting required
Example:
4.25
-
Configuration attribute values
Syntax: Attribute variable name within quotation marks and pipes
Example:
"|server|"
Boolean Value Syntax
- Syntax: Boolean values must be enclosed in quotes when using the "exists" operator in a query to filter dynamic menu options
- Example:
{createdBy:{$exists:'true'}}
"
Filter Examples
-
{ServerID:"|server|"}
Menu options in the Domain will be shown in the Single Select Pick List if the value in the
ServerID
column matches the value of theserver
attribute.
-
{ServerComponent:"Processor"}
Menu options in the Domain will be shown in the Single Select Pick List if the value in the
ServerComponent
column isProcessor.
A ComponentType Single Select Pick List attribute could be filtered to only show ComponentType menu options that are within the value of the ServerComponent attribute. In this example, within the Domain that the ComponentType attribute draws its menu options from, there should be a column with ComponentType values for each ServerComponent menu option, as shown below.
Within the Single Select Pick List, the administrator can define a Filter to match the ServerID
value selected in the server attribute and the value in the ServerComponent
column is Processor
.
On the user side (shown below), only menu entries whose ServerID value matches the value selected in the Server attribute and ServerComponent
value is Processor
are shown. Only "Processor" component types for the Ultra Power Server 4500 are shown, not the Green Server 3500 or Sentinel Power Server 5500 servers, and not RAM, Power Cord, etc. component types.
Within the Single Select Pick List, the administrator can select the Image column in the Image drop-down.
The Image drop-down lists all String columns in the selected Domain.
The column should contain links to images that will be shown along with the display names of corresponding menu options on the user side.
Within the Domain column:
-
Links to external images must be full URLs.
-
Links to File Manager images can be added via:
- Full URLs
- File Manager $BASE_PATH/SECURE_PATH URLs.
For images saved in the File Manager, the image path is listed in the File Location column.
On the user side, images are pulled from the Image column in the Domain and shown to the user along with the corresponding display names of the menu options.
Pick Maps allow administrators to set one or more Configuration attribute values to a value defined within a column of the Single Select Pick List’s Domain, without creating any Recommendation rules that would require BMQL.
The Picker Attribute and Model Attribute menus determine Pick Map relationships. When a value is given to a Single Select Pick List, the Model Attribute is force set to the value of the Picker Attribute value in the same row as the selected Single Select Pick List value.
-
Picker Attribute - The column in the Domain that contains the value that will be force set on a Configuration Attribute. The row with the menu option that is selected in the Single Select Pick List on the user side will be used to determine the Picker Attribute value that contains the force set value.
The Picker Attribute menu lists all of the selected Domain's columns.
-
Model Attribute - The Configuration attribute that will be force set with the Picker Attribute value.
Notes:
- The Model Attribute menu will only contain Configuration attributes that are on the same level or a higher level of the Product Hierarchy as the Single Select Pick List attribute, and whose data type matches the data type of the Picker Attribute column in the Domain.
- Only one Pick Map can be created per Model Attribute (Configuration attribute).
- In a non-array type Single Select Pick List, you cannot select Array attributes as Model Attributes in Pick Maps.
- In an array Single Select Pick List, you can only select Array attributes that share the same Array Control attribute with the Single Select Pick List as Model Attributes in Pick Maps.
In the following example, the Server SSPL contains a Pick Map to set the value of a Rack Mount Kit attribute based on the value of the Server selection.
In this example, within the Domain Server Data Table domain that the Server SSPL draws its menu options from, there is a column with rack mount kit PartNumber values for each Server menu option.
Within the SSPL attribute, a Pick Map is defined to set the value of the Rack Mount Kit attribute to the PartNumber value in the same row as the selected Server menu option.
On the user side, the Rack Mount Kit attribute is force set to the PartNumber value based on the Server selection.
When a Pick Map relationship has been established using the Picker Attribute and Model Attribute drop-downs, the Pick Map can be added to the Single Select Pick List by clicking Add.
Active Pick Maps are shown in the Pick Maps list.
Remove a Pick Map Relationship
An active Pick Map can be removed from the Pick Maps list (and therefore be deactivated) by selecting the Pick Map within the list and then clicking Delete.
- In a Single Select Pick List attribute that will contain Picks Maps, the Variable column in the Domain should not contain duplicate values. In this scenario, the system will use the Picker Attribute column value within the same row as the selected menu option in the Variable column.
- If there are duplicate values in the Variable column, the user could select either identical menu option, and there is no way to guarantee that the intended Picker Attribute value will be used.
Use Single Select Attributes and Values in Configuration Rules
A Single Select Pick List (SSPL) is an attribute type created in Configuration for Text, Integer, and Float data types. Administrators manage the domain of values for a Single Select Pick List attribute within a defined resource (e.g. Data Tables or Configuration arrays). As part of continuous improvements to Single Select Pick Lists, administrators can now use SSPL attributes as Simple Condition and Advanced Condition inputs for Configuration rules. Administrators can also reference SSPL attributes when defining BML Functions for Configuration rule Actions. This enhancement supports Recommendations, Constraints, Hiding Attributes, Prices, Bill of Materials, Recommended Items, and Configuration Flows.
As in prior releases, rules enable the customer to set specific configuration information for their products. For example: Rules can be used to suggest configuration values to buyers, hide Configuration attributes from certain user types, recommend items to buyers, prevent buyers from selecting constrained values of configuration attributes, and display additional price information.
When administrators set up a Configuration rule, they define the condition that specifies when a rule should run. There are three options: Always True, Simple Condition, and Advanced Condition. "Always True" will fire the rule automatically because a specific condition does not need to be met. "Simple Condition" will fire the rule based on condition attribute values defined by the administrator. "Advanced Condition" will fire the rule based on an advanced function written with BML.
Use SSPL Attributes in Simple Condition Inputs for Configuration Rules
Administrators can use Single Select Pick List attributes in Simple Condition inputs for Configuration rules.
Complete the following steps to define a Simple Condition using a SSPL attribute:
- Navigate to the Admin Home page.
-
Under Products, click Catalog Definition.
The Supported Products page opens.
- From the Navigation menu, select the appropriate rule type.
-
Click List.
The appropriate rule list page opens.
-
Click Add.
The new rule type page opens.
- In the Name field, enter a name for the rule.
- Click in the Variable Name field to auto-populate the field.
- Select Simple Condition as the Condition Type.
- Click Add Row.
-
In the Attribute field, select the SSPL attribute to define as a condition for the rule.
- Select the Operator.
- Select the Value Type.
- Type the condition value in the Values field.
Notes:
- Operators for text SSPLs are Equals, Not Equals, Starts With, Not Starts With, Ends With, Not Ends With, Contains, and Not Contains. Operators for integer and float SSPLs are >, >=, <, <=, Equals and Not Equals.
- When the Value Type is "Attribute", Values can be another SSPL attribute.
Use SSPL Values in Advanced Condition Inputs for Configuration Rules
Administrators can use Single Select Pick List attributes in Advanced Condition inputs for Configuration rules. The advanced function is meant for complex condition logic.
Complete the following steps to define an Advanced Condition using a SSPL attribute:
- Navigate to the Admin Home page.
-
Under Products, click Catalog Definition.
The Supported Products page opens.
- From the Navigation menu, select the appropriate rule type.
-
Click List.
The appropriate rule list page opens.
-
Click Add.
The new rule type page opens.
- In the Name field, enter a name for the rule.
- Click in the Variable Name field to auto-populate the field.
-
Select Advanced Condition as the Condition Type.
- Click View/Edit the BML Function to access the Function Editor.
- Select one of the following options to select SSPL attributes:
"Add Attributes" Option
- Click Add Attributes.
Select the appropriate Single Select Pick List from the Attributes pop-up.
"Add Row" Option
Click Add Row in the BML Function Editor.
- Click inside the Name field
Select the appropriate Single Select Pick List attribute from the drop-down menu.
Use SSPL Attributes in Advanced BML Functions for Configuration Rule Actions
The functionality to select SSPL attributes within Advanced BML Functions is also available for Configuration rule Actions. When an administrator selects Define BML Function within a Configuration rule Action the BML Function Editor will open. The administrator then selects Add Attributes or Add Row to select SSPL attributes to use in the BML script.
- Select one of the following options to select SSPL attributes:
"Add Attributes" Option
- Click Add Attributes.
Select the appropriate Single Select Pick List from the Attributes pop-up.
"Add Row" Option
Click Add Row in the BML Function Editor.
- Click inside the Name field
Select the appropriate Single Select Pick List attribute from the drop-down menu.
Set the Value of a Single Select Pick List Using a Recommendation Rule Action
Recommendation Rules help buyers configure products by offering suggested attribute values. For each Configuration where a model or part likely has certain attribute values, administrators can create a Recommendation Rule. For example: If a Meat Lovers' pizza has only pepperoni and sausage as toppings, administrators can create a recommendation rule allowing users to modify the toppings.
Administrators can use a Single Select Pick List attribute in a standard action in a Recommendation Rule. When recommendations trigger, they appear to buyers on the Model Configuration page.
Complete the following steps:
- Navigate to the Admin Home page.
-
Under Products, click Catalog Definition.
The Supported Products page opens.
- From the Navigation menu, select Recommendations.
-
Click List.
The Recommendation: Rules List page opens.
-
Click Add.
The Recommendation: New Rule page opens.
- In the Name field, enter a name for the Recommendation Rule.
- Click in the Variable Name field to auto-populate the field.
- Select Simple Condition as the Condition Type.
-
Under Action: (Values to Set), click Add Attributes.
The Attributes dialog opens.
-
Select the Single Select Pick List attributes to include as actions in the Recommendation Rule.
-
Click Add.
The Recommendation Rule displays.
- Use the Value to Set text entry field to set a value for the Single Select Pick List attribute.
-
As with other Recommendation Rules, use the Set Type menu to auto-populate the recommended values in the attribute field.
Set Type
Description
None
The selected value for the action attribute in the rule is the recommended value for the attribute. It will show as a message and it can be modified by the user.
Set
The setting of a recommended value can be prevented by locking the attribute, in which case, only the recommended values message is shown. This can be modified by the user.
Forced Set
The rule will set the attribute value to the value chosen in the rule. This value is read-only and cannot be modified by the user.
Notes:
- When using Static Text to set the value of a Single Select Pick List via a standard action in a Recommendation Rule, the value is validated in the data table upon performing a Save. If the value does not exist in the data table, an error displays at the top of the Recommendation page noting that the attribute and value are invalid. If the entry is invalid, administrators can insert a correct value to save the Recommendation Rule.
- If a Single Select Pick List has an invalid entry and administrators choose to set the entry via BML, they must first remove the Static Text entries before setting up the BML action for the attribute. Otherwise, administrators cannot save the Recommendation Rule unless they revert, remove the entries, and re-select the BML.
Shown below is an example of the Single Select Pick List attributes in Configuration. The attributes are used as actions in a Recommendation Rule and display under the Content heading.
Set the Value of a Single Select Pick List Using a Punch-In Value
A punch-in is a link used to navigate users directly from one page to another. Oracle CPQ extends the functionality available in Configuration by allowing administrators to set the initial value of a Single Select Pick List by specifying a parameter in a punch-in value.
Complete the following steps:
- Navigate to the Admin Home page.
-
Under Styles and Templates, select Home Page.
The Home Page Setup page opens.
-
Select the icon under the Model Punch-In column.
The Model Punch-ins List page opens.
- Click New.
-
Set the initial value for the Single Select Pick List by browsing to a specific variable name and specifying a parameter in the URL.
Sample Parameter:
exampleSSPL=<variable value>
-
Click Save.
In the following example, the initial value of the Single Select Pick List is set to Phone 1.
Note: The phone attribute is a Single Select Pick List attribute. Administrators can map the various phone attributes to the associated phone descriptions by creating pick maps. As shown below, the description will then change when users select a different phone option.
Set the Value of a Single Select Pick List Attribute Using a SOAP API
Administrators can use a SOAP API call to set the value of a Single Select Pick List attribute using a punch-in URL or a Recommendation Rule. When sending a SOAP request to set a value for a Single Select Pick List attribute, administrators must use a value in the request. The default value for <displayedValue> is false. Administrators can specify the <displayedValue> as true in the request to show the display value in the response.
Sample Text Single Select Pick List SOAP API request:
Sample Text Single Select Pick List SOAP API response:
Sample Integer and Float Single Select Pick List SOAP API request:
Sample Integer and Float Single Select Pick List SOAP API response:
Notes
Notes:
- Prior to Oracle CPQ 19A, the
system_user_cpq_server_as_client
user was used for OAuth authentication within Oracle CPQ to enable Single Select Pick List functionality. The system_user_cpq_server_as_client user cannot be inactivated or modified—errors will occur when an administrator attempts to inactivate the user and when an administrator attempts to save changes made to the user. -
Beginning with Release 18B, administrators must include the list of Pick Maps associated with a Single Select Pick List in the XML or CSV upload file. Otherwise, pre-existing Pick Maps will be removed.
- For best performance, ensure that Filters on large Data Tables have suitable indexes defined. For more information, see Data Table Overview.
-
If a Single Select Pick List is on a desktop layout that has a corresponding mobile layout, the mobile layout will not be available on the user side and the desktop layout will always be used. Additionally, if a Single Select Pick List is on a desktop layout that does not have a corresponding mobile layout, a mobile layout cannot be created. The mobile layout will become available and new mobile layouts can be created as soon as all Single Select Pick List attributes are removed from the desktop layout.
Mobile layouts will still be available on the user side for Configuration Flow nodes that do not have a Single Select Pick List on the desktop layout. For example, if a Start Node has a Single Select Pick List on the desktop layout but the End Node in the sequence does not have a Single Select Pick List on the desktop layout, the desktop layout will be used for the Start Node but the mobile layout will be used for mobile users on the End Node.
-
After a site restart, the first time a user enters a Configuration Flow on the user side that contains one or more Single Select Pick List attributes, the Single Select Pick List(s) will take longer to load than the rest of the page as the JavaScript cache is loaded.
The rest of the page will function as expected, and the Single Select Pick List attributes will function as expected once they load. All subsequent times that a user enters a Configuration Flow on the user side that contains one or more Single Select Pick List attributes, Single Select Pick List attributes will load normally.
-
If a Single Select Pick List Array attribute has a Filter and/or a Pick Map that references other Array attributes with the same array control attribute, neither the Single Select Pick List Array attribute nor the Array attributes being filtered-on or pick-mapped can be removed from an array set with the same array control attribute (until the Filter and/or Pick Map references are removed from the Single Select Pick List).
-
If a Single Select Pick List Array attribute has a Filter and/or a Pick Map that references other Array attributes with the same array control attribute, neither the Single Select Pick List Array attribute nor the Array attributes being filtered on or pick-mapped can have their array control attribute changed (until the Filter and/or Pick Map references are removed from the Single Select Pick List).
-
If an array set contains a Single Select Pick List Array attribute that has a Filter and/or a Pick Map that references other Array attributes with the same array control attribute, the array set cannot be deleted (until the Filter and/or Pick Map references are removed from the Single Select Pick List).
- Have as few attributes "auto-update" as possible.
-
If the data in the Display or Variable name column is empty or specified as “null” in the Data Table, then pick maps do not work correctly. Single Select Pick maps will display “null” for empty values.
-
When a Data Table contains a column name of “class” or “null”, an administrator can use the Data Table but cannot use the column. On the user side, Data Table columns named “class” or “null” break in Configuration.
-
Numeric Configuration attributes used in a Single Select Pick List filter are now validated when the attribute focus is lost, which occurs when a user clicks away or uses the Tab key to go to the next attribute on the page. In previous releases, numeric Configuration attributes (e.g. integer or float) were not validated until the Configuration was saved or updated.
-
Beginning in 2016 R1, Single Select Pick List Configuration attributes show both the Display value and the Variable name “Label[varname]" in the pipeline viewer for all Configuration attribute types.
Best Practices
When using Single Select Menus, Multi-Select Menus, or Single Select Pick Lists in a BOM Mapping implementation CPQ recommends that all menu option values are mapped in the BOM Item Mapping table to ensure proper operation.
For more information, refer to BOM Item Mapping Table and BOM Mapping Implementation Resources.