If you are planning your Trade Promotions on Products, the system generates condition record for each of the product.
Using condition optimization technique, you can reduce the amount of conditions generated when you release your Trade Promotions. This helps you to improve the performance of promotional steps that deals with condition generation logic.
The optimization might benefit your short term promotions with higher number of products, but has no effect on Long term promotions or Promotion based on Product Categories, Product Groups or Target Groups.
If the condition optimization is switched on, the system behaves as per following:
- Retrieves all the products on the promotion and checks if all the products have the same spend value
- Determines the corresponding Product Group or Product Category
- Checks if a condition record at the group or category level can be created. [Note IF you have condition tables at both Product Category and Product Group the system gives preference to the Product Group]
- Creates condition record at a product category/group level [Note: Condition
- Optimization still applies even if a few products from the same category or group are added in the promotion]
Note: for more details on the underlying logic refer method DETERMINE_PRODUCTS_FOR_GEN of class CL_CRM_MKTGS_COND_MAINT_PR.
You have a Product Category ‘Hot’ that contains two products (say CPT_F_014 & CPT_F_015)
Now you create a Trade Promotion that includes products CPT_F_014 and CPT_F_015 and have same spend value (say $0.84 per case).
As the system knows that every product in the category has the same spend value so it generates a condition records at the Product Category/Product Group instead of generating separate one for each Product.
This happens only if the Condition Optimization is switched on. The subsequent section describes how you can switch on the condition optimization in your SAP CRM system.
2. How to enable Condition Optimization
Condition optimization is only invoked if the corresponding access sequence has the Exclusive indicator set (refer screenshot below for access sequence ZSPR)
For optimization to occur, the Disable Optimization flag must be unchecked (IMG path Customer Relationship Management -> Trade Promotion Management -> Trade Promotions -> Condition Maintenance -> Define Condition Generation). Also, refer screenshot below
You create a Trade Promotion with Product Planning Basis as ‘Product’ (as depicted in the screenshot below)
Now you add 2 Products to the Promotion that comes from the same Product Category (Hot) (as depicted below)
Now you add the same spend to both the products (say $0.84) and release your promotion.
AS the off invoice discount of $0.84 applied to both products the system generated a single condition record at Product Category (as depicted in the screenshot below)
5. Condition optimization only works if Campaign determination is switched on
Condition optimization only reduces the number of Pricing/Rebate condition records generated. It has no impact on the Campaign Determination records generated which will still be at product level. This is to ensure that the corresponding promotional discount is applicable to only the products added to the Trade Promotion.
For example, if the Product Category “Hot” has 2 products – CPT_F_014, and CPT_F_015 and if you create a promotion with both products CPT_F_014 and CPT_F_015 and the same spend value, the system generates separate campaign determination records for CPT_F_014 and CPT_F_015 (as depicted below).
However, with condition optimization switched on only one pricing record is generated for category “Hot” (as outlined below).
Now if you add a new product (e.g. CPT_F_016) to category “Hot” you won’t get a discount on this product unless you add CPT_F_016 as well to your promotion.
For long term promotions since there are no campaign determination, the condition optimization does not apply.