Personalizar el motor de fijación de precios HCL Commerce

Puede crear un elemento de regla de precios para alterar temporalmente los elementos de regla de precios suministrados.

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

Las reglas de precios tienen cada una sus propias condiciones. Hay varios elementos de reglas de precios que se utilizan para componer una regla de precios. Los cálculos de multiplicación no se realizan en los mandatos de elemento de regla de precios; de lo contrario, se pueden multiplicar los mismos puntos de valor más de una vez. Para evitar que los puntos de valor se multipliquen más de una vez, los mandatos que generan el precio de oferta deben sustituirse o utilizarse como parámetro. Esta guía de aprendizaje le enseña a personalizar el motor de precios de HCL Commerce y a crear una clase de elemento de regla de precios para utilizarla para sus propios fines de negocio.

Para personalizar el motor de precios de HCL Commerce:

Procedimiento

  1. Busque el elemento de regla de precios que quiera alterar temporalmente:
    1. Abra la API de HCL Commerce y vaya al paquete com.ibm.commerce.price.rule.commands.element. En este paquete se enumeran estas clases:
      • CalculatePriceElementCmdImpl
      • CatalogConditionElementCmdImpl
      • ComparisonConditionElementCmdImpl
      • CoordinatorElementCmdImpl
      • CustomerConditionElementCmdImpl
      • NestedPriceRuleElementCmdImpl
      • PriceEquationCalculationCmdImpl
      • PriceListConditionElementCmdImpl
      • PriceListElementCmdImpl
      • PriceRuleElementCmdImpl
      • RoundingElementCmdImpl
      • DateConditionElementCmdImpl
    2. Anule las clases:
      • ComparisonConditionElementCmdImpl
      • PriceEquationCalculationCmdImpl
      • PriceListElementCmdImpl
      Sustituya los nombres de clase:
      • MyComparisonConditionElementCmdImpl
      • MyPriceEquationCalculationCmdImpl
      • MyPriceListElementCmdImpl
  2. Abra HCL Commerce Developer.
  3. Abra la perspectiva EE de Java.
  4. Expanda el proyecto WebSphereCommerceServerExtensionsLogic ubicado en src. Cree un paquete denominado com.mycompany.commerce.price.rule.commands.element.
  5. Importa el código fuente.
    1. Utilizando el botón derecho del ratón, pulse el paquete com.mycompany.commerce.price.rule.commands.element.
    2. Pulse Importar>GeneralSistema de archivos. Pulse Siguiente.
    3. Vaya a la ubicación temporal donde está CustomizeGetEntitledPrice.zip y vaya a WebSphereCommerceServerExtensionsLogic\src\com\mycompany\commerce\price\rule\commands\element.
    4. Pulse todos los archivos y pulse Finalizar. Pulse Sí a todos para sobrescribir los archivos existentes.
  6. Organice las importaciones para el proyecto WebSphereCommerceServerExtensionsLogic.
    1. Abra la perspectiva Java en el desarrollador de HCL Commerce.
    2. Expanda el proyecto WebSphereCommerceServerExtensionsLogic y pulse src con el botón derecho del ratón.
    3. Pulse Origen>Organizar importaciones.
  7. Inserte los nuevos registros de CMDREG para anular las implementaciones proporcionadas. Utilice la utilidad de carga de datos, consulte Visión general del programa de utilidad de Carga de datos.
  8. Valide la personalización mediante JUnit.
    1. Pulse ArchivoImportar.
    2. Seleccione Genera>Proyectos existentes en el espacio de trabajo. Pulse Siguiente.
    3. Vaya a la ubicación temporal donde se encuentra CustomizeGetEntitledPrice.zip y pulse GetEntitledPriceExtension-UnitTests. Seleccione Copiar proyecto en el espacio de trabajo y pulse Finalizar.
    4. Configure un supervisor TCP/IP en el HCL Commerce Developer. Este supervisor TCP/IP se utiliza para observar los mensajes de solicitud y de respuesta que viajan entre HCL Commerce y el sistema de gestión de miembros externo.
      1. Pulse VentanaPreferencias.
      2. En la página Preferencias, pulse Ejecutar/Depurar>Supervisor TCP/IP.
      3. Pulse Añadir.
      4. Escriba la información siguiente:
        • Puerto de supervisión local: 81.
        • Nombre de host: localhost
        • Puerto: 80
        • Escriba: TCP/IP
      5. Pulse Aceptar.
      6. Pulse el supervisor TCP/IP que ha creado.
      7. Pulse Iniciar.
      8. Pulse Aceptar.
    5. Inicie el servidor de prueba de HCL Commerce.
    6. Asegúrese de que HCL Commerce ya está publicado en el servidor de prueba HCL Commerce. Si no lo está:
      1. En el panel Servidor, pulse el botón derecho del ratón y pulse el servidor de prueba de HCL Commerce. Pulse Añadir y eliminar proyectos.
      2. Pulse el proyecto HCL Commerce.
      3. Pulse Añadir.
      4. Pulse Finalizar.

      Si el proyecto HCL Commerce ya se ha añadido, pulse el botón derecho del ratón, pulse el servidor de prueba de HCL Commerce y pulse Publicar.

    7. Modifique GetEntitledPriceExtension-UnitTests/src/com/mycompany/commerce/price/facade/client/GetEntitledPriceTest.java para asegurarse de que los valores del los parámetros son correctos.
    8. Pulse GetEntitledPriceTest.java con el botón derecho del ratón. Pulse Ejecutar como>Prueba JUnit.
    9. Compruebe los mensajes de solicitud y de respuesta en el supervisor TCP/IP. Asegúrese de que los resultados son correctos.