Définition XML de condition d'achat
La condition d'achat définit ce que doit contenir le chariot du client pour qu'ils se qualifient pour une promotion. Si la commande se qualifie, la condition d'achat définit la récompense applicable. La définition XML de la condition d'achat fait partie du code XML d'exécution de la promotion qui est utilisé par le moteur de promotion pour évaluer les promotions au cours du flux d'achats.
Eléments de haut niveau
La condition d'achat définit les éléments suivants d'une promotion :- Le modèle que doivent suivre les entrées de catalogue du chariot avant que la promotion ne soit appliquée à la commande.
- La récompense reçue par le client lorsque le pattern requis est présent.
Elément PurchaseCondition
Il s'agit d'un des éléments primaires dans le code XML d'exécution de la promotion et il définit la condition d'achat. Cependant, lorsque vous créez une condition d'achat personnalisée, votre objectif est de créer ou de personnaliser des éléments au sein de l'élément PurchaseCondition et non pas l'élément lui-même.
Cet élément comporte un paramètre impl qui devrait presque toujours adopter la valeur par défaut, laquelle se réfère à la classe com.ibm.commerce.marketing.promotion.condition.PurchaseCondition.
L'élément PurchaseCondition contient un élément Pattern et un élément Distribution.
Elément Pattern
Cet élément est l'un des deux éléments primaires dans l'élément Purchase Condition. Il contient les éléments définissant ce que doit contenir le chariot d'un client avant qu'il ne se qualifie pour la promotion. Cet élément ne présente pas d'intérêt notable et sert à différencier les éléments de ceux associés à la récompense.
Cet élément comporte un paramètre impl qui devrait presque toujours adopter la valeur par défaut, laquelle se réfère à la classe com.ibm.commerce.marketing.promotion.condition.Pattern.
Un élément Pattern contient un ou plusieurs éléments Constraint.
Elément Constraint
Constraint est le seul élément dans l'élément Pattern, bien qu'il puisse y figurer à plusieurs reprises. Il contient des éléments spécifiant la liste d'articles constituant une partie du pattern. Les contraintes ne doivent pas comporter de sections croisées. A nouveau, cet élément ne présente guère d'intérêt en lui-même.
Cet élément comporte un paramètre impl qui devrait presque toujours adopter la valeur par défaut, laquelle se réfère à la classe com.ibm.commerce.marketing.promotion.condition.Constraint.
Un élément Constraint contient un élément WeightedRange et un élément FilterChain.
Elément WeightedRange
Cet élément définit l'exigence quantitative sur la contrainte.
Cet élément comporte un paramètre impl qui devrait presque toujours adopter la valeur par défaut, laquelle se réfère à la classe com.ibm.commerce.marketing.promotion.condition.WeightedRange.
<LowerBound>1</LowerBound>
<UpperBound>-1</UpperBound>
<Weight>1</Weight>
Les éléments LowerBound et UpperBound peuvent contenir un nombre positif quelconque ou bien la valeur -1. -1 signifie que la valeur n'est pas bornée. Par exemple, la définition de la borne supérieure à -1 signifie que la plage va de la borne inférieure à l'infini. Elément FilterChain
Cet élément contient un ou plusieurs filtres s'appliquant à la contrainte.
Cet élément comporte un paramètre impl qui devrait presque toujours adopter la valeur par défaut, laquelle se réfère à la classe com.ibm.commerce.marketing.promotion.condition.FilterChain.
<Filter impl="com.ibm.commerce.marketing.promotion.condition.DummyFilter"/>Le filtre applicable est spécifié en définissant le paramètre impl. Vous pouvez consulter la liste des filtres par défaut valides, ainsi que le code XML de la configuration supplémentaire requise, dans la rubrique Exemple : fragments XML de filtre.Elément Distribution
Cet élément est l'un des deux éléments primaires dans l'élément Purchase Condition. Il contient les éléments définissant la récompense accordée au client s'il se qualifie pour la promotion. Cet élément ne présente pas d'intérêt notable et sert à différencier les éléments de ceux associés à l'élément Pattern.
Cet élément comporte un paramètre impl qui devrait presque toujours adopter la valeur par défaut, laquelle se réfère à la classe com.ibm.commerce.marketing.promotion.reward.Distribution.
<Type>Volume</Type>
<Base>Cost</Base>
<Currency>CAD</Currency>
L'élément Type détermine le type de distribution. Les valeurs valides sont Volume et Tiered (Paliers). L'élément Base détermine si la distribution est basée sur la quantité ou le coût. Les valeurs valides sont Quantity (Quantité) et Cost (Coût). L'élément Currency définit la devise dans laquelle les distributions basées coût sont évaluées. Les valeurs valides sont composées des codes ISO des devises prises en charge par le magasin mais devraient généralement correspondre à sa devise par défaut. L'élément Currency est sans objet pour les distributions basées quantité.Un élément Distribution contient également un élément PatternFilter et un ou plusieurs éléments Range (Plage).
Elément PatternFilter
Cet élément détermine le pattern de la récompense.
Cet élément comporte un paramètre impl qui devrait presque toujours adopter la valeur par défaut, laquelle se réfère à la classe com.ibm.commerce.marketing.promotion.condition.DummyFilter.
Tous les patterns concordants n'induisent pas une récompense (par exemple, une combinaison de chemises et pantalons pour un prix supérieur à $120 sera éliminée si la combinaison de chemises et pantalons s'adresse à ceux facturés à $100).
Elément Range
<UpperBound>200</UpperBound>
<LowerBound>100</LowerBound>
Cet élément comporte un paramètre impl qui devrait presque toujours adopter la valeur par défaut, laquelle se réfère à la classe com.ibm.commerce.marketing.promotion.reward.DistributionRange.
L'élément Range contient un élément Reward (Récompense).
Elément Reward
Cet élément comporte un paramètre impl qui devrait presque toujours adopter la valeur par défaut, laquelle se réfère à la classe com.ibm.commerce.marketing.promotion.reward.DefaultReward.
L'élément Reward contient un élément AdjustmentFunction.
Elément AdjustmentFunction
Cet élément comporte un paramètre impl qui devrait presque toujours adopter la valeur par défaut, laquelle se réfère à la classe com.ibm.commerce.marketing.promotion.reward.AdjustmentFunction.
L'élément AdjustmentFunction contient un élément FilterChain et un élément Adjustment.
Elément Adjustment
Cet élément définit l'ajustement à appliquer à la commande du client. Il peut s'agir d'un ajustement du prix d'une entrée du catalogue, d'un ajustement du prix de la commande, d'un cadeau offert ou d'un autre ajustement.
Cet élément comporte un paramètre impl qui correspond à l'ajustement appliqué à la commande. Vous pouvez consulter la liste des ajustements par défaut, ainsi que le code XML de la configuration supplémentaire requise, dans la rubrique Exemple : Rubrique Fragments XML d'ajustement
<PurchaseCondition impl="com.ibm.commerce.marketing.promotion.condition.PurchaseCondition">
<Pattern impl="com.ibm.commerce.marketing.promotion.condition.Pattern">
<Constraint impl="com.ibm.commerce.marketing.promotion.condition.Constraint">
<WeightedRange impl="com.ibm.commerce.marketing.promotion.condition.WeightedRange">
<LowerBound>1</LowerBound>
<UpperBound>-1</UpperBound>
<Weight>1</Weight>
</WeightedRange>
<FilterChain impl="com.ibm.commerce.marketing.promotion.condition.FilterChain">
<Filter impl="com.ibm.commerce.marketing.promotion.condition.DummyFilter"/>
</FilterChain>
</Constraint>
</Pattern>
<Distribution impl="com.ibm.commerce.marketing.promotion.reward.Distribution">
<Type>Volume</Type>
<Base>Cost</Base>
<Currency>CAD</Currency>
<PatternFilter impl="com.ibm.commerce.marketing.promotion.condition.DummyPatternFilter" />
<Range impl="com.ibm.commerce.marketing.promotion.reward.DistributionRange">
<UpperBound>200</UpperBound>
<LowerBound>100</LowerBound>
<Reward impl="com.ibm.commerce.marketing.promotion.reward.DefaultReward">
<AdjustmentFunction impl="com.ibm.commerce.marketing.promotion.reward.AdjustmentFunction">
<FilterChain impl="com.ibm.commerce.marketing.promotion.condition.FilterChain">
<Filter impl="com.ibm.commerce.marketing.promotion.condition.DummyFilter" />
</FilterChain>
<Adjustment impl="com.ibm.commerce.marketing.promotion.reward.FixedAmountOffAdjustment">
<AmountOff>15</AmountOff>
<Currency>CAD</Currency>
<AdjustmentType>wholeOrder</AdjustmentType>
</Adjustment>
</AdjustmentFunction>
</Reward>
</Range>
<Range impl="com.ibm.commerce.marketing.promotion.reward.DistributionRange">
<UpperBound>-1</UpperBound>
<LowerBound>200</LowerBound>
<LowerBoundIncluded>false</LowerBoundIncluded>
<Reward impl="com.ibm.commerce.marketing.promotion.reward.DefaultReward">
<AdjustmentFunction impl="com.ibm.commerce.marketing.promotion.reward.AdjustmentFunction">
<FilterChain impl="com.ibm.commerce.marketing.promotion.condition.FilterChain">
<Filter impl="com.ibm.commerce.marketing.promotion.condition.DummyFilter"/>
</FilterChain>
<Adjustment impl="com.ibm.commerce.marketing.promotion.reward.FixedAmountOffAdjustment">
<AmountOff>45</AmountOff>
<Currency>CAD</Currency>
<AdjustmentType>wholeOrder</AdjustmentType>
</Adjustment>
</AdjustmentFunction>
</Reward>
</Range>
</Distribution>
</PurchaseCondition>