Learn how to create and configure picklist extensions (Picklist extensions) in CPQ. Add extended option details, apply filters, and map products and quantities to display enriched picklist data in layouts for more dynamic and efficient configurations.
Before you begin
- Create a single-select or multi-select picklist field for your picklist extension (example: dogBreed).
- Create a single-select picklist field that you want to use to filter your picklist extension (example: dogBarking).
- Create an SFDC Product2 record, such as “Configured Canine”. Make a note of the ID (the format is a 15-20 character token, similar to 01t5f0000004GBwAAM) or Product Code, depending on your environment's ProductIdField
setting. Define a standard pricebook price to the product record.
In steps 1 through 7 of the procedure, we set up the extension data. In the remaining steps, we map the data.
Role required: Admin
Procedure
-
In dogBreed picklist administration, click the Picklist Extension tab, and then click Guided Setup.
-
Click the Additional option info, Filter options, and Product Info tiles, and then click Next.
-
For each option in the picklist, enter labels for the extended information to show.
Examples: size, shedding, exerciseReq, biddability, drive, activities.
-
Filter Options: choose the fields with which you will filter picklist extension.
Example: Barking/Voice
-
Product Info: check Product ID and Product Quantity.
-
Click Next.
-
Review the format, and then click Download CSV Template.
-
Complete the CSV file on your local machine.
(If you’re implementing the dogBreed example: leverage the spreadsheet dogBreed picklist extension data; replace ProductId with token or Product Code from prerequisite step 3; and export to CSV format.)
-
In the picklist field you are editing, drag the CSV file to Import Extension Data, and then click Import.
-
Map the ‘value’ column to ‘Option Reference’.
This instructs the picklist extension to display defined values of the picklist in the leftmost column. The column that is mapped as the option reference must be named 'value'.
-
Map ‘size’ to ‘Extended Info: “size” as API Payload Key’.
The corresponding Available In Layout checkbox should be automatically checked.
-
Perform the same mapping for the ‘shedding’, ‘exerciseReq’, ‘biddability’, ‘drive’, ‘activities’, and ‘dogBarking’ fields.
That is, for the ‘shedding’ imported column, map to ‘Extended Info: “shedding” as API Payload Key’, and so on.
-
Map ‘size_filter’ to the Size [dogSize] field.
This will filter the picklist according to the user’s selection in dogSize.
-
Map ‘shedding_filter’ to the Shedding [dogShedding] field.
-
Map ‘dogBarking_filter’ to the Barking/Voice [dogBarking] field.
-
Map ‘ProductId’ to the Product ID entry with the shopping cart icon, under ‘Set product info’.
This tells the app to reference the ProductId or Product Code in the picklist extension data to add the corresponding product to the Shopping Cart.
-
Map ‘ProductQuantity’ to the Product Quantity entry with the shopping cart icon, under ‘Set product info’.
This tells the app to set the quantity of the line item in the cart with this value from the picklist extension upload data.
-
Click Save Mapping, and then in the upper right corner, click Save.
-
Add the picklist extension field to the layout via the Logik Admin UI or by CSV upload, and deploy.