Actualizar el archivo de configuración de tipo de promoción

Para un tipo de promoción personalizado, debe identificar al servicio de promoción qué plantillas XSLT se han de utilizar para transformar el XML de promoción de autoría en el XML de promoción de tiempo de ejecución. También debe identificar qué atributos tiene el tipo de promoción personalizado. Para ello, registre la plantilla XSLT personalizada que ha creado y otros atributos para el tipo de promoción nuevo en un archivo de configuración de tipo de promoción nuevo.

Procedimiento

  1. Vaya al directorio siguiente:

    workspace_dir/WC/xml/config

  2. Cree un directorio com.ibm.commerce.promotion-ext.
  3. Cree un archivo de configuración de tipo de promoción denominado com.ibm.commerce.promotion.facade.server.config.PromotionComponentConfigurationImpl.xml.
  4. Registre la plantilla XSLT personalizada y otros atributos para el tipo de promoción nuevo en el archivo de configuración de tipo de promoción nuevo.

    Los tipos de promoción predeterminados se registran en el archivo de configuración de tipo de promoción en esta vía de acceso:

    xml\config\com.ibm.commerce.promotion\com.ibm.commerce.promotion.facade.server.config.PromotionComponentConfigurationImpl.xml

    Una entrada en el archivo de configuración de tipo de promoción predeterminado para un tipo de promoción predeterminado es parecida al siguiente ejemplo de código:

    <promotionTypeConfiguration name="OrderLevelPercentDiscount">
       <param key="purchaseConditionTemplate" value="OrderPercentOffPurchaseConditionTemplate.xsl"/>
       <param key="basePromotionTemplate" value="DefaultBasePromotionTemplate.xsl"/>
       <param key="customConditionTemplate" value="DefaultCustomConditionsTemplate.xsl"/>
       <param key="targetingConditionTemplate" value="DefaultTargetingConditionTemplate.xsl"/>
       <param key="promotionGroup" value="OrderLevelPromotion"/>
       <param key="calculationCodeDisplayLevel" value="1"/>
    </promotionTypeConfiguration>

    El ejemplo siguiente es un archivo de configuración de tipo de promoción personalizado. Las diferencias en relación con el ejemplo anterior se indican en negrita. Aquí, el tipo archivo de configuración del tipo de promoción indica que un nuevo tipo de promoción "MyOrderLevelPercentDiscount" utiliza la plantilla "MyOrderLevelPercentDiscountPurchaseConditionTemplate.xsl" para transformar las condiciones de compra; otros elementos de promoción, por ejemplo, los elementos <CustomConditions> y <TargetingCondition>, utilizan las plantillas predeterminadas.

    <promotionTypeConfiguration name="MyOrderLevelPercentDiscount">
       <param key="purchaseConditionTemplate" value="MyOrderPercentOffPurchaseConditionTemplate.xsl"/>
       <param key="basePromotionTemplate" value="DefaultBasePromotionTemplate.xsl"/>
       <param key="customConditionTemplate" value="DefaultCustomConditionsTemplate.xsl"/>
       <param key="targetingConditionTemplate" value="DefaultTargetingConditionTemplate.xsl"/>
       <param key="promotionGroup" value="OrderLevelPromotion"/>
       <param key="calculationCodeDisplayLevel" value="1"/> 
    </promotionTypeConfiguration>
    Los dos últimos parámetros cumplen los siguientes objetivos:
    • promotionGroup: Este parámetro hace referencia al grupo de promociones al que pertenece el tipo de promoción, es decir, nivel de pedido, nivel de producto o envío.
    • calculationCodeDisplayLevel: Este parámetro define lo que los clientes ven en el escaparate independientemente del ajuste de precio de la promoción. El valor 0 (nivel de visualización de artículo de pedido) significa que un cliente ve el ajuste desglosado para por cada artículo individual de su pedido. El valor 1 (nivel de visualización de pedido) significa que el cliente ve el ajuste para todo el pedido en un resumen.

Ejemplo

Para su tipo de promoción personalizado, el archivo de configuración del tipo de promoción personalizado completo es como el siguiente ejemplo:
Los clientes que compren dos sillas de comedor (FULO-01) cumplen los requisitos para comprar una mesa de comedor (FULO-02) al precio rebajado de 200 euros.
<?xml version="1.0" encoding="UTF-8"?> 
<promotionComponentRegistry>
   <promotionTypeConfiguration name="ProductLevelPWPFixedCostDiscount">
      <param key="purchaseConditionTemplate" value="ProductPurchaseWithPurchaseFixedCostPurchaseConditionTemplate.xsl"/>
      <param key="basePromotionTemplate" value="DefaultBasePromotionTemplate.xsl"/>
      <param key="customConditionTemplate" value="DefaultCustomConditionsTemplate.xsl"/>
      <param key="targetingConditionTemplate" value="DefaultTargetingConditionTemplate.xsl"/>
      <param key="promotionGroup" value="ProductLevelPromotion"/>
      <param key="calculationCodeDisplayLevel" value="0"/>
   </promotionTypeConfiguration>
</promotionComponentRegistry>