You are here:
Using Price Rule Lookup Queries Against Custom Objects
Define a custom object to store data in Salesforce CPQ and then reference this data through lookup queries on your price rules. (Salesforce CPQ Managed Package)
Required Editions
| Available in: Winter ’16 and later |
Use a custom object with your lookup queries to show your lookup data with more detail than you could show through the Lookup Data object.
Marketing wants to ensure that a promotional discount applies to all products of a particular type during a season. Your sales reps also want to offer a promotional code to help sell a new line of products between 04/01/2018 and 05/31/2018. Your sales reps want to apply a promotional discount when they quote a product between 04/1/2018 and 05/31/2018. They also want to enter a promotional code in the quote line editor to apply a discount independent of the promotional discount. You can store your promotional data in a custom object and use a set of lookup queries to reference it. Then use the price rule to apply that data to your quote line’s list price. Here are the steps you complete.
- Create a custom Promotion object with fields that store your promotional data: Start Date, End Date, Promo Code, and Discount (%). Start Date has a value of 4/1/2018, End Date has a value of 5/31/2018, Promo code has a value of Promo1, and Discount has a value of 10%.
- Add a Promo Code text field to your quote. When your price rule is active, your sales reps can enter Promo1 on the quote to receive a 10% discount.
- Create a price rule with the following fields.
- Evaluation Scope: Calculator
- Conditions Met: All
- Lookup Object: Promotion
- Create a price condition so that the price rule fires when your quote’s promo code field doesn’t have a blank value.
- Create your lookup queries. Test whether the quote’s promo code matches the promotion’s
promo code, and whether the quote expires before the promotion begins. Remember that the tested
field refers to the quote field you’re evaluating, and lookup field refers to the Promotion
object field that you’re testing against. Each lookup query should have the quote as the tested
object. After that, set up each query as follows.
Tested Field Operator Lookup Field PromoCode__c equals PromoCode__c SBQQ__ExpirationDate__c greater than Start_Date__c SBQQ__ExpirationDate__c less than End_Date__c - Create your price actions. Your price rule performs these actions when all its lookup
queries are true. The first action sets your source lookup field to find the value of your
quote line’s discount field and sends that value to your promotional discount field. The second
action pulls the promotional discount into a formula to determine your quote line’s final list
price.
This is your first price action.
- Target Object
- Quote Line
- Target Field
- Promotional Discount__c
- Source Lookup Field
- Discount__c
This is your second price action.
- Target Object
- Quote Line
- Target Field
- SBQQ__ListPrice__c
- Formula
- SBQQ__OriginalPrice__c * (1 – Promotional_Discount__c)

