How To: Setup a DriveWorks Project as a Custom Product
The DriveWorks CPQ Template can contain Standard, Custom and Special Products within the catalogue.
An existing DriveWorks Project (DriveWorks Configurators) can become a Custom Product that can run inside the DriveWorks CPQ Template. It is easy to turn a normal DriveWorks Project into a Custom Product.
Setting up a DriveWorks Project to be a Custom Product
A DriveWorks Project needs to contain additional features for it to work inside the DriveWorks CPQ Template.
- Form Design
Certain Form Controls are required to calculate Discounts, Quantities and the final Product Price.
Constants are used to pass down and store information in the DriveWorks Project.
Variable are used to calculate the Products cost along with parameters like currency and discounts.
- Specification Properties
Specification Properties are used to pass information back up to the OrderView DriveWorks Project. These are shown in the Child Specification List.
- Specification Macros
Specification Macros are used to add the Product to the Basket and refresh data in the Host Specification.
- Specification Flow
An update needs to be made to the Specification Flow of the Custom Product. This lets CPQ know if the DriveWorks Project is running and how to handle calculations.
Copying Project Data
Step 1. Creating a template Project to copy data from
- Create a new DriveWorks Project.
- Create this Project from the template called CPQ - Custom Product Project.
- Select a Location and Name for the new DriveWorks Project.
- Select Next and the wizard will create the new DriveWorks Project from the template.
Step 2. Copying Form Controls
Copy the following Form Controls from the Form ProductDetails into your DriveWorks Project.
|UnitPrice||Label||Displays the unit price of the product.|
|ProductPrice1||Label||Displays the unit price of the product. If a lower bulk price is used then that will be shown.|
|ProductPrice2||Label||Displays the bulk price of the product. If a lower discounted price is used then that will be shown.|
|FurtherDiscount||Numeric Text Box||Allows a user to enter a discount percentage amount. This will discount the price further.|
|ProductPrice3||Label||Displays the discounted price of the product. If a further discounted price is used then that will be shown.|
|Quantity||Spin Button||Increases the quantity of the product being added to the basket.|
|ProductTotalPrice||Label||Displays the final total price of the product. This includes discounts, quantities and any bulk discounts.|
|AddToBasket||Macro Button||Runs the Specification Macro called AddToBasket. This adds the Project to the Child Specification List and saves the Specification.|
Step 3. Copying Constants
- Go to Define Constants in the new Custom DriveWorks Template Project.
- Copy all of the Constants visible in this area.
- Go to the DriveWorks Project you are adding into CPQ and paste the Constants into that Project.
- You should end up with 8 additional Constants in your DriveWorks Project.
Step 4. Copying Variables
- Go to Define Variable in the new Custom DriveWorks Template Project.
- Copy every Variable in the CPQ Category Folder (Include all Child Variables).
- Go to the DriveWorks Project you are adding into CPQ and paste the Variable into a new Category Folder called CPQ.
- You are adding 72 Variables to this folder.
- Next, you need to set a Variable within your DriveWorks Project.
- Build a rule for the Variable called CustomProductPrice.
- Add in a rule that calculates the price of your Product.
Step 5. Copying Specification Properties
- Go to Specification Properties in the new Custom DriveWorks Template Project.
- Copy every Specification Property in this area.
- Go to the DriveWorks Project you are adding into CPQ and paste the Specification Properties into the same area.
- You are adding 9 Specification Properties to this Project.
Rules will be copied across. These are required.
Step 6. Copying Specification Macros
- Go to Specification Macros in the new Custom DriveWorks Template Project.
- Copy every Specification Macro under the CPQ > Product Macros category.
- Go to the DriveWorks Project you are adding into CPQ and paste the Specification Macros into a CPQ category.
- You are adding 3 Specification Macros to your Project.
Step 7. Modifying Specification Flow
With Specification Flow, you can choose to use the CPQ - Custom Product template Specification Flow or you can modify your existing Specification Flow.
Using the CPQ - Custom Product template:
- In your DriveWorks Project, go to Specification Flow in DriveWorks Administrator.
- If you haven't already, select Customize Specification to modify the default Specification Flow.
- Next, select Load Template, and a dialog will appear.
- Select the template called CPQ - Custom Product and select Finish.
- This will add the CPQ - Custom Product Specification Flow to your Project.
Modifying an existing Specification Flow:
- In every Running State, you need to add a Run Macro Specification Macro Task.
- This Run Macro task needs to run the Specification Macro called IsSpecificationRunning.
- Next you need to run the AddToBasket Specification Macro to Transition the Specification.
- The AddToBasket must be run to store data and Transition the Specification.