Loading

Resolving Fractional Quantity Error in Revenue Cloud Advanced Bundles with Proportional Scaling

Дата публикации: Dec 22, 2025
Описание

When configuring a product bundle in Salesforce Revenue Cloud (Advanced), users encounter the following error message during validation:

"Something went wrong while validating the configured bundle: Parent product '[Product Name]' with quantity [X] and child product '[Child Product Name]' with quantity 1.0 results in a fractional quantity."

This typically happens when a parent product has a quantity greater than 1, and a rule auto-selects a child product. The error is caused by a conflict between the Configuration Model Language (CML) rule behavior and the Quantity Scaling Method (QSM):

1. Rule Behavior: By default, CML require or preference rules auto-add only one (1) instance of the child product.

2. Proportional Scaling: If the child product's QSM is set to Proportional, the system expects the child quantity to scale exactly with the parent.

3. The Conflict: As an example, let's assume that the the parent quantity is 35 and the rule adds only 1 child, the system detects a mismatch. It sees 1 out of a required 35, leading to the "fractional quantity" validation failure.

There are two primary methods to resolve this behavior, depending on the business requirement:

Method 1: Update Configuration (Recommended if strict scaling is not required) Change the child product's Quantity Scaling Method from Proportional to None.

This allows the child product quantity to remain independent of the parent quantity.
Once QSM is set to None, the validation error will no longer trigger when the rule adds a single instance of the product.

Method 2: Update CML Code (Recommended if proportionality must be enforced) Update the CML rule to specifically reference the parent's quantity using the lineQuantity constraint. This ensures the rule adds the correct number of instances to match the parent's scaling.

Revised CML Example: Modify your require statement to include the lineQuantity check:

// Original Rule (Causes Error)
require(Condition, child_product_node, "Error Message");

// Updated Rule (Resolves Error)
require(Condition, child_product_node == lineQuantity, "Error Message");

Note: Ensure that lineQuantity is correctly defined within your CML types to represent this.quantity.

Номер статьи базы знаний

005239052

 
Загрузка
Salesforce Help | Article