Salesforce-CPQ-Administrator Practice Test
Updated On 18-Sep-2025
199 Questions
A subscription product that was newly created fails to display In the Product Selection screen when users search for it.
What are three possible reasons for this behavior?
(Choose 3 answers)
A. The Active checkbox is FALSE on the Product record.
B. The Product is missing a related Cost record.
C. The Optional checkbox is TRUE on the Product record.
D. The Product is missing a Pricebook Entry for the Quote’s Pricebook,
E. The Component checkbox is TRUE on the Product record.
D. The Product is missing a Pricebook Entry for the Quote’s Pricebook,
E. The Component checkbox is TRUE on the Product record.
Explanation:
Let’s examine each option:
✅ A. The Active checkbox is FALSE on the Product record.
→ Correct
Only products marked as Active appear in the Product Selection screen.
If Active = FALSE → the product is hidden from users when searching.
❌ B. The Product is missing a related Cost record.
→ Incorrect
Cost records (from Cost object) are used for margin calculations or cost-plus pricing.
Missing a cost does not prevent product visibility in product selection.
❌ C. The Optional checkbox is TRUE on the Product record.
→ Incorrect
The “Optional” flag affects how the product displays inside a bundle (i.e. as an optional feature).
It does not hide standalone products from the product selection screen.
✅ D. The Product is missing a Pricebook Entry for the Quote’s Pricebook.
→ Correct
CPQ loads products from the Pricebook tied to the Quote.
If the product has no pricebook entry for that pricebook, it won’t appear in the search.
✅ E. The Component checkbox is TRUE on the Product record.
→ Correct
If Component = TRUE, the product is considered a bundle component.
Components are not visible in standalone product searches because they’re only selected through bundles.
Universal Containers (UC) sells to partners in multiple regions. Each region has a unique price multiplier that should be applied to the pricebook price of the product. A custom object has been created to maintain the regional multipliers for each region. Any discounts should be applied after the regional multiplier has been applied. An admin needs to create a Lookup Price Rule. Which field should the admin configure the price action to update?
A. The special price
B. The partner price
C. The customer price
D. The list price
Explanation:
Lookup Price Rule Purpose:
Lookup Price Rules are used to modify prices before any discounts are applied.
Since the regional multiplier should be applied before discounts, the price action should update a field that influences the final calculated price but does not override the base List Price.
Why "Special Price"?
Special Price is designed to temporarily adjust the price (e.g., promotions, regional adjustments) before discounts are applied.
The regional multiplier should adjust the price before any further discounts, making Special Price the correct target.
Why Not Other Options?
B. Partner Price & C. Customer Price: These are typically used for final customer/partner pricing (after all adjustments), not intermediate steps.
D. List Price: This is the base price and should not be modified by regional multipliers (as it would affect all pricing, not just region-specific adjustments).
Correct Configuration:
Lookup Price Rule should update "Special Price" with the List Price × Regional Multiplier.
Discounts will then apply on top of the adjusted Special Price.
Given a customer's tiered pricing model, an admin wants to allow users to define Discount Tiers and use those values as the Regular Price instead of an Amount deducted from the List Price. How should the admin configure the Discount Schedule to meet this requirement?
A. Set the Discount Unit to Amount, choose All from the Override Behavior picklist, and then select the Use Price for Amount checkbox.
B. Set the Discount Unit to Percent, set the Aggregation Scope to Quote, choose Current Tier from the Override Behavior picklist, and then select the Use Price for Amount checkbox.
C. Set the Discount Unit to Amount, create a custom Override_Amount, _c field on the Edit Tiers page, select the User Defined checkbox, and then choose All from the Override Behavior picklist.
D. Set the Discount Unit to Percent, set the Aggregation Scope to Quote, choose Current Tier from the Override Behavior picklist, and then select the User Defined checkbox.
Explanation:
In Salesforce CPQ, Discount Schedules can be used either to apply a discount as:
a percentage off the list price, or
a specific price (amount) that replaces the list price for each quantity tier.
When the question states:
“allow users to define Discount Tiers and use those values as the Regular Price instead of an Amount deducted from the List Price.”
…it means the customer wants the price in each tier to be treated as the regular price, not a discount off the list price.
This functionality is achieved via the Use Price for Amount checkbox in the Discount Schedule. When you:
Set Discount Unit = Amount
Enable Use Price for Amount
…it tells CPQ:
“Treat my tier values as the final price, not a discount amount.”
Choosing Override Behavior = All ensures that the defined tiers replace the price completely.
Hence, Option A is correct.
Why other options are incorrect
B: Percent discounts do not allow you to define regular prices directly; they only reduce the price by a percentage.
C: There’s no standard field called Override_Amount__c on tiers. Also, creating a custom field isn’t required for this use case.
D: Again, percent discounts cannot define fixed regular prices, and the User Defined option relates to allowing sales reps to enter tier thresholds, not the price.
Universal Containers (UC) has a requirement to identify any quotes where a sales user has applied a discount to any options within a bundle.
The admin created a price rule c their Is Discounted c custom quote field to IRUE. Conditions Met = All.
Which two approaches must the admin create to ensure the price rule meets business requirements?
(Choose 2 answers)
A. A Price Condition Tested Formula of SBQQ. RequiredBy 1.SBQQ. Bundled = TRUE
B. A Price Condition where the Tested Variable must cqual 0. The Summary Variable should have these values: Aggregate Function — Max Target Object — Quote Line Aggregate Field — SBQQ Discount c
C. A Price Condition with: Object = Quote Line Ficld = SBQQ Discount c Operator = Greater Than Filter Type = Value Filter Value = 0
D. A Price Condition with: Object — Quote Line Field — SBQQ ProductOption ¢c Operator — Not Equals Filter Type — Value Filter Value — (Null)
D. A Price Condition with: Object — Quote Line Field — SBQQ ProductOption ¢c Operator — Not Equals Filter Type — Value Filter Value — (Null)
Explanation:
The Business Requirement
UC wants to detect any discount applied on options in bundles. If any option is discounted, mark a custom field on the Quote (Is_Discounted__c) = TRUE.
The logic to achieve this:
1. Identify only the options inside bundles.
2. Check whether any of those lines have a discount greater than 0.
So, the price rule should target the Quote object, use a Summary Variable to scan Quote Lines, and apply Price Conditions on the summary variable to detect a discount.
✅ B. A Price Condition where the Tested Variable must equal 0. The Summary Variable should have these values: Aggregate Function — Max Target Object — Quote Line Aggregate Field — SBQQ__Discount__c
This is correct.
You need a Summary Variable on Discount across Quote Lines. You’d set it up as:
- Aggregate Function = MAX
- Aggregate Field = SBQQ__Discount__c
- Target Object = Quote Line
If any line has a discount > 0, the MAX value is greater than zero. In the Price Condition, you’d check:
Tested Variable = Summary Variable
Operator = Greater Than
Filter Type = Value
Filter Value = 0
This detects if any quote line is discounted.
✅ D. A Price Condition with: Object — Quote Line Field — SBQQ__ProductOption__c Operator — Not Equals Filter Type — Value Filter Value — (Null)
This is also correct.
SBQQ__ProductOption__c is populated on option lines (child products in bundles). If SBQQ__ProductOption__c is NOT null, it’s an option. So, this condition limits the summary variable only to options. This ensures the summary variable considers only bundle options, not the parent bundles themselves.
Why not the other options?
A. A Price Condition Tested Formula of SBQQ__RequiredBy__r.SBQQ__Bundled__c = TRUE
This is incorrect. The RequiredBy relationship points to the parent product option. However, SBQQ__Bundled__c doesn’t exist in that way. This condition would not reliably filter just option lines. Instead, SBQQ__ProductOption__c is the reliable indicator for identifying options.
C. A Price Condition with: Object = Quote Line Field = SBQQ__Discount__c Operator = Greater Than Filter Type = Value Filter Value = 0
This is incorrect on its own. This condition only tests individual quote lines for discount. It’s not appropriate for a Price Rule on the Quote level. Without summarizing across lines, it cannot flag the Quote itself if any option is discounted.
Hence, B and D are the correct combination.
✅ Recommended Setup
You’d configure:
- Summary Variable:
- Aggregate Function = MAX
- Aggregate Field = SBQQ__Discount__c
- Target Object = Quote Line
- Filter = SBQQ__ProductOption__c ≠ NULL
- Price Condition on Summary Variable:
- Tested Variable = [Summary Variable]
- Operator = Greater Than
- Filter Value = 0
- Price Action:
- Target = Quote.Is_Discounted__c
- Value = TRUE
That perfectly meets UC’s requirement.
Universal Containers has four Price Rules with different Calculator Evaluation Events and Evaluation Orders. Which rule will evaluate first?
A. Rule D with Evaluation Orcer of 5, and Calculator Evaluation Event of On Calculate
B. Rule C with Evaluation Order of 20, and Calculator Evaluation Event of Before Calculate
C. Rule A with Evaluation Order of 10, and Calculator Evaluation Event of Before Calculate
D. Rule B with Evaluation Order of 20, and Calculator Evaluation Event of On Initialization
Explanation:
1. Evaluation Priority Rules:
- Price Rules evaluate first by Calculator Evaluation Event in this order:
On Initialization → Before Calculate → On Calculate → After Calculate
- Within the same event phase, lower Evaluation Order numbers run first
2. Why Rule B Runs First:
- On Initialization phase executes before all other phases
- Evaluation Order 20 doesn't matter here because no other rules are in this phase
- Rule B is the only one in the earliest phase
Why Other Options Are Wrong:
- A (On Calculate): Runs much later in the process
- C (Before Calculate): Runs after On Initialization phase
- A (Before Calculate, Order 10): Would run before Rule C but still after On Initialization
Key Point: Always check the Calculator Evaluation Event first - earlier phases always win regardless of Evaluation Order.
Salesforce-CPQ-Administrator Exam Questions - Home |
Page 2 out of 40 Pages |