Tag Archives: RPM

Como configurar el RPMTaskMDB en multihilos en RPM | Retail Price Management 13.2

RPMTaskMDB es un bean controlado por mensajes utilizado para facilitar la capacidad de procesamiento asíncrono de RPM. El RPMTaskMDB actúa como oyente de las colas de mensajes, tan pronto como llega un mensaje en la cola, el contenedor desencadena la ejecución de este bean. Cuando una tarea de fondo es creado por RPM, se publica un mensaje a la cola como un disparador para iniciar el procesamiento de las tareas.

EJB usado por RPMTaskMDB

com.retek.rpm.app.task.service.RPMTaskAppServiceBmtEjb

Tablas usadas por RPMTaskMDB

  • Tareas actuales, historicas y pendientes por ser ejecutadas: RPM_TASK, RPM_CONFLICT_CHECK_TASK, RPM_LOCATION_MOVE_TASK
  • Tablas usadas para enviar alertas a usuarios acerca del status: ALERTS, ALERT_RECEIVER, ALERT_STATUS, ALERT_STATUS_DSC

Donde encuentras el archivo weblogic-ejb-jar.xml correcto para habilitar el multihilos en Retail Price Management (RPM)?

Para configurar la cantidad de hilos del RPMTaskMDB se debe modificar el archivo Weblogic-ejb-jar.xml 

  • Si ya tienes instalado RPM puedes encontrar este archivo en la siguiente ruta:
[WEBLOGIC_HOME]\user_projects\domains\base_domain\servers\rpm-server\tmp\_WL_user\rpm13\[SYS_GENERATED_FOLDER]\rpm13.jar\META-INF\ 
  • En caso de que vayas a instalarlo

Debes dirigirte a la carpeta donde descomprimiste el instalador de RPM (por ejemplo):

cd /u00/webadmin/media/rpm-test/rpm/application/rpm13/template/

Cambiar el archivo Weblogic-ejb-jar.xml y correr el instalador que usas para RPM como usualmente lo harías y de esta manera se desplegara con la configuración indicada.

  • Y finalmente cambiar la propiedad max-beans-in-free-pool dentro del archivo Weblogic-ejb-jar.xml:
   <weblogic-enterprise-bean>
      <ejb-name>RPMTaskMDB</ejb-name>
        <message-driven-descriptor>
           <pool>
           <max-beans-in-free-pool>5</max-beans-in-free-pool>
           </pool>     
         <destination-jndi-name>@task.queue@</destination-jndi-name>
      </message-driven-descriptor>
      <reference-descriptor>
      </reference-descriptor>
  </weblogic-enterprise-bean>
  <weblogic-enterprise-bean>
      <ejb-name>RPMChunkMDB</ejb-name>
        <message-driven-descriptor>
           <pool>
           <max-beans-in-free-pool>5</max-beans-in-free-pool>
           </pool>     
         <destination-jndi-name>jms/chunkQueue</destination-jndi-name>
      </message-driven-descriptor>
      <reference-descriptor>
  </weblogic-enterprise-bean>

¿Cómo podemos determinar el valor que se utilizará en el campo max-beans-in-free-pool?

Este valor depende de la configuración de hardware. Puede modificar el valor en función de su número de CPU.

Nota: la información de este articulo aplica para la versión de RPM 13.2, para más detalle se puede consultar la documentación de oracle.

Promociones basadas en tiempo en Retail Price Management (RPM)

Promociones Basadas en tiempo

A partir de la versión 13.2.4 de Retail Price Management (RPM) se incorporó la funcionalidad de Promociones Basadas en tiempo como “Happy Hour” o “door-buster”.

Las versiones anteriores de RPM permitían a los usuarios introducir el tiempo (en horas: minutos) en el marco de las fechas de inicio y final respecto a la creación y mantenimiento de las promociones; sin embargo, esta información no se almacenaba en las tabla RPM_FUTURE_RETAIL y por lo tanto no viajaba al punto de venta (POS).

Esta funcionalidad puede ser usada para los siguientes tipos de promociones:

  • Promociones simples
  • Promociones con umbrales
  • Promociones Multi-compra

Adicionalmente para las promociones simples se pueden cargar a través del batch de inyección de precios en la tabla RPM_STAGE_PROMO_COMP_SIMPLE.

Para más información pueden visitar la documentación oficial de RPM.