Modelar el XML de promoción de tiempo de ejecución

Puede modelar el XML de promoción de ejecución para el nuevo tipo de promoción con el objeto de identificar los datos que deben gestionarse para el tipo de promoción personalizado. Los datos que se identifican como necesarios se utilizan en tareas de personalización posteriores para ayudar a crear el tipo de promoción.

Antes de empezar

Revise los temas siguientes para asegurarse de que entiende cómo se representa una promoción en XML:

Por qué y cuándo se efectúa esta tarea

Para modelar el XML de promoción de tiempo de ejecución para su tipo de promoción personalizado, empiece por el XML de promoción de tiempo de ejecución generado para un tipo de promoción similar. A continuación, analice el XML para determinar en qué se diferencia de su tipo de promoción personalizado y realice cualquier cambio necesario en el XML.

La mayoría de tipos de promoción personalizados se centran en personalizar el elemento <PurchaseCondition>. La condición de compra define lo que los clientes deben tener en el carro de la compra para poder cumplir los requisitos de una promoción, así como la bonificación. Los usuarios de negocio entran datos para una promoción específica en la sección Condición de compra y bonificación de la interfaz de usuario.

Procedimiento

  1. Examine el XML de promoción de tiempo de ejecución de un tipo de promoción similar para utilizarlo como punto de partida para su modelo. Para obtener información sobre cómo recuperar el XML de ejecución para una promoción, consulte Recuperar el XML de tiempo de ejecución para un tipo de promoción
  2. Modifique el XML de promoción recuperado para reflejar los requisitos del tipo de promoción personalizado.

    Si va a personalizar la condición de compra o la bonificación, su objetivo es el elemento <PurchaseCondition>, concretamente el elemento <Pattern> para la condición de compra y el elemento <Distribution> para la bonificación de la promoción.

    En algunos casos, tiene sentido examinar más de un tipo de promoción predeterminado para obtener los resultados que desea. Su tipo de promoción personalizado podría combinar una condición de compra de un tipo de promoción predeterminado con una bonificación de un tipo de promoción predeterminado diferente.

  3. Asigne a esta estructura de promoción un nombre de tipo de promoción exclusivo, por ejemplo ProductLevelPWPFixedCostDiscount. Deberá hacer referencia a este nombre cuando cree el tipo de promoción personalizado.

Ejemplo

Desea modelar el XML de promoción de ejecución para el tipo de promoción personalizado que se basa en el XML De promoción de ejecución para la siguiente promoción.
  • Compre la entrada de catálogo X y obtenga un porcentaje de descuento en la entrada de catálogo Y
En base a este tipo de promoción existente, desea crear el siguiente tipo de promoción personalizado:
  • 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.
Para modelar este XML, debe definir sólo el contenido del elemento <PurchaseCondition> para su tipo de promoción. Todos los demás elementos de la campaña quedan igual que en la promoción predeterminada que se utiliza como punto de partida.

Su modelo del elemento <PurchaseCondition> en el XML de promoción de tiempo de ejecución es parecido al ejemplo siguiente:

<PurchaseCondition impl="com.ibm.commerce.marketing.promotion.condition.PurchaseCondition">
   <Pattern impl="com.ibm.commerce.marketing.promotion.condition.Pattern">
      <Constraint impl="com.ibm.commerce.marketing.promotion.condition.Constraint">
         <WeightedRange impl="com.ibm.commerce.marketing.promotion.condition.WeightedRange">
            <LowerBound>2</LowerBound>
            <UpperBound>2</UpperBound>
            <Weight>1</Weight>
         </WeightedRange>
         <FilterChain impl="com.ibm.commerce.marketing.promotion.condition.FilterChain">
            <Filter impl="com.ibm.commerce.marketing.promotion.condition.MultiSKUFilter">
               <IncludeCatEntryKey>
                  <CatalogEntryKey>
                     <SKU>FULO-01</SKU>
                     <DN>ou=b2c,o=seller organization,o=root organization</DN>
                  </CatalogEntryKey>
               </IncludeCatEntryKey>
            </Filter>
         </FilterChain>
      </Constraint>
      <Constraint impl="com.ibm.commerce.marketing.promotion.condition.Constraint">
         <WeightedRange impl="com.ibm.commerce.marketing.promotion.condition.WeightedRange">
            <LowerBound>1</LowerBound>
            <UpperBound>1</UpperBound>
            <Weight>1</Weight>
         </WeightedRange>
         <FilterChain impl="com.ibm.commerce.marketing.promotion.condition.FilterChain">
            <Filter impl="com.ibm.commerce.marketing.promotion.condition.MultiSKUFilter">
               <IncludeCatEntryKey>
                  <CatalogEntryKey>
                     <SKU>FULO-02</SKU>
                     <DN>ou=b2c,o=seller organization,o=root organization</DN>
                  </CatalogEntryKey>
               </IncludeCatEntryKey>
            </Filter>
         </FilterChain>
      </Constraint>
   </Pattern>
   <Distribution impl="com.ibm.commerce.marketing.promotion.reward.Distribution">
      <Type>Volume</Type>
      <Base>Quantity</Base>
      <Currency>USD</Currency>
      <Range impl="com.ibm.commerce.marketing.promotion.reward.DistributionRange">
         <UpperBound>-1</UpperBound>
         <LowerBound>1</LowerBound>
         <UpperBoundIncluded>false</UpperBoundIncluded>
         <LowerBoundIncluded>true</LowerBoundIncluded>
         <RewardChoice>
            <Reward impl="com.ibm.commerce.marketing.promotion.reward.DefaultReward">
               <AdjustmentFunction impl="com.ibm.commerce.marketing.promotion.reward.AdjustmentFunction">
                  <FilterChain impl="com.ibm.commerce.marketing.promotion.condition.FilterChain">
                     <Filter impl="com.ibm.commerce.marketing.promotion.condition.MultiSKUFilter">
                        <IncludeCatEntryKey>
                           <CatalogEntryKey>
                              <SKU>FULO-02</SKU>
                              <DN>ou=b2c,o=seller organization,o=root organization</DN>
                           </CatalogEntryKey>
                        </IncludeCatEntryKey>
                     </Filter>
                  </FilterChain>
                  <Adjustment impl="com.ibm.commerce.marketing.promotion.reward.FixedCostAdjustment">
                     <FixedCost>200</FixedCost >
                     <Currency>USD</Currency>
                     <AdjustmentType>IndividualAffectedItems</AdjustmentType>
                  </Adjustment>
               </AdjustmentFunction>
            </Reward>
         </RewardChoice>
      </Range>
      <PatternFilter impl="com.ibm.commerce.marketing.promotion.condition.DummyPatternFilter" />
   </Distribution>
</PurchaseCondition>