The Qualifier class contains the following properties:

The following Qualifier class properties determine the objects that the evaluateQualifier() method can use to evaluate the qualifier element of a PMDL rule. (For more information, see Replacing the Way a PMDL Rule Is Evaluated.)

Note that if you use Oracle Commerce Merchandising, business users can override these filters for individual promotions (see the Merchandising Guide for Business Users for instructions.)

  • filterForQualifierNegativePrices: Determines whether items with negative prices can act as qualifiers. If this property is set to true (the default value), negative prices cannot act as qualifiers.

  • filterForQualifierZeroPrices: Determines whether items with zero prices can act as qualifiers. If this property is set to true (the default value), zero prices cannot act as qualifiers.

  • filterForQualifierDiscountedByCurrentDiscountId: Determines whether items discounted by the current discount can act as qualifiers. If this property is set to true (the default value), items discounted by the current discount cannot act as qualifiers.

  • filterForQualifierDiscountedByAnyDiscountId: Determines whether items discounted by any discount can act as qualifiers. If this property is set to true (the default value), it masks the filterForQualifierDiscountedByCurrentDiscountId property.

    The following example demonstrates how the filterForQualifierDiscountedByAnyDiscountId works. In this example, the following three promotions are being applied to an order:

    • Promotion #1: Buy 1 orange, get 1 apple for $1

    • Promotion #2: Buy 1 apple, get 1 banana for $1

    • Promotion #3: Buy 1 banana, get 1 plum for $1

    The order in this example is for one orange, one apple, one banana, and one plum. The value of the filterQualifierDiscountedByAnyDiscountId changes the way the promotions are applied in the following ways:

    • If filterQualifierDiscountedByAnyDiscountId is false, then the orange is list price, discounting the apple, banana and plum to $1 each.

    • If filterQualifierDiscountedByAnyDiscountId is true, then the orange is list price, discounting the apple to $1, and the banana is list price (since the apple was discounted), discounting the plum to $1.

  • filterForQualifierOnSale: Indicates whether items that were priced with a sale price should be allowed to act as qualifiers. This property is set to false by default.

  • filterForQualifierActedAsQualifier: Filters items that have already acted as qualifiers to be allowed to again act as qualifiers. This property is set to true by default. This filter is used only on “For Next” type promotions.

The following Qualifier class properties determine the items that the evaluateTarget() method can use to evaluate the target element of a PMDL rule. (For more information, see Replacing the Way a PMDL Rule Is Evaluated.)

  • filterForTargetNegativePrices: Determines whether items with negative prices can receive the discount. The default value is true.

  • filterForTargetZeroPrices: Determines whether items with zero prices can receive the discount. The default value is true.

  • filterForTargetDiscountedByCurrentDiscountId: Determines whether items that have been discounted by the current discount can receive the discount again. The default value is true.

  • filterForTargetDiscountedByAnyDiscountId: Determines whether items that have been discounted by any discount can receive the discount again. The default value is true.

  • filterForTargetActedAsQualifierForAnyDiscount: Determines whether items that have acted as a qualifier for any discount can receive the current discount. The default value is true.

  • filterForTargetOnSale: Indicates whether items that were priced with a sale price should be allowed to receive the current discount. The default value is false.

  • filterForTargetPriceLessThanOrEqualToPromotionPrice: Determines whether items with prices that are already less than the price that would be granted by a “fixed price” promotion should receive the promotion. The default value is true.

You can access all of these properties individually. You can also access them through the Qualifier.getGlobalFilters() method, which returns a Map of all of the filter settings currently in use, including overrides made through Merchandising.


Copyright © 1997, 2016 Oracle and/or its affiliates. All rights reserved. Legal Notices