Configurer le tXMLMap avec différentes boucles - 7.3

tXMLMap

Version
7.3
Language
Français
Product
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Real-Time Big Data Platform
Module
Studio Talend
Content
Création et développement > Systèmes tiers > Composants Processing (Intégration) > tXMLMap
Gouvernance de données > Systèmes tiers > Composants Processing (Intégration) > tXMLMap
Qualité et préparation de données > Systèmes tiers > Composants Processing (Intégration) > tXMLMap
Last publication date
2024-02-22

Procédure

  1. Double-cliquez sur le tXMLMap pour ouvrir son éditeur Map Editor.
    Notez que la zone d'entrée est déjà renseignée avec la structure XML simple par défaut et que la table du haut est la table d'entrée principale.
  2. Dans la table d'entrée row1, cliquez-droit sur le nœud doc et, dans le menu contextuel, sélectionnez Import From File. Dans la boîte de dialogue qui s'ouvre, parcourez votre système jusqu'au fichier source XML pour importer la structure XML à utiliser par les données reçues par le tXMLMap. Dans ce scénario, le fichier source XML est ProductsIn.xml et il contient les données d'entrée du tFileInputXML.
  3. Dans l'arborescence XML importée, cliquez-droit sur le nœud manufacturer et sélectionnez As loop element dans le menu contextuel afin de le définir comme élément répétable. Répétez l'opération avec les nœuds types et sale, respectivement.
  4. Dans la partie inférieure de l'éditeur de mapping, cliquez sur l'onglet Schema editor pour afficher la vue correspondante. Du côté droit de la vue, ajoutez au schéma une colonne outDoc de type Document. La racine XML correspondante est automatiquement ajoutée à la table de sortie, du côté du flux de sortie.
  5. Dans la table de sortie outDoc, importez la structure XML des données à utiliser depuis le fichier XML contenant les données de sortie attendues et fournissant la structure XML attendue.
    Cliquez-droit sur le nœud sale de la table de sortie et sélectionnez As loop element dans le menu contextuel. Répétez l'opération avec les nœuds manufacturer et types.
  6. Dans la table d'entrée row1, cliquez sur le nœud @category et déposez-le dans le champ Expression, du nœud @category dans la table de sortie outDoc.

    Répétez l'opération afin de mapper les nœuds suivants :

    • @name à @name.

    • @unit sous le nœud summary à @unit.

    • @id à @id et à manufacture id, respectivement.

    • @date à @date.

    • name à @name.

    • type à type.

    • @type à @sales_type.

    • income à sale (loop).

  7. En haut de la table outDoc de sortie, cliquez sur l'icône de clé anglaise et configurez la valeur de la propriété All in one à true afin de générer un flux XML. Pour plus d'informations concernant la fonctionnalité All in one, consultez le Guide d'utilisation du Studio Talend.
  8. Cliquez sur le bouton [...] à côté de l'élément répétable manufacturer et, dans la boîte de dialogue Configure source loops qui s'ouvre, cliquez une fois sur le bouton [+] pour ajouter une boucle source, manufacturer. Répétez l'opération pour ajouter une boucle source sale pour l'élément répétable sale.
  9. Cliquez sur le bouton [...] à côté de l'élément boucle types et, dans la boîte de dialogue Configure source loop, ajoutez deux boucles source, types et manufacturer. Assurez-vous que le numéro de séquence des types de la boucle source 0. Ainsi, la partie relative du flux de sortie sera triée selon les valeurs de l'élément type.
    Remarque :

    Lorsqu'un élément répétable reçoit des mappings d'un ou plusieurs élément(s) de boucle du flux d'entrée, cela vous permet de configurer la séquence des boucles en entrée. Par exemple, dans ce scénario, l'élément répétable types du flux de sortie est mappé avec le nœud @id, appartenant à l'élément répétable manufacturer et avec le nœud type, appartenant à l'élément répétable types du flux d'entrée. Le flux de sortie est trié selon la boucle primaire types.

  10. Cliquez sur OK pour valider les mappings et fermer le Map Editor.