Gearset's intelligent data deployment tools show you the connections within your data model, so you can easily select and deploy changes to your org's data along with all the necessary dependencies, such as parent-child relationships and circular references. This makes updating and migrating CPQ (Configure, Price, Quote) records and configuration much easier than using Salesforce's Data Loader. While Gearset already lets you save and share your own custom data deployment templates, we've recently added a default CPQ template to streamline your CPQ deployments, helping you to save time and avoid data deployment headaches.
Salesforce CPQ data and configurations
Salesforce CPQ & Billing is a managed package that you install in your Salesforce org to set pricing, create quotes and configure automated payment processes for complex sales offerings, including recurring subscriptions, product bundles, discount rates, usage-based pricing and much more.
Given the large variety of product, price and billing variables that can go into configuring customer-specific quotes, the Salesforce CPQ & Billing package relies on both data and metadata. Before deploying a change to your CPQ data, it's essential that you make sure the metadata in your source and target orgs are in sync.
Unlike configurations in many other managed packages, CPQ configurations are represented as data rather than metadata. This means that you'll need to use Gearset's data deployment tools to migrate CPQ changes. There are two main use cases for deploying Salesforce datasets. You might want to seed a sandbox with real data from production for testing or, as in the case of CPQ, you may have made changes to config data in a development org, which you now want to promote along your release pipeline.
Data deployments in Gearset
Whether you're seeding a sandbox or promoting changes to config data, you start a data deployment in Gearset by selecting your source and target orgs.
Be aware that, unlike metadata deployments run with Gearset, you can't roll back data deployments. That's because Gearset doesn't keep copies of your data before running the deployment. If you wanted to undo a deployment with a large number of changes to your data, you'd need to have a recent backup copy of the data, which would then allow you to run a quick or full restore.
Once you've selected the source and target for your data deployment, Gearset automatically retrieves the metadata object list for both orgs from the Salesforce Metadata API via a
listMetadata call and shows you the objects:
Before we see how Gearset's CPQ template simplifies your CPQ deployments, it's worth setting out the workflow for data deployments in general. Running a data deployment in Gearset is a matter of completing the following steps:
1. Configure your data deployment
Your first step is to choose the primary objects for your deployment, a choice that will depend on what data you need to deploy. It's essential that the same metadata is present in both your source and target orgs before you can deploy data contained by that metadata. Any custom object in your source will also need to be present in your target before you can deploy records to it. If the object isn't present in both orgs, Gearset won't show it to you in the list of primary objects.
Once you select the object(s) containing the records you want to deploy from the data configuration filter, Gearset checks for other objects that are referenced by fields on your selected object. To do this, it follows the lookup fields to find the dependencies - based either on the default Salesforce ID lookup or an external ID. The referenced fields and their objects are then listed, so you can select which of them to include in the deployment.
It's worth bearing in mind that the lookup process works in one direction only. For example, if a field on
Contact references a field on
Account, the referenced field will only be shown when you select the
Contact object, not when you select
If you're not using Gearset's new CPQ template (see below), you also have the option at this stage to save your deployment configuration as a template or use a previous template saved by another member of your team.
2. Include related objects and specify the deployment methods
Your next step is to select which referenced objects to include in your deployment and specify how you want to match existing records. You can choose to Upsert records (update if a record is already there in the target, or insert it if it's not). Alternatively, if you're just seeding a sandbox, you can also opt to Create the records without getting Gearset to do any matching between records in your source and target.
3. Select your data masking options
When deploying test data, it's a good idea to mask records for security and compliance. If you're deploying config data such as CPQ changes along your release pipeline, you probably won't want to use data masking. But, in other cases, you shouldn't share personally identifiable information (PII) or confidential business data across your orgs unless absolutely necessary. Gearset's data masking gives you an easy way to anonymize your records by replacing the real data with realistic 'dummy' records in the right data format.
4. Check the data deployment plan
Gearset creates a step-by-step data deployment plan based on your choices and presents it to you for final checks. The plan specifies the order and the way in which different data sets will be fetched, filtered and deployed. Here you also have another chance to save your template for future use before deploying the data.
Speeding up your CPQ deployments with a smart template
Without a data deployment tool like Gearset, deploying Salesforce CPQ data is sometimes a real struggle because CPQ records are stored across multiple objects in your org, such as on the
Discount Schedules and
Quote Terms objects. When you're selecting objects on Gearset's Configure data deployment page, you should see objects with the
SBQQ__ namespace. These are the core objects used for CPQ.
If you had to rely on the Salesforce Data Loader to deploy CPQ data, you would not only need to deploy each of these components individually, but you'd then also have to reconnect all the parent and child records. Gearset has always been able to help you here by letting you deploy multiple objects and reconnecting the relevant records for you to preserve the relationships.
Until now, however, you still needed to know the CPQ data model (how the records are organized and related to each other) well enough to select the right objects and fully deploy your desired set of configuration data. Gearset's new CPQ template removes much of this tricky headwork for you.
Although there's a long list of CPQ objects (which you can spot by the
SBQQ__ namespace), the CPQ data model actually comprises several essential components that need to be included in deployments. Gearset's CPQ now does this for you automatically, which is extremely useful because it allows you to focus on the data you're wanting to deploy. This makes it easier for you to filter and retrieve the specific data subset you want to change. To select the CPQ template, simply click at the bottom of the filter for it to appear in the dropdown:
Want to deploy CPQ data and configurations?
Gearset's data deployment tool can be purchased as an add-on for your team. Team owners also need to enable the tool for each team member, using the Data management settings on the Account page - data deployments are disabled by default as a security measure. If you're starting a trial with Gearset, you can test out CPQ deployments for yourself. Use the live chat in the app to reach out to us, and we'll give you access to the data deployment tools straight away. Then let us know how you get on - we'd love to hear your feedback!