Ejemplo: eliminar la configuración del inventario ATP

Puede eliminar la configuración de inventario ATP utilizando el programa de utilidad de carga de datos. Este ejemplo utiliza un archivo CSV para mostrar cómo eliminar la información de configuración de inventario ATP.

Este ejemplo utiliza un archivo CSV para mostrar cómo insertar, sustituir o eliminar los datos. También puede crear y utilizar un archivo con formato XML para insertar, sustituir o eliminar los datos. Si decide crear y utilizar un archivo con formato XML, asegúrese de que los elementos XML utilizan los mismos nombres que los nombres de columna CSV.

Utilice el programa de utilidad de carga de datos para eliminar los datos de configuración de inventario ATP de la base de datos.

Archivo CSV con datos de configuración de inventario ATP de ejemplo

En este ejemplo, la fuente de datos es un archivo CSV denominado ATPconfig_delete.csv. El archivo contiene datos de configuración de inventario ATP de ejemplo con un número mínimo de columnas necesarias para "eliminar" dataLoadMode. Cada columna está delimitada por una coma.

CatalogEntryMediator se utiliza para eliminar los datos de entrada de catálogo junto con los datos de configuración de inventario ATP. FulfillmentPropertyMediator se utiliza para eliminar únicamente datos de configuración de inventario de ATP, sin que ello afecte a los datos de entrada de catálogo correspondientes.

Archivo CSV con datos de ejemplo

PartNumber ParentPartNumber Tipo CatEntryStoreIdentifier
Example-PN-10001 Producto 10701
Example-PN-100012 Example-PN-10001 Artículo
Nota: Si la propiedad "markForDelete" se establece en true en el archivo de configuración del objeto de negocio, el registro BASEITEM y el registro ITEMSPC no se suprimen de la base de datos. En su lugar el valor MARKFORDELETE de estos registros se actualiza a "1".Cualquier valor distinto de true adopta automáticamente el valor false. Los registros en la tabla BASEITEM y ITEMSPC se suprimen de la base de datos y los registros correspondientes en otras tablas también se suprimen como resultado de la restricción de cascada. Por ejemplo, cuando se suprime un registro BASEITEM, se suprime el correspondiente registro BASEITMDSC.

Definiciones de columnas CSV y de elementos XML

PartNumber
(Obligatorio, serie) Número de referencia que identifica el número de pieza de la entrada de catálogo. Este número identifica de forma exclusiva una entrada de catálogo para un propietario determinado. Este campo es obligatorio y no puede ser nulo.
ParentPartNumber
(Serie) Número de pieza de un producto padre de este artículo. Se utiliza para recuperar el valor de BASEITEM_ID de la tabla BASEITEM, junto con el ID del propietario de este artículo.
Tipo
(Obligatorio, serie) Este campo define el tipo de entrada de catálogo. Los valores para Type son "Item", "Product", "Bundle" y "Package". Este campo es obligatorio y no puede ser nulo.
CatEntryStoreIdentifier
(Serie) Este campo se utiliza en una tienda de sitios ampliados. Si el valor de CatalogEntry se define en una tienda con elementos de entrada de catálogo, este campo corresponde al identificador de la tienda con elementos de entrada de catálogo. Este identificador se utiliza para recuperar el catálogo entryOwner.
HCL Commerce EnterpriseEste campo es obligatorio si está utilizando una tienda de sitios ampliados.

Otros campos opcionales no incluidos en el ejemplo:

CatalogEntryUniqueId
(Largo) Identificador de la entrada de catálogo. Se utiliza para recuperar un registro de una tabla CATENTRY, para luego poder obtener BASEITEM_ID, ITEMSPC_ID y CATENTTYPE_ID del registro. Si este campo no se especifica en el archivo CSV, se utiliza PartNumber para recuperar estos CD.
ParentCatalogEntryUniqueId
(Largo) Identificador de la entrada de catálogo padre. Se utiliza para recuperar el valor de BASEITEM_ID que corresponde a la entrada de catálogo padre. Si este campo no se especifica en el archivo CSV, ParentPartNumber recupera BASEITEM_ID.

Datos de contexto de negocio

El siguiente fragmento de código del archivo de configuración wc-dataload-env.xml proporciona los datos de contexto de negocio necesarios para cargar los datos:

<_config:BusinessContext storeIdentifier="AuroraESite" langId="-1">
</_config:BusinessContext>
storeIdentifier
(Serie) Identificador de la tienda a la que pertenece la entrada de catálogo.
langId
(Int) El identificador de un idioma que se utiliza para cargar datos en BASEITEMDSC. El valor predeterminado es "-1".

Correlación de datos

El siguiente fragmento de código del archivo de configuración de ejemplo demuestra cómo correlacionar cada columna de datos en el archivo CSV de origen con un valor

<_config:DataReader className="com.ibm.commerce.foundation.dataload.datareader.CSVReader" firstLineIsHeader="true">
               <_config:Data>
             				 <_config:column number="1" name="PartNumber" />
                     <_config:column number="2" name="ParentPartNumber" />
                     <_config:column number="3" name="Type" />
                     <_config:column number="4" name="CatEntryStoreIdentifier" />
               </_config:Data>
</_config:DataSource>

El siguiente fragmento de código del archivo de configuración de ejemplo muestra cómo correlacionar cada columna de datos del archivo CSV con una vía de acceso de esquema lógico de objeto de negocio. El atributo 'value' representa el nombre de una columna del archivo CSV que está definido en el fragmento de código de configuración. Cada columna del archivo CSV debe tener una correlación con la vía de acceso de esquema lógico.


<_config:DataMapping>
       <_config:mapping xpath="CatalogEntryIdentifier/ExternalIdentifier/PartNumber" value="PartNumber" valueFrom="InputData"/>
       <_config:mapping xpath="ParentCatalogEntryIdentifier/ExternalIdentifier/PartNumber" value="ParentPartNumber" valueFrom="InputData"/>
       <_config:mapping xpath="catalogEntryTypeCode" value="Type" valueFrom="InputData"/> 
       <_config:mapping xpath="InventoryReceiptIdentifier/ExternalIdentifier/CatalogEntryIdentifier/ExternalIdentifier/StoreIdentifier/ExternalIdentifier/NameIdentifier" value="CatEntryStoreIdentifier" />
</_config:DataMapping>

Mediador de objetos de negocio

El programa de utilidad de carga de datos proporciona un mediador de objetos de negocio para eliminar datos de configuración de inventario ATP junto con datos de entrada de catálogo. El nombre de la clase de mediador es com.ibm.commerce.catalog.dataload.mediator.CatalogEntryMediator. Para eliminar únicamente datos de configuración de inventario, el nombre de la clase de mediador es com.ibm.commerce.catalog.dataload.mediator.FulfillmentPropertyMediator

Nota: Cuando utiliza un mediador que se proporciona con HCL Commerce con el programa de utilidad de carga de datos, el programa de utilidad de carga de datos da por supuesto que está cargando datos para todas las columnas para un objeto de negocio. Si desea actualizar los datos solamente en columnas específicas, configure una lista de exclusión de columnas para el proceso de carga. Una lista de exclusión de columnas hace que el programa de utilidad de carga de datos ignore columnas concretas durante la operación de carga. Si no utiliza una lista de exclusión de columnas, el programa de utilidad actualiza todas las columnas de la fila de una fila de tabla de base de datos cuando el programa de utiliza actualiza la fila. Si el valor se establece en el archivo de entrada, el programa de utilidad puede sustituir el valor de columna existente por un valor predeterminado o establecer el valor en nulo. Para obtener más información, consulte Configuración de una lista de exclusión de columnas.