Catalogues fournisseurs

Comment conserver uniquement les éléments XML avec un code fournisseur et un code-barres à 13 chiffres

2026-06-29
Objectif

Certaines fiches produit du XML source n’ont pas de code fournisseur et d’autres contiennent un code-barres qui ne comporte pas exactement 13 chiffres. Le résultat doit conserver uniquement les fiches qui remplissent les deux conditions.

Réponse courte

Repérez le nœud répété qui représente un produit et ouvrez ses paramètres. Appliquez les conditions à l’élément entier, exigez que votre champ de code fournisseur ne soit pas vide et vérifiez votre champ de code-barres avec ^\d{13}$.

Comment le faire dans Eofferix

  1. Dans l’instantané XML, repérez le nœud répété qui représente un produit. Dans le XML d’exemple, il s’appelle product.

    Le nœud product répété est encadré en rouge dans l’instantané XML Eofferix
    Dans l’exemple, le nœud product est sélectionné. Dans votre XML, sélectionnez le nœud répété qui représente une fiche produit, même s’il s’appelle offer, item, position ou autrement.
  2. Faites correspondre les nœuds de l’exemple aux nœuds ou attributs équivalents de votre XML. Vous n’avez pas besoin de renommer les nœuds du XML source.

    Les noms de cet article sont uniquement des exemples. product, supplierCode et gtin ne sont pas des noms imposés par Eofferix. Utilisez les chemins réels de votre XML.
    Dans cet articleDans votre XML
    productLe nœud répété qui représente une fiche produit, par exemple offer, item, position ou un autre nom.
    supplierCodeVotre champ de code fournisseur, par exemple vendorCode, sku, article ou l’attribut correspondant.
    gtinVotre champ de code-barres, par exemple barcode, ean, gtin ou l’attribut correspondant.
  3. Ouvrez les paramètres du nœud répété, développez Conditions d’export et sélectionnez Pour l’élément entier. Ajoutez deux conditions :

    • votre champ de code fournisseur — Avant transformationsnon vide ;
    • votre champ de code-barres — Avant transformationsexpression régulière^\d{13}$.
    Deux conditions d’export appliquées à un élément XML répété dans Eofferix
    Le cadre rouge couvre toute la configuration : supplierCode, gtin et Pour l’élément entier. Ces noms appartiennent uniquement au XML d’exemple.
  4. Vérifiez plusieurs éléments avec Autres valeurs ou l’aperçu. Les conditions fonctionnent ensemble : si l’une échoue, l’élément répété entier est exclu.

  5. Cliquez sur Enregistrer dans les paramètres du nœud, enregistrez le modèle et passez à la transformation. Après son exécution, contrôlez le XML final et pas seulement l’instantané.

Ce que vérifie l’expression régulière

^\d{13}$ signifie que la valeur entière, du début à la fin, doit contenir exactement 13 chiffres.

  • Correspond : 4006381333931.
  • Ne correspond pas : bad-code, 12345678 ni 400-638-1333931.
  • Dans la configuration illustrée, les deux conditions sont exécutées Avant transformations et vérifient donc les valeurs source. Si vous changez le moment du contrôle, vérifiez de nouveau le résultat dans l’aperçu.
Limite. Cette expression vérifie uniquement le format « exactement 13 chiffres ». Elle ne valide pas la clé de contrôle EAN-13 et ne prouve pas que le code-barres est valide. Si vous acceptez aussi EAN-8 ou GTIN-14, configurez cette exigence explicitement.

Avant / après

Les noms product, supplierCode et gtin servent uniquement à cette démonstration. Le résultat conserve le seul élément qui passe les deux contrôles.

Avant

données source
<catalog>
  <products>
    <product id="1001">
      <supplierCode>VN-1001</supplierCode>
      <gtin>4006381333931</gtin>
      <name>Lampe Élodie</name>
      <price>24.90</price>
    </product>
    <product id="1002">
      <supplierCode></supplierCode>
      <gtin>4601234567893</gtin>
      <name>Fauteuil Martin</name>
      <price>139.00</price>
    </product>
    <product id="1003">
      <supplierCode>VN-1003</supplierCode>
      <gtin>bad-code</gtin>
      <name>Étagère Loire</name>
      <price>16.40</price>
    </product>
  </products>
</catalog>

Après

résultat
<catalog>
  <products>
    <product id="1001">
      <supplierCode>VN-1001</supplierCode>
      <gtin>4006381333931</gtin>
      <name>Lampe Élodie</name>
      <price>24.90</price>
    </product>
  </products>
</catalog>

Traitez vos données plus vite avec Eofferix

Créez un compte gratuit pour automatiser catalogues et listes de prix selon vos règles.

S’inscrire