DriveWorks Pro 18: CPQ Custom Item [send feedback...]

CPQ Custom Item

The CPQ Custom Item form template allows a custom product configurator to be added to the DriveWorks CPQ DriveApp.

This allows the necessary Form Controls, Specification Macros and Constants to be added to an existing configurator project.

This guide explains how to use the Custom Item form template to enable a configurator project to be added to DriveWorks CPQ.

Add the CPQ Custom Item Form Template

  1. Open the configurator project in DriveWorks Administrator (or create a new blank project if starting from scratch).
    As the Custom Item Template is a Form Template, a Project must exist before using it.

A new user form must be added to the configurator project. so all the necessary controls and data

This will inject the necessary controls and data to integrate correctly with the DriveWorks CPQ DriveApp.

  1. Navigate to the Form Navigation stage of DriveWorks Administrator.
  2. Select the drop down under Add Form and select Add from template.

  3. Select the CPQ Custom Item template.
  4. Enter CPQ for the name of the Form.
  5. Click OK to add the new Form.

Update the Variable

The last thing to do before setup is complete is to update the value of a Variable.

This Variable is used to determine the Transition that runs when the Add\Update a Custom Item is selected.

  1. Navigate to the Define Variables section of DriveWorks Administrator.
  2. Find the Variable called TransitionToRun inside the DriveAppData Category.

The rule for this property needs to result in the name of a Transition you want to run in the Specification Flow when a user has completed specifying the Project.

  1. Update the TransitionToRun Variable to the required Transition Name in the Specification Flow. (If using the CPQ Custom Item Flow template leave the rule as "Complete")

ItemPricing Form

This Form contains various Form Controls that can be used to display the Price of the Custom Item to a user.

These controls can be adopted or replaced with existing controls in the configurator project.

Please be aware of the following before doing this:

  • The ‘AddToOrder’ Macro button is what adds the Custom Item to an order.

    When replacing this button with a button in your existing Project, the new button must run the same Macro as the AddToOrder button would have done.

    Copy and paste the rule in the Macro Name Property into the existing Macro Button on the Form if this is required.

  • The Discount and Quantity controls are linked to Variables that Calculate a total price for the Item.

    The total price is passed into the CPQ DriveApp Order. If these controls are not required in your Configurator, hide the them using the Visibility Property.

    This will prevent any errors with the pricing.

  • There is a Label on the Form (LockedWarning) that will be displayed if more than one user edits the same Line Item on a CPQ Order.

    It is recommended that this Label remains to inform users that the Configurator is Locked.

We recommend that the following Rule is added to disable Form Controls in the Project when it is locked.

DWConstantMode="Add" OR DWConstantLockStatus = DWCurrentUserDisplayName

Locking a Project’s Controls using the rule above prevents multiple people editing the same Line Item at the same time (therefore overwriting each other’s changes). See the Enabled Property of the Quantity Control.


A number of variables are created with the Form Template. Most of these are needed for linking the configurator with the CPQ DriveApp Database.

The only Variable required to be changed is the Base Custom Price Variable.

This can be found in the DriveAppData>Pricing Category.

This Variable should result in the price of the Custom Item before the exchange rate has been applied.

The exchange rate is passed down from the Order and applied to the Total Price.

If the Configurator is to be linked with the Appearances set in the DriveApp Settings (Fonts etc) use the Variables in the DriveAppStandards folder.

This folder contains Variables for Font Size and Color, Date Format and Color Scheme.

Specification Flow

A customized Specification Flow is compatible with the Custom Item template.

However, if the Custom Item is to be edited from the Orders ensure there is a Transition named ‘Edit’ on the State which the Project is transitioned into after specifying.

An example of a Specification Flow that could be used alongside the DriveWorks CPQ DriveApp can be found here: CPQ-Custom Item Specification Flow.

Adding the new Project to the CPQ DriveApp

The first step is to register the Project as a Configurator inside CPQ.

  1. Open CPQ Settings.
  2. Register the Project created in the above section using the 'Project to register' combo box under General Settings. Check the box for 'Is Project a Custom Item Project'
  3. The configurator project should now be available when adding a new Item.

The next step is to add a new Custom Item:

  1. From the main CPQ Dashboard go to Catalog Administrator > Items.
  2. Add a new Item, from the Item Type drop down, select Custom

  3. From the DriveWorks Project to Run drop down, select the new Project.
  4. Fill in any other information about the Item that is required and save the new Item.
  5. OPTIONAL – Edit the Custom Item, navigate to the Files Tab, and add a Catalog image for the Item

The final Step is to add the Custom Item to the Catalog.

Follow the steps in the CPQ Quick Start Guide to set up the Default Initial Category for the Catalog.

  1. From the main CPQ Dashboard go to Catalog Administrator > Catalog Categories
  2. Edit an existing Category
  3. Navigate to the Content Tab
  4. Select a row from the table at the position for the new custom Item to be in the Category.
  5. Click Add\Edit
  6. From the Type drop down, select Custom Item
  7. From the Item drop down, select the name of the Item added in the previous section.
  8. Save the new Category Item.

The new Custom Item will now be available to add as a Line Item to a CPQ Order.

Table of Contents