Etiqueta de pedido

La etiqueta de pedido de HCL Commerce recopila información sobre el pedido de un cliente. La etiqueta de pedido crea dos conjuntos de datos: uno para el contenido del carro de la compra en el momento del pedido y el otro para la información de resumen de pedidos.

Para cada artículo del carro de la compra, este código recopila los siguientes datos para pasar a un sistema de análisis externo:
  • Número de pieza del producto
  • Nombre del producto
  • Cantidad
  • Precio base
  • Identificador del cliente
  • Identificador de pedido
  • Subtotal
  • Categoría del producto en el catálogo que el cliente está examinando actualmente
  • Categoría del producto en el catálogo maestro
  • Moneda
  • Nombre de cuenta (cuando la transacción es una transacción B2B)
  • Nombre de contrato (cuando la transacción es una transacción B2B)
  • Identificador de la tienda
Para la información de resumen de pedidos, este código recopila los siguientes datos para pasarlos a un sistema de análisis externo:
  • Identificador de pedido
  • Subtotal del pedido
  • Cargos de envío que están asociados al pedido
  • Identificador del cliente
  • Ciudad del cliente
  • Estado del cliente
  • Código postal del cliente
  • Moneda
  • Nombres de promoción que aplican al pedido, separados por el delimitador '|'
  • Valores de ajustes de promociones, separados por el delimitador '|'
  • Códigos de promoción, separados por el delimitador '|'
  • Identificador de la tienda
Esta etiqueta también puede pasar parámetros adicionales para la personalización de etiquetas.

Parámetros

A continuación se muestra una lista de parámetros necesarios y opcionales para la etiqueta de pedido.

Nota para IBM Digital Analytics: los siguientes parámetros son para la etiqueta HCL Commerce <cm:order />. Esta etiqueta genera la etiqueta de datos IBM Digital Analytics cmCreateShopAction9Tag y la etiqueta de datos cmCreateOrderTag.

Para pasar la información de carro de la compra y de resumen de pedidos de la lista del principio de este tema a un sistema de análisis externo, utilice uno de los parámetros siguientes:
databean
Utilice este parámetro si el archivo JSP de página de confirmación de pedido ya contiene un bean de datos de pedido. Este parámetro es una instancia que se ha llenado de com.ibm.commerce.order.beans.OrderDataBean.

Utilizar el parámetro databean proporciona un mejor rendimiento que utilizar el parámetro orderId, porque la etiqueta de pedido no tiene que utilizar otros recursos para generar el bean de datos de orderId.

orderType
Utilice este parámetro si el pedido utiliza servicios web para las funciones de ejecución de pedidos. Este parámetro es una instancia rellena del objeto com.ibm.commerce.order.facade.datatypes.OrderType.

Utilizar el parámetro orderType proporciona un mejor rendimiento que utilizar el parámetro orderId, porque la etiqueta del pedido no tiene que utilizar otros recursos para generar los datos de orderType a partir de orderId.

orderId
Si no se aplica ninguno de los dos parámetros anteriores, utilice el parámetro orderId. Este parámetro es el ID de pedido del pedido que se visualiza. La etiqueta de pedido crea automáticamente un bean de datos de pedido para obtener la información que requiere el sistema de análisis externo. Este parámetro se ignora si ha utilizado el parámetro databean o el parámetro orderType.
useKitItems
Este parámetro es opcional. Establezca este parámetro en true para procesar artículos en kits como artículos de pedido separados.

Para enviar datos relacionados con impuestos al sistema de análisis externo, utilice los siguientes parámetros adicionales:

includeTaxInUnitPrice
Un parámetro opcional que se utiliza para excluir o incluir de forma condicional el impuesto junto con el precio unitario enviado al sistema de análisis externo. El valor predeterminado es false. Si se establece en true, el precio unitario enviado al sistema de análisis externo es la suma del precio unitario y el impuesto calculado para el producto concreto.
includeTaxInTotalPrice
Un parámetro opcional que se utiliza para excluir o incluir de forma condicional el impuesto junto con el precio total enviado al sistema de análisis externo. El valor predeterminado es false. Si se establece en true, el precio total enviado al sistema de análisis externo es la suma del total del pedido y el impuesto calculado para los totales del pedido. Para IBM Digital Analytics: Si este valor se establece en true, los cargos de envío pasados a IBM Digital Analytics en la etiqueta de datos cmCreateOrderTag también incluyen el impuesto de envío. Si este valor se establece en false, los cargos de envío pasados a IBM Digital Analytics no incluyen el impuesto sobre el envío.

Puede utilizar cualquiera de los tres parámetros siguientes para enviar más información al sistema de análisis externo:

extraparms
Un parámetro opcional que puede utilizar para enviar información adicional que se aplica a todas las entradas de catálogo del pedido al sistema de analítica externo. Este parámetro se proporciona para casos en los que podría haber negociado con el proveedor de analítica externo generar algún informe personalizado que requiera información adicional.

Nota para : Utilice el parámetro extraparms para pasar atributos de Explore o datos para informes personalizados de , o ambas cosas. Consulte Pasar datos adicionales a IBM Digital Analytics utilizando el parámetro extraparms.

Hay múltiples formas de pasar valores utilizando el parámetro extraparms:
Descripción: Ejemplo
Especificar valores explícitos como JavaScript con los caracteres de escape correspondientes. Para pasar más de un valor, separe los valores con una coma. extraparms="\"value1\", \"value2\""
Especificar valores explícitos sin escapar los valores. Para pasar más de un valor, separe los valores con una coma. extraparms="value1, value2"
Especificar contenido dinámico llamando a un nombre de método. Cualquier parámetro que utilice extraparms que empiece y termine con el símbolo $, por ejemplo, $getMethod$, se presupone que es un nombre de método del objeto que se ha pasado utilizando cualquiera de los parámetros databean o orderType. La única restricción en el nombre de método es que no debe utilizar ningún argumento y el objeto devuelto debe implementar el método toString(). extraparms="$getMethod$"
extraparmsMap
Un parámetro opcional que puede utilizar para enviar información adicional que se aplica a entradas de catálogo específicas del pedido al sistema de analítica externo. Este parámetro es una alternativa al parámetro extraparms cuando desea asociar valores de parámetro adicionales diferentes a cada artículo de pedido del carro de la compra, en lugar de asociar el mismo valor de parámetro adicional a cada artículo del carro de la compra.

Nota para : Utilice el parámetro extraparmsMap para pasar atributos de Explore o datos para informes personalizados de , o ambas cosas. Consulte Comparación de parámetros adicionales para etiquetas IBM Digital Analytics.

La entrada para este parámetro es un objeto de tipo java.util.Map en el que la clave para cada entrada de la correlación es orderItemId. El valor para una clave específica es el parámetro adicional que se pasa junto con la entrada de catálogo asociada al artículo de pedido. El valor de cada orderItemId se añade a la lista de argumentos para la salida de la etiqueta de análisis de ese artículo concreto del pedido.

El siguiente es código de ejemplo para crear un objeto java.util.HashMap para pasarlo como el valor del parámetro 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
Un parámetro opcional que puede utilizar para enviar información adicional que se aplica al resumen del pedido al sistema de analítica externo.

Nota para : Utilice el parámetro orderExtraparms para pasar atributos de Explore o datos para informes personalizados de , o ambas cosas. Consulte Pasar datos adicionales a IBM Digital Analytics utilizando el parámetro extraparms.

Hay múltiples formas de pasar valores utilizando el parámetro orderExtraparms:
Descripción: Ejemplo
Especificar valores explícitos como JavaScript con los caracteres de escape correspondientes. Para pasar más de un valor, separe los valores con una coma. orderExtraparms="\"value1\", \"value2\""
Especificar valores explícitos sin escapar los valores. Para pasar más de un valor, separe los valores con una coma. orderExtraparms="value1, value2"
Especificar contenido dinámico llamando a un nombre de método. Cualquier parámetro que utilice extraparms que empiece y termine con el símbolo $, por ejemplo, $getMethod$, se presupone que es un nombre de método del objeto que se ha pasado utilizando cualquiera de los parámetros databean o orderType. La única restricción en el nombre de método es que no debe utilizar ningún argumento y el objeto devuelto debe implementar el método toString(). orderExtraparms="$getMethod$"

Versiones de etiquetas

HCL Commerce proporciona dos versiones de la etiqueta de pedido:

  1. Una clase de implementación de etiqueta de base abstracta: com.ibm.commerce.bi.taglib.OrderBaseTag. Los proveedores de análisis que desean proporcionar una etiqueta de pedido en su biblioteca de etiquetas JSP de análisis web pueden ampliar esta clase de etiquetas base para obtener los datos de la etiqueta de pedido e implementar su propia lógica para generar las API de codificación de pedidos específicas del proveedor.
  2. Una implementación predeterminada de la etiqueta de elemento (<cm:order />) para IBM Digital Analytics. Esta implementación genera automáticamente la etiqueta de datos IBM Digital Analytics cmCreateShopAction9Tag y la etiqueta de datos cmCreateOrderTag.