Generador de agenda

El generador de agenda crea una tabla que muestra la relación entre las promociones y las políticas durante la evaluación de la promoción . El generador de agenda es un componente configurable del motor de promociones.

Según la plantilla especificada, el generador de agenda busca y localiza todas las promociones activas en los grupos nombrados en la plantilla. Esta es la lista de promociones que se intentará llevar a cabo. Las políticas globales se consideran aplicables para cada promoción de la lista. Las políticas a nivel de grupo sólo son aplicables a las promociones del grupo al que está asociada esa política. Una implementación personalizada del generador de agenda es parte de una posible personalización.

Los generadores de agenda personalizados deben implementar la interfaz com.ibm.commerce.marketing.promotion.runtime.PromotionExecutionAgendaBuilder.

El fragmento de XML siguiente muestra cómo se registra un generador de agenda en el motor de promociones.


<PromotionExecutionAgendaBuilder impl="com.ibm.commerce.marketing.promotion.runtime.DefaultAgendaBuilder">
   <InvocationTemplates>
      <Template>
            <TemplateKey>
            <StoreKey>
              <DN>o=root organization</DN>
              <Identifier>NullEntity</Identifier>
           </StoreKey>
           <Name>All Promotions</Name>
         </TemplateKey>
         <MonetaryValuePresence>
            <Price>true</Price>
            <ShippingCharge>false</ShippingCharge>
            <Tax>false</Tax>
            <ShippingTax>false</ShippingTax>
         </MonetaryValuePresence>
         <PromotionGroupKey>
            <StoreKey>
               <DN>o=root organization</DN>
               <Identifier>NullEntity</Identifier>
            </StoreKey>
            <GroupName>ProductLevelPromotion</GroupName>
         </PromotionGroupKey>
         <PromotionGroupKey>
            <StoreKey>
               <DN>o=root organization</DN>
               <Identifier>NullEntity</Identifier>
            </StoreKey>
            <GroupName>OrderLevelPromotion</GroupName>
         </PromotionGroupKey>
         <PromotionGroupKey>
            <StoreKey>
               <DN>o=root organization</DN>
               <Identifier>NullEntity</Identifier>
            </StoreKey>
            <GroupName>ShippingPromotion</GroupName>
         </PromotionGroupKey>
      </Template>
      <Template>
         <TemplateKey>
            <StoreKey>
               <DN>o=root organization</DN>
               <Identifier>NullEntity</Identifier>
            </StoreKey>
            <Name>Order Level Promotion</Name>
         </TemplateKey>
         <MonetaryValuePresence>
            <Price>true</Price>
            <ShippingCharge>false</ShippingCharge>
            <Tax>false</Tax>
            <ShippingTax>false</ShippingTax>
         </MonetaryValuePresence>
         <PromotionGroupKey>
            <StoreKey>
               <DN>o=root organization</DN>
               <Identifier>NullEntity</Identifier>
            </StoreKey>
            <GroupName>OrderLevelPromotion</GroupName>
         </PromotionGroupKey>
      </Template>
   </InvocationTemplates
</PromotionExecutionAgendaBuilder>

La definición de la plantilla forma parte de la configuración del generador de agenda. Esto significa que si proporciona su propia implementación del generador de agenda, no hace falta que siga el esquema de la plantilla.