Exemple : Remises

Cet exemple montre comment implémenter une remise à l'aide de la structure de calcul. Vous pouvez également implémenter des remises à l'aide d'HCL Commerce Accelerator.

Exemple de description

Votre magasin veut offrir une remise sur la catégorie des produits Livres pour une durée limitée. La période va de StartDate à EndDate. La remise offre aux clients une remise de 15,00 sur leurs commandes lorsque la valeur avant application des taxes sur les produits de la catégorie Livres est de 50,00 ou plus.

La devise de la commande est la devise locale du pays ou de la région où se trouve votre magasin.

La remise n'affecte aucun calcul de taxe. Les taxes sont calculées à l'aide des totaux de la commande avant la remise. Cet exemple ne couvre pas la mise en œuvre de ces calculs de taxes.

Tous les clients du magasin sont éligibles pour cette remise.

Mise en œuvre d'exemples de remises

Pour utiliser la structure de calcul pour calculer les frais de port pour cet exemple, procédez comme suit :

  1. Définissez un code de calcul.
  2. Définissez une règle de calcul.
  3. Définissez une échelle de calcul.
  4. Définissez des fourchettes de calcul.
  5. Définissez les résultats de recherche pour les fourchettes de calcul.
  6. Associez les fourchettes de calcul aux règles de calcul.
  7. Rattachez le code de calcul à l'entrée de catalogue de la catégorie de produit Livres.

Important : les identificateurs de texte sont utilisés dans les sections suivantes pour faciliter l'affichage des relations entre les composants.

Les identificateurs de texte ne sont souvent pas valides dans la base de données HCL Commerce. Vous devez convertir les identificateurs de texte en entiers ou autoriser HCL Commerce à générer les identificateurs pour vous.

Définition des codes de calcul de remise

Un code de calcul doit être défini dans cet exemple, car la remise dans cet exemple est indépendante des autres remises que le magasin pourrait offrir. En outre, la remise ne s'applique qu'à une seule catégorie de produits. La méthode de calcul CalculationCodeQualify qui doit être spécifiée dans le cadre d'un code de calcul n'a pas besoin d'être invoquée dans cet exemple, de sorte que l'indicateur de restriction n'est pas défini.

Voici les propriétés clés requises pour le code de calcul que vous devez définir :

Propriété Valeur Description de la valeur
Méthode de regroupement 0 Le code de calcul sera rattaché à un seul groupe de catalogues (Livres). Le regroupement des produits est utile lorsque le code de calcul sera rattaché à plusieurs produits parent.
Indicateur de qualification 0 La méthode de calcul CalculationCodeQualify spécifiée pour ce code de calcul ne sera pas invoquée
Identification de chaîne Promotion remise livre Il s'agit d'une chaîne de caractères qui identifie de façon unique ce code de calcul, compte tenu d'une utilisation de calcul particulière et d'un magasin ou groupe de magasins.
Publié 1 Le code de calcul est actif
Date de début StartDate Ce code de calcul commence à être actif à la StartDate
Date de fin EndDate Ce code de calcul cesse d'être actif à la EndDate
ID de l'utilisation de calcul -1 Il s'agit de l'ID pour l'utilisation de calcul de remise
Méthode de calcul CalculationCodeQualify -2 Il s'agit de l'ID pour CalculationCodeQualifyCmd
Méthode de calcul CalculationCodeApply -4 Il s'agit de l'ID pour DiscountCalculationCodeApplyCmd
Méthode de calcul CalculationCodeCalculate -3 Il s'agit de l'ID pour CalculationCodeCalculateCmd

Définition des règles de calcul de remise

Vous avez besoin d'une règle de calcul pour calculer cette remise.

Voici les propriétés clés de la règle de calcul que vous devez définir :

Propriété Valeur Description de la valeur
ID du code de calcul BookDiscCode Il s'agit du code de calcul de remise qui a été défini précédemment
Numéro d'identification 1 Il s'agit d'un numéro qui, avec l'ID du code de calcul, identifie de façon unique cette règle de calcul.
Indicateur de qualification 0 La méthode de calcul CalculationRuleQualify que vous spécifiez pour cette règle de calcul ne sera pas invoquée.
Combinaison 2 Les résultats de cette règle de calcul peuvent être combinés avec d'autres règles de calcul qui ont une propriété de combinaison 0 ou 2. Dans cet exemple, la valeur de la propriété de combinaison n'a aucun effet, car une seule règle de calcul est définie pour ce code de calcul
Méthode de calcul CalculRuleQualifier -6 ID de la méthode de calcul pour DiscountCalculationRuleQualifyCmd
Méthode de calcul CalculationRuleCalculate -7 ID de la méthode de calcul pour CalculationRuleCalculateCmd

Définition des échelles de calcul de remise

La remise pour cet exemple peut être exprimée sous forme d'une échelle de calcul, comme le montre ce tableau :

Valeur des OrderItems Livre Montant de remise fixe
moins de 50,00 0.00
50,00 ou plus 15,00

Ce tableau fournit des conseils sur la façon dont les échelles de calcul et les fourchettes de calcul seront mises en œuvre :

  • La colonne "Valeur des OrderItems Livre" indique que notre méthode de calcul CalculationScaleLookup utilisera la somme des prix de tous les OrderItems Livre.
  • La colonne "Montant de remise fixe" indique que notre méthode de calcul CalculationRange renverra un montant fixe.
  • Il y a deux fourchettes de calcul dans cette échelle de calcul ("moins de 50,00" et "50,00 ou plus").
  • Il y a deux résultats de recherche pour cette échelle de calcul ("0,00" et "15,00").

L'échelle de calcul doit être associée à une devise puisque le numéro de recherche est un montant monétaire. La devise ne sera pas indiquée dans cet exemple, mais elle est requise lors de l'implémentation de cet exemple dans WebSphere Commerce.

Vous devez définir une échelle pour chaque devise prise en charge par votre magasin. Dans cet exemple, le magasin ne prend en charge qu'une seule devise, nous ne définirons donc qu'une seule échelle.

Les tableaux suivants indiquent les valeurs clés des échelles de calcul :

Propriété Valeur Description de la valeur
Utilisation du calcul -1 Utilisation de calcul de remise
Identification de chaîne Promotion remise livre Il s'agit d'une chaîne de caractères qui identifie de façon unique cette échelle de calcul, compte tenu d'une utilisation de calcul particulière et d'un magasin ou groupe de magasins.
Méthode de calcul CalculationScaleLookup -10 NonDiscountedPriceCalculationScaleLookupCmd (le numéro de recherche est la somme des prix hors remise des OrderItems Livre)

Définition des fourchettes de calcul des remises

La remise présente deux fourchettes de calcul pour l'échelle de calcul. Les fourchettes de calcul sont les suivantes :

  • valeur des OrderItems Livre inférieure à 50,00
  • valeur des OrderItems Livre 50,00 ou plus

Les fourchettes de calcul ne sont pas cumulatives.

Voici les propriétés clés que vous devez définir pour chaque fourchette de calcul :

Tableau 1. Propriétés de la fourchette de calcul Book0to50Range
Propriété Valeur Description de la valeur
ID de l'échelle de calcul BookDiscountScale Échelle de calcul définie précédemment
Valeur de départ de la fourchette de calcul 0.00 La fourchette de calcul s'applique lorsque la somme des prix hors remise des OrderItems est supérieure ou égale à 0,00
Indicateur de fourchette de calcul cumulative 0 La fourchette de calcul n'est pas cumulative.
Méthode de calcule CalculationRange -13 FixedAmountCalculationRangeCmd (le résultat de recherche est traité comme un montant monétaire fixe)
Propriété Valeur Description de la valeur
ID de l'échelle de calcul BookDiscountScale Échelle de calcul définie précédemment
Valeur de départ de la fourchette de calcul 50.00 La fourchette de calcul s'applique lorsque la somme des prix hors remise des OrderItems est supérieure ou égale à 50,00
Indicateur de fourchette de calcul cumulative 0 La fourchette de calcul n'est pas cumulative
Méthode de calcule CalculationRange -13 FixedAmountCalculationRangeCmd (le résultat de recherche est traité comme un montant monétaire fixe)

Définition des résultats de recherche pour les fourchettes de calcul des remises

Chaque fourchette de calcul nécessite un ensemble de résultats de recherche. Pour cet exemple, les résultats de recherche sont des montants monétaires fixes. Chaque fourchette de calcul n'a qu'une seule valeur associée à celle-ci, de sorte qu'un seul résultat de recherche est nécessaire pour chaque fourchette. Chaque résultat de recherche doit être associé à la devise locale du pays ou de la région pour le magasin parce que c'est la devise des frais de port.

Les valeurs du résultat de recherche sont ajoutées au prix et aux autres montants monétaires existants associés à un article de la commande. Pour une remise, la valeur de résultat de recherche est un nombre négatif.

Les tableaux suivants affichent les propriétés clés que vous devez définir pour chaque résultat de recherche de fourchette de calcul. La devise a été omise ici, mais elle doit être incluse dans une mise en œuvre réelle.

Propriété Valeur Description de la valeur
Résultat de recherche 0.00 Pas de remise
ID de la fourchette de calcul Book0to50Range Identificateur de la plage de calcul à laquelle appartient ce résultat de recherche
Propriété Valeur Description de la valeur
Résultat de recherche -15,00 remise de 15,00
ID de la fourchette de calcul Book50+Range Identificateur de la fourchette de calcul à laquelle appartient ce résultat de recherche

Rappel :

Ces propriétés de résultats de recherche de la fourchette de calcul n'ont pas la devise pour les résultats de recherche. La devise des résultats de recherche doit être définie. Pour cet exemple, elle doit correspondre à la devise de l'échelle de calcul.

Associer des échelles de calcul de remise aux règles de calcul de remise

L'échelle de calcul définie doit être associée à la règle de calcul définie dans la table de base de données CRULESCALE. La relation entre l'échelle de calcul définie et la règle de calcul définie est indiquée dans le tableau suivant :

Echelles de calcul Règles de calcul
BookDiscountScale BookDiscRule

Rattachement du code de calcul de remise

Pour utiliser le nouveau code de calcul de remise que vous avez défini précédemment, vous devez rattacher le code de calcul aux articles de la commande. Le code de calcul sera indirectement rattaché, car il s'applique à tous les articles résultant de l'achat d'un produit par un client dans le catalogue du magasin, et non à un seul article.

Le code de calcul de remise ne s'applique qu'aux livres, c'est pourquoi nous allons le rattacher au groupe de catalogues pour cette catégorie de produit. Nous rattacherons indirectement le code de calcul en créant une entrée dans la table de base de données CATGPCALCD.

Renseignez la table de base de données CATGPCALCD avec les informations suivantes :

ID d'entrepôt ID du groupe de catalogues Code de calcul
Royaume-Uni BookCategory BookDiscCalcCode