Ejemplo: Cargar inventario no ATP

Este escenario carga registros de inventario para una tienda no ATP. Puede cargar los datos en una tienda B2C o una tienda de sitios ampliados.

Acerca de este ejemplo

Cada registro representa el inventario para una Entrada de catálogo determinada que se enviará desde un Centro de despacho de pedidos en nombre de una Tienda. La Entrada de catálogo puede identificarse con el Número de pieza en non_ATP_inventory.csv y con el Identificador de tienda en wc-dataload-env.xml. Para una tienda no ATP, solo se carga inventario para datos de artículo, no tiene sentido cargar inventario para datos de producto.

Procedimiento

  1. HCL Commerce DeveloperEn una línea de mandatos, vaya al directorio WCDE_installdir\bin.
  2. LinuxAbra una línea de mandatos en . Cambie el directorio a utilities_root/bin. Para obtener información sobre cómo entrar y salir de los contenedores, consulte Ejecución de programas de utilidad desde Utility server Docker container.
  3. Entre el mandato adecuado:
    1. Tienda B2C o B2B
      • Linux./dataload.sh ../samples/DataLoad/Inventory/Non-ATP/wc-dataload.xml
      • HCL Commerce Developerdataload ../samples/DataLoad/Inventory/Non-ATP/wc-dataload.xml
    2. Tienda de sitios ampliados
      • Linux./dataload.sh ../samples/DataLoad/Inventory/Non-ATP/wc-dataload-for-esite.xml
      • HCL Commerce Developerdataload ../samples/DataLoad/Inventory/Non-ATP/wc-dataload-for-esite.xml
HCL Commerce Version 9.1.13.0 or later

Distintivos de inventario

INVENTORYFLAGS, en la tabla Inventario, indica los usos de QUANTITY. Cuenta con los siguientes valores:
Tabla 1. Distintivos de inventario
Valor Descripción
0

Este es el valor predeterminado para INVENTORYFLAGS, y no establece ninguna condición adicional relacionada con QUANTITY.

No es posible formalizar un pedido con un valor de QUANTITY e INVENTORYFLAGS inferior a 0.

1

Este valor indica noUpdate. Los comandos de tarea UpdateInventory predeterminados no actualizan QUANTITY. La obtención de la disponibilidad del inventario no ATP para la entrada de catálogo con el valor 1 de INVENTORYFLAGS devolverá el valor de QUANTITY real. Cualquier valor de QUANTITY inferior a 1 devolverá 0.

No es posible formalizar un pedido con un valor de QUANTITY inferior a 1 y un valor de INVENTORYFLAGS de 1.

2

Este valor indica noCheck. Los comandos de tarea predeterminados CheckInventory y UpdateInventory no comprueban QUANTITY. La obtención de la disponibilidad del inventario no ATP para la entrada de catálogo con el valor 2 de INVENTORYFLAGS siempre devolverá el valor de QUANTITY 1.

El pedido se puede formalizar cuando el valor de QUANTITY real es inferior a 1 y el valor de INVENTORYFLAGS es 2, porque no hay ninguna comprobación en QUANTITY.

En el archivo com.ibm.commerce.inventory/wc-admin-component.xml, la propiedad ActualAvailableQuantity se marca como habilitada debajo del grupo config. Actualice el valor de propiedad a true. Al actualizar el valor se obtiene el valor de QUANTITY disponible al obtener la disponibilidad del inventario no ATP con el valor 2 de INVENTORYFLAGS. Cualquier valor inferior a 1 de QUANTITY devolverá 1. Esta propiedad es false de forma predeterminada.

4

Este valor indica actualQuantity. Los comandos de tarea predeterminados CheckInventory y UpdateInventory no comprueban QUANTITY. La obtención de la disponibilidad del inventario no ATP para la entrada de catálogo con el valor 4 de INVENTORYFLAGS devolverá un valor de QUANTITY real. Cualquier valor de QUANTITY inferior a 1 devolverá 1.

El pedido se puede formalizar cuando el valor de QUANTITY real es inferior a 1 y el valor de INVENTORYFLAGS es 4, porque no hay ninguna comprobación en QUANTITY.

Cargar datos para distintivos de inventario

No puede utilizar el programa de utilidad de carga de datos para actualizar el valor de INVENTORYFLAGS. El valor predeterminado de INVENTORYFLAGS es 0. Actualícelo directamente utilizando la siguiente sentencia SQL después de cargar los datos:
 update inventory set inventoryflags=xx where CATENTRY_ID in 
           (SELECT CATENTRY_ID
                      FROM CATENTRY 
                      WHERE partnumber like 'Cords%'
                              or partnumber like 'Classic pleated dress pant%'
                              or partnumber like 'Dress shirt%'
                              or partnumber like 'Casual shirt%'
                              or partnumber like 'Bodysuit%');

Verificación del resultado

Verifique que los datos se han cargado, ejecutando la sentencia SQL siguiente:

select * from INVENTORY where CATENTRY_ID in 
           (SELECT CATENTRY_ID
                      FROM CATENTRY 
                      WHERE partnumber like 'Cords%'
                              or partnumber like 'Classic pleated dress pant%'
                              or partnumber like 'Dress shirt%'
                              or partnumber like 'Casual shirt%'
                              or partnumber like 'Bodysuit%');
Si desea actualizar después de la carga inicial, puede actualizar en el archivo CSV y ejecutar de nuevo la carga.

Limpieza de los datos

Para limpiar los datos que se han cargado en la base de datos, ejecute la siguiente sentencia SQL
delete from INVENTORY where CATENTRY_ID in 
           (SELECT CATENTRY_ID
                      FROM CATENTRY 
                      WHERE partnumber like 'Cords%'
                              or partnumber like 'Classic pleated dress pant%'
                              or partnumber like 'Dress shirt%'
                              or partnumber like 'Casual shirt%'
                              or partnumber like 'Bodysuit%');
: