Exemple : Suppression de la configuration de stock ATP

Vous pouvez supprimer votre configuration de stock ATP à l'aide de l'utilitaire de chargement de données. L'exemple ci-après utilise un fichier CSV pour expliquer comment supprimer des informations de configuration de stock ATP.

Cet exemple utilise un fichier CSV pour expliquer comment insérer, remplacer ou supprimer vos données. Vous pouvez aussi créer et utiliser un fichier au format XML pour insérer, remplacer ou supprimer vos données. Si vous choisissez de créer et d'utiliser un fichier au format XML, assurez-vous que vos éléments XML utilisent les mêmes noms que ceux des colonnes CSV.

Vous pouvez utiliser l'utilitaire de chargement de données pour supprimer des données de configuration de stock ATP de la base de données.

Fichier CSV avec exemples de données de configuration de stock ATP

Dans cet exemple, les données source proviennent d'un fichier CSV nommé ATPconfig_delete.csv. Le fichier contient des données de configuration de stock ATP avec les colonnes minimales nécessaires pour le mode de chargement de données "delete" (suppression). Chaque colonne est délimitée par une virgule.

CatalogEntryMediator est utilisé pour supprimer des données d'entrées de catalogue en même temps que des données de configuration de stock ATP. FulfillmentPropertyMediator est utilisé pour supprimer des données de configuration de stock ATP, sans affecter les données d'entrées de catalogue correspondantes.

Fichier CSV avec exemples de données

PartNumber ParentPartNumber Type CatEntryStoreIdentifier
Example-PN-10001 Produit 10701
Example-PN-100012 Example-PN-10001 Elément
Remarque : Si la propriété "markForDelete" a pour valeur true dans le fichier de configuration d'objet métier, l'enregistrement BASEITEM et l'enregistrement ITEMSPC ne sont pas supprimés de la base de données. A la place, la valeur MARKFORDELETE de ces enregistrements est mise à jour avec la valeur 1.False est automatiquement attribué à toute valeur autre que true. Les enregistrements qui figurent dans les tableaux BASEITEM et ITEMSPC sont supprimés de la base de données et les enregistrements correspondants dans d'autres tableaux sont également supprimés en raison de la restriction de type cascade. Par exemple, lorsqu'un enregistrement BASEITEM est supprimé, l'enregistrement BASEITMDSC correspondant est supprimé.

définitions de colonne CSV et d'élément XML

PartNumber
(Obligatoire, Chaîne) Numéro de référence identifiant le numéro de pièce de l'entrée de catalogue. Identifie de manière unique une entrée de catalogue d'un propriétaire spécifique. Elle est obligatoire et ne peut pas avoir la valeur null.
ParentPartNumber
(Chaîne) Numéro de référence d'un produit parent de cet article. Utilisé pour extraire BASEITEM_ID de la table BASEITEM, en même temps que l'ID du propriétaire de cet article.
Type
(Obligatoire, Chaîne) Cette zone définit le type de l'entrée de catalogue. Les valeurs correspondant au type sont "Item" (article), "Product" (produit), "Bundle" (offre groupée) et "Package" (lot). Elle est obligatoire et ne peut pas avoir la valeur null.
CatEntryStoreIdentifier
(Chaîne) Cette zone est utilisée dans un magasin de site étendu. Si l'élément CatalogEntry est défini dans un magasin de ressources d'entrées de catalogue, cette zone correspond à l'identificateur de ce magasin. Cet identificateur est utilisé pour extraire le paramètre entryOwner du catalogue.
HCL Commerce EnterpriseCette zone est obligatoire si vous utilisez un magasin de site étendu.

Autres zones facultatives non incluses dans l'exemple :

CatalogEntryUniqueId
(Long) Identificateur de l'entrée de catalogue. Utilisé pour extraire un enregistrement de la table CATENTRY, après quoi BASEITEM_ID, ITEMSPC_ID et CATENTTYPE_ID peuvent être extraits de l'enregistrement. Si cette zone n'est pas spécifiée dans le fichier CSV, PartNumber est utilisé pour extraire ces ID.
ParentCatalogEntryUniqueId
(Long) Identificateur de l'entrée de catalogue parent. Utilisé pour extraire l'élément BASEITEM_ID correspondant à l'entrée de catalogue parent. Si cette zone n'est pas spécifiée dans le fichier CSV, BASEITEM_ID est extrait en fonction du numéro de référence parent (ParentPartNumber).

Données de contexte métier

Le fragment de code suivant du fichier de configuration wc-dataload-env.xml fournit les données de contexte métier requises pour le chargement des données :

<_config:BusinessContext storeIdentifier="AuroraESite" langId="-1">
</_config:BusinessContext>
storeIdentifier
(Chaîne) Identificateur du magasin auquel l'entrée de catalogue appartient.
langId
(Entier) Identificateur de langue, utilisé pour charger des données dans BASEITEMDSC. La valeur par défaut est "-1".

Données de mappage

Le fragment suivant du fichier d'exemple de configuration illustre comment mapper chaque colonne de données dans le fichier CSV source à une valeur.

<_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>

Le fragment suivant du fichier d'exemple de configuration illustre comment mapper chaque colonne de données dans le fichier CSV à un chemin de schéma logique d'objet métier. L'attribut 'value' représente le nom d'une colonne du fichier CSV défini dans le fragment de configuration. Chaque colonne du fichier CSV doit disposer d'un mappage avec le chemin de schéma logique.


<_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>

Médiateur d'objet métier

L'utilitaire de chargement de données fournit un médiateur d'objet métier permettant de supprimer des données de configuration du stock ATP ainsi que des données d'entrée de catalogue. Le nom de la classe du médiateur est com.ibm.commerce.catalog.dataload.mediator.CatalogEntryMediator. Pour une suppression de données de configuration du stock uniquement, le nom de la classe de médiateur est com.ibm.commerce.catalog.dataload.mediator.FulfillmentPropertyMediator

Remarque : Lorsque vous utilisez un médiateur qui est fourni avec HCL Commerce avec l'utilitaire de chargement des données, l'utilitaire suppose que vous chargez des données dans toutes les colonnes d'un objet métier. Si vous souhaitez mettre à jour les données dans des colonnes spécifiques seulement, configurez une liste d'exclusion de colonne pour le processus de chargement. Une liste d'exclusion de colonne amène l'utilitaire de chargement de données à ignorer des colonnes spécifiques au cours de l'opération de chargement. Si vous n'utilisez pas de liste d'exclusion de colonne, l'utilitaire met à jour toutes les colonnes dans la ligne d'une table base de données lorsque l'utilitaire met la ligne à jour. Si aucune valeur n'est définie dans le fichier d'entrée, l'utilitaire peut remplacer la valeur de colonne existante par une valeur par défaut ou définir que la valeur sera nulle. Pour plus d'informations, voir Configuration d'une liste d'exclusion de colonnes.