Comparaison des paramètres supplémentaires pour les balises IBM Digital Analytics

La balise de commande HCL Commerce (<cm:order />) et la balise de panier d'achat (<cm:cart />) prennent en charge plusieurs paramètres que vous pouvez utiliser pour transmettre des données supplémentaires à IBM Digital Analytics. Ces paramètres sont extraparms, extraparmsMap et orderExtraparms (orderExtraparms est applicable uniquement à la balise de commande). Il est important de comprendre quel paramètre choisir afin d'obtenir les résultats que vous attendez dans les balises de données IBM Digital Analytics générées.

Le tableau suivant résume à quel moment utiliser chaque paramètre :
Paramètre Utilisation
extraparms Utilisez lorsque vous souhaitez ajouter les mêmes valeurs à toutes les entrées de catalogue dans la commande.
  • Pour la balise <cm:order />, utilisez ce paramètre pour transmettre des valeurs à IBM Digital Analytics cmCreateShopAction9Tag.
  • Pour la balise <cm:cart />, utilisez ce paramètre pour transmettre des valeurs à IBM Digital Analytics cmCreateShopAction5Tag.
extraparmsMap Utilisez lorsque vous souhaitez ajouter des valeurs différentes à des entrées de catalogue spécifiques dans la commande, telles que définies dans une mappe de hachage. Ce paramètre est une alternative au paramètre extraparms lorsque vous avez besoin de la fonction supplémentaire de la mappe de hachage.
  • Pour la balise <cm:order />, utilisez ce paramètre pour transmettre des valeurs à IBM Digital Analytics cmCreateShopAction9Tag.
  • Pour la balise <cm:cart />, utilisez ce paramètre pour transmettre des valeurs à IBM Digital Analytics cmCreateShopAction5Tag.
orderExtraparms Utiliser lorsque vous souhaitez ajouter des valeurs à la commande.

Ce paramètre est pris en charge par la balise <cm:order /> uniquement ; utilisez ce paramètre pour transmettre des valeurs à IBM Digital Analytics cmCreateOrderTag.

Remarque : Les exemples de cette rubrique utilisent la syntaxe simplifiée pour spécifier des valeurs extraparms. Vous devez spécifier les valeurs à l'aide de JavaScript correctement échappé :
Exemple de syntaxe simplifiée
extraparms="value1-_-value2,value3-_-value4"
Exemple de JavaScript correctement échappé
extraparms="\"value1-_-value2\",\"value3-_-value4\""

Si l'une de vos valeurs extraparms est une variable JavaScript, consultez les règles de syntaxe expliquées dans Syntaxe pour la transmission de variables JavaScript en tant que paramètres supplémentaires.

Exemple d'utilisation des paramètres extraparms

Ce qui suit montre un exemple de la façon dont vous incluez une balise d'analyse HCL Commerce avec le paramètre extraparms dans une page de magasin :
<cm:order orderId="${WCParam.orderId}" extraparms="null,attr1-_-attr2"/>

Dans cet exemple, l'exemple de code précédent génère les balises de données cmCreateShopAction9Tag suivantes pour deux entrées de catalogue dans la commande (notez que la balise <order /> génère également la balise de données cmCreateOrderTag, mais qu'elle n'est pas affichée dans cet exemple) :

cmCreateShopAction9Tag ("KICO-02", "Flavour-Fantasy Gift Set", 
"1.0", "43.58", "1502", "15501", "51.51", "10025", null, "attr1-_-attr2")
cmCreateShopAction9Tag ("KIAC-03", "Rolling Pin", 
"1.0", "7.93", "1502", "15501", "51.51", "10025", null, "attr1-_-attr2")
Dans les exemples de sortie cmCreateShopAction9Tag précédents, le paramètre extraparms a généré les données suivantes pour les deux entrées de catalogue dans la commande :
null, "attr1-_-attr2"

Exemple d'utilisation des paramètres extraparmsMap

Pour ajouter différentes valeurs à des entrées de catalogue spécifiques, vous devez transmettre un objet de type java.util.HashMap comme valeur pour extraparmsMap. La clé de la carte est l'orderItemId et la valeur est le paramètre supplémentaire que vous souhaitez transmettre pour cette entrée de catalogue.

L'exemple de code suivant montre comment utiliser le paramètre extraparmsMap avec une balise d'analyse HCL Commerce dans une page de magasin ; notez que le code pour créer l'objet java.util.HashMap précède la balise d'analyse HCL Commerce :

<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, "null," + "attr" + i+ ".0-_-attr" + i+ ".1");
i++;
}
pageContext.setAttribute("eMap",map);
%>
<cm:order orderType="${orderForAn}" extraparmsMap="${eMap}" />

L'exemple de code précédent génère l'exemple de sortie cmCreateShopAction9Tag suivant pour deux entrées de catalogue dans la commande : "Flavour-Fantasy Gift Set" et "Rolling Pin" :

cmCreateShopAction9Tag ("KICO-02", "Flavour-Fantasy Gift Set", 
"1.0", "43.58", "1502", "15501", "51.51", "10025", null, "attr1.0-_-attr1.1")
cmCreateShopAction9Tag ("KIAC-03", "Rolling Pin", 
"1.0", "7.93", "1502", "15501", "51.51", "10025", null, "attr2.0-_-attr2.1")
Dans les exemples de sortie cmCreateShopAction9Tag précédents, le paramètre extraparmsMap a généré les données suivantes :
  • Pour "Flavour-Fantasy Gift Set" : null, "attr1.0-_-attr1.1"
  • Pour "Rolling Pin" : null, "attr2.0-_-attr2.1"

Exemple d'utilisation des paramètres orderExtraparms

Ce qui suit montre un exemple de la façon dont vous pourriez inclure une balise d'analyse HCL Commerce avec le paramètre orderExtraparms dans une page de magasin :
<cm:order orderType="${orderForAn}" orderExtraparms="attr1-_-attr2" />  

L'exemple de code précédent génère la balise de données cmCreateOrderTag suivante (notez que la balise <order /> génère également la balise de données cmCreateShopAction9Tag, mais qu'elle n'est pas affichée dans cet exemple) :

cmCreateOrderTag ("16002", "46.65", "6.93", "1502", "LA", "CA", "11111", 
"attr1-_-attr2", "-_--_--_--_--_--_--_--_--_--_--_--_-
Save 10% on all orders today|Flat Shipping-_--5.4|-1.93-_-|") 

Dans l'exemple de sortie cmCreateOrderTag précédent, le paramètre orderExtraparms a généré les données suivantes concernant la commande :

"attr1-_-attr2"