1. Request sandbox access
If you want to try out CodeCPQ more thoroughly, contact us by clicking on the button below to request access to a CodeCPQ sandbox for testing.
Request CodeCPQ sandbox access here
2. Receive login details
After we have reviewed your information, we will contact you and provide you with login information to a CodeCPQ sandbox.
3. Log in
Use the login information to log into your sandbox account. Then, choose the CPQ app.
4. Explore CodeCPQ product configurations
Python code snippets control configuration
A general note at the beginning: The CodeCPQ module for Odoo is a kind of code-based development environment. Products and their configurations can be managed by code in so-called "snippets", i.e., input fields for Python program code, in the backend. You can recognize these snippet input fields by the line numbers. The snippets essentially control the entire CodeCPQ configuration scheme. Do you understand why our module is called CodeCPQ?
Hence, you can quickly create simple configurations with only a minimum of Python experience. The button TEST CPQ FORM allows you to test the CPQ configuration easily during the development process.
Explore CPQ Code Sets
For an easy start, the CPQ app contains sample CPQ schemes, named CPQ Code Sets. For test users, those sample CPQ configurations are read-only, they can only be viewed, not edited or deleted. Explore this configuration to become familiar with the structure and setup of a Code Set.
It is a good idea to edit and play with a CPQ Code Set. The easiest way is to duplicate an existing one as follows:
- Select a Code Set by checking the respetive box in the list of Code Sets.
- Go to the Action menu and and select Duplicate Record.
You can now rename, test and edit the duplicated Code Set, i.e., change its configuration parameters as you like.
The Init Product Object Snippet
In the Init Product Object code snippet in the Build Object tab, you can define both data structure and data for the products to be configured. You can do so yourself as a backend user, for example in your function as a product manager. This is done with the help of a Python object called cpq, whose object-oriented structure you can define yourself. This means you can use the full power of Python object types for your product configuration.
Some of the attributes of the cpq object are important for the functioning of the configuration. You must leave them in the code. You should also not change their notation, otherwise errors could occur.
These are the attributes:
- cpq.quantity
- cpq.image_name
- cpq.price
- cpq.description
The following screenshot shows you the use of some of these attributes:
The Build Input Form Snippet
The Build Input Form code snippet, accessible from the Build Request tab, allows the backend user to control the dynamic input form of the product configuration. For each response cycle, the input mask for the product configuration is generated on the client screen using this code. This input form builder is also programmable via Python code.
There is a built-in function for each control element needed to determine the product. Some of the frequently used ones are:
- display_heading() creates a text as a heading
- display_text() writes a text on the screen
- input_number() lets the user of the configuration enter a numeric value
- input_text() lets the user enter a string
- input_color() lets the user select a color
- input_selection() displays a dropdown menu that lets the user choose from several options
Please refer to our documentation for details on how to use these functions.
The following screenshot shows you the use of some of these functions in the Build Input Form snippet:
5. Explore products
To learn about product data handling in CodeCPQ, switch to the Product Data section. For an easy start, it also contains some records that can only be viewed.
To edit a product record or create a new one, select and duplicate the
record. Then, edit the data in the duplicated record, just as you did with the Code Sets.
6. Test other functionality
Refer to the user documentation for further details on the functions of the CPQ app, and how these can be configured.