Balise de commande
La balise de commande HCL Commerce recueille des informations sur la commande d'un client. La balise de commande crée deux jeux de données : l'un pour le contenu du panier d'achat au moment de la commande et l'autre pour les informations récapitulatives de la commande.
- Numéro de référence du produit
- Nom du produit
- Quantité
- Prix de base
- ID client
- ID de commande
- Sous-total
- Catégorie de produit dans le catalogue que le client parcourt actuellement
- Catégorie de produit dans le catalogue principal
- Devise
- Nom du compte (lorsque la transaction est une transaction B2B)
- Nom du contrat (lorsque la transaction est une transaction B2B)
- Identificateur de magasin
- ID de commande
- Sous-total de la commande
- Frais d'expédition associés à la commande
- ID client
- Ville du client
- Etat du client
- Code postal du client
- Devise
- Noms de promotion qui sont appliqués à l'ordre, séparés par le délimiteur '|'
- Valeurs d'ajustement de promotion, séparées par le délimiteur '|'
- Codes de promotion, qui sont séparés par le délimiteur '|'
- Identificateur de magasin
Paramètres
Voici une liste de paramètres requis et facultatifs pour la balise de commande.
Remarque pour IBM Digital Analytics : les paramètres suivants sont pour la balise HCL Commerce <cm:order />. Cette balise génère la balise de données IBM Digital Analytics cmCreateShopAction9Tag et la balise de données cmCreateOrderTag.
- databean
- Utilisez ce paramètre si votre fichier JSP de page de confirmation de commande contient déjà un bean de données de commande. Ce paramètre est une instance remplie de com.ibm.commerce.order.beans.OrderDataBean.
L'utilisation du paramètre
databeanoffre de meilleures performances que le paramètreorderId, car la balise de commande n'a pas besoin d'utiliser d'autres ressources pour générer le bean de données à partir de l'orderId. - orderType
- Utilisez ce paramètre si votre page de confirmation de commande utilise des services Web pour les fonctions d'exécution des commandes. Ce paramètre est une instance remplie de l'objet
com.ibm.commerce.order.facade.datatypes.OrderType.L'utilisation du paramètre
orderTypeoffre de meilleures performances que le paramètreorderId, car la balise de commande n'a pas besoin d'utiliser d'autres ressources pour générer les donnéesorderTypeà partir de l'orderId. - orderId
- Si aucun des deux paramètres précédents ne s'applique, utilisez le paramètre
orderId. Ce paramètre est l'ID de commande de la commande qui s'affiche. La balise de commande crée automatiquement un bean de données de commande pour obtenir les informations dont le système d'analyse externe a besoin. Ce paramètre est ignoré si vous avez utilisé le paramètredatabeanou le paramètreorderType. - useKitItems
- Ce paramètre est facultatif. Définissez ce paramètre sur true pour traiter des éléments dans les kits en tant qu'éléments de commande distincts.
Pour envoyer des données de taxe au système d'analyse externe, utilisez les paramètres supplémentaires suivants :
- includeTaxInUnitPrice
- Paramètre facultatif utilisé pour exclure ou inclure conditionnellement la taxe ainsi que le prix unitaire envoyé au système d'analyse externe. La valeur par défaut est
false. S'il est défini surtrue, le prix unitaire envoyé au système d'analyse externe est la somme du prix unitaire et de la taxe qui est calculée pour le produit particulier. - includeTaxInTotalPrice
- Paramètre facultatif utilisé pour exclure ou inclure conditionnellement la taxe ainsi que le prix total envoyé au système d'analyse externe. La valeur par défaut est
false. S'il est défini surtrue, le prix total envoyé au système d'analyse externe est la somme du prix total et de la taxe qui est calculée pour les totaux de commande. Pour IBM Digital Analytics : si cette valeur est définie surtrue, les frais d'expédition transmis à IBM Digital Analytics dans la balise de donnéescmCreateOrderTagincluent également la taxe relative aux frais de port. Si cette valeur est définie sur false, les frais d'expédition transmis à IBM Digital Analytics ne comprennent pas la taxe relative aux frais de port.
Vous pouvez utiliser l'un des trois paramètres suivants pour envoyer plus d'informations au système d'analyse externe :
- extraparms
- Paramètre facultatif que vous pouvez utiliser pour envoyer des informations supplémentaires qui s'appliquent à toutes les entrées de catalogue dans la commande au système d'analyse externe. Ce paramètre est fourni pour les scénarios dans lesquels vous avez peut-être négocié avec le fournisseur d'analyse externe pour générer un rapport personnalisé qui nécessite des informations supplémentaires.
Remarque pour : utilisez le paramètre
extraparmspour transmettre les attributs d'exploration et/ou les données pour les rapports personnalisés . Voir Transmission de données supplémentaires à IBM Digital Analytics avec le paramètre extraparms.Il existe plusieurs façons de transmettre des valeurs à l'aide du paramètreextraparms:Description Exemple Spécifiez les valeurs explicites comme JavaScript correctement échappé. Pour transmettre plus d'une valeur, séparez les valeurs par une virgule. extraparms="\"value1\", \"value2\""Spécifiez des valeurs explicites sans échapper les valeurs. Pour transmettre plus d'une valeur, séparez les valeurs par une virgule. extraparms="value1, value2"Spécifiez le contenu dynamique en appelant un nom de méthode. Tout paramètre utilisant extraparmset commençant ou se terminant par le symbole $, par exemple,$getMethod$est supposé être un nom de méthode de l'objet qui est transmis à l'aide des paramètresdatabeanouorderType. La seule restriction concernant le nom de la méthode est qu'il ne doit pas prendre d'arguments et que l'objet qui est retourné doit implémenter la méthodetoString().extraparms="$getMethod$" - extraparmsMap
- Paramètre facultatif que vous pouvez utiliser pour envoyer des informations supplémentaires qui s'appliquent à des entrées de catalogue spécifiques dans la commande au système d'analyse externe. Ce paramètre est une alternative au paramètre
extraparmslorsque vous souhaitez joindre différentes valeurs de paramètres supplémentaires à chaque élément de commande dans le panier d'achat au lieu de joindre la même valeur de paramètre supplémentaire à chaque élément du panier d'achat.Remarque pour : utilisez le
extraparmsMapparamètre pour transmettre les attributs d'exploration ou les données pour les rapports personnalisés, ou les deux. Voir Comparaison des paramètres supplémentaires pour les balises IBM Digital Analytics.L'entrée de ce paramètre est un objet de type java.util.Map dans lequel la clé pour chaque entrée de la mappe est l'
orderItemIdLa valeur d'une clé particulière est le paramètre supplémentaire qui est transmis avec l'entrée de catalogue associée à l'élément de commande. La valeur de chaqueorderItemIdest ajoutée à la liste d'arguments pour la sortie de balise d'analyse de cet élément de commande particulier.Voici l'exemple de code pour créer un objet java.util.HashMap à transmettre en tant que valeur pour le paramètre
extraparmsMap:<wcf:getData type="com.ibm.commerce.order.facade.datatypes.OrderType" var="orderForAn" expressionBuilder="findByOrderId" scope="request"> <wcf:param name="accessProfile" value="IBM_Details" /> <wcf:param name="orderId" value="${WCParam.orderId}" /> </wcf:getData> <% java.util.HashMap map = new java.util.HashMap(); com.ibm.commerce.order.facade.datatypes.OrderType ord = (com.ibm.commerce.order.facade.datatypes.OrderType) pageContext.getAttribute ("orderForAn",PageContext.REQUEST_SCOPE); java.util.List orderItemList = ord.getOrderItem(); java.util.Iterator itr = orderItemList.iterator(); int i = 1; while (itr.hasNext()) { com.ibm.commerce.order.facade.datatypes.OrderItemType orderItemObj = (com.ibm.commerce.order.facade.datatypes.OrderItemType) itr.next(); String id = orderItemObj.getOrderItemIdentifier().getUniqueID(); map.put(id, "value" + i+ ".0-_-value" + i+ ".1"); i++; } pageContext.setAttribute("eMap",map); %> - orderExtraparms
- Paramètre facultatif que vous pouvez utiliser pour envoyer des informations supplémentaires qui s'appliquent au résumé de la commande au système d'analyse externe.
Remarque pour : utilisez le
orderExtraparmsparamètre pour transmettre les attributs d'exploration ou les données pour les rapports personnalisés, ou les deux. Voir Transmission de données supplémentaires à IBM Digital Analytics avec le paramètre extraparms.Il existe plusieurs façons de transmettre des valeurs à l'aide du paramètreorderExtraparms:Description Exemple Spécifiez les valeurs explicites comme JavaScript correctement échappé. Pour transmettre plus d'une valeur, séparez les valeurs par une virgule. orderExtraparms="\"value1\", \"value2\""Spécifiez des valeurs explicites sans échapper les valeurs. Pour transmettre plus d'une valeur, séparez les valeurs par une virgule. orderExtraparms="value1, value2"Spécifiez le contenu dynamique en appelant un nom de méthode. Tout paramètre utilisant extraparmset commençant ou se terminant par le symbole $, par exemple,$getMethod$est supposé être un nom de méthode de l'objet qui est transmis à l'aide des paramètresdatabeanouorderType. La seule restriction concernant le nom de la méthode est qu'il ne doit pas prendre d'arguments et que l'objet qui est retourné doit implémenter la méthodetoString().orderExtraparms="$getMethod$"
Versions des balises
HCL Commerce fournit deux versions de la balise de commande :
- Classe d'implémentation de balise de base abstraite : com.ibm.commerce.bi.taglib.OrderBaseTag. Les fournisseurs d'analyse qui souhaitent fournir une balise de commande dans leur bibliothèque de balises JSP d'analyse Web peuvent étendre cette classe de balises de base pour obtenir les données de balise de commande et implémenter leur propre logique pour générer les API de balisage de commande spécifiques au fournisseur.
- Une implémentation par défaut de la balise de commande (
<cm:order />) pour IBM Digital Analytics. Cette implémentation génère automatiquement la balise de données IBM Digital AnalyticscmCreateShopAction9Taget la balise de donnéescmCreateOrderTag.