Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > ETL > Talend
Talend Forum d'entraide sur Talend (Talend Open Studio, ...). Avant de poster --> FAQ Talend, Tutoriels Talend
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/04/2011, 21h10   #1
Membre du Club
 
Inscription : août 2009
Messages : 177
Détails du profil
Informations personnelles :
Âge : 47
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 177
Points : 46
Points : 46
Par défaut Sortie en XML et balises encastrées : Est-ce possible ?

Bonjour,
Je viens de faire quelques essais avec les composants "tFileInputDelimited" et "tAdvancedFileOutputXML" pour transformer le fichier CSV (ci-dessous) en un fichier XML dont les balises sont imbriquées -> ca fonctionne plutôt bien, sauf que... Serait-il possible de faire en sorte que les données soient transférées, non plus dans des attributs (comme c'est le cas actuellement pour <balise1> et <balise2>), mais directement entre les balises;comme dans l'exemple "Perspective XML", ci-dessous ? (Voir ci-dessous la copie d'image / au mappage, si besoin)

En vous remerciant par avance !

Fichier CSV:
Code :
1
2
3
balise1;balise2;balise3;Id;
valeur1;valeur2;valeur3;1
valeur10;valeur20;valeur30;2
Fichier XML obtenu:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
<rootTag>
  <balise1 a="valeur1">
    <balise2 b="valeur2">
      <balise3>valeur3</balise3>
    </balise2>
  </balise1>
  <balise1 a="valeur10">
    <balise2 b="valeur20">
      <balise3>valeur30</balise3>
    </balise2>
  </balise1>
</rootTag>
Perspective XML:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
<rootTag>
  <balise1>valeur1
    <balise2>valeur2
      <balise3>valeur3</balise3>
    </balise2>
  </balise1>
  <balise1>valeur10
    <balise2>valeur20
      <balise3>valeur30</balise3>
    </balise2>
  </balise1>
</rootTag>
Images attachées
Type de fichier : jpg Capture01.jpg (61,5 Ko, 9 affichages)
souffle56 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/04/2011, 10h01   #2
Membre habitué
 
Inscription : août 2005
Messages : 117
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : août 2005
Messages : 117
Points : 145
Points : 145
C'est tout à fait possible en effet. Lorsque tu définis l'arbre XML dans "Paramètres simples", "Configure l'arbre XML" du tAdvancedFileOutputXML, tu indiques, pour chaque nœud, s'il s'agit d'un nœud enfant ou d'un attribut du nœud parent. (Clic droit sur le nœud parent puis "ajouter un sous élément pour un nœud enfant ou ajouter un attribut)
tetsu no tama est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/04/2011, 18h51   #3
Membre du Club
 
Inscription : août 2009
Messages : 177
Détails du profil
Informations personnelles :
Âge : 47
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 177
Points : 46
Points : 46
Merci tetsu no tama,
Effectivement, j'avais découvert cette possibilité d'insertion... Après, le hic, c'est au moment de l'élaboration de mon arbre XML; par exemple, quand j'en suis comme c'est décrit ci-dessous (image jointe), si je fais :
clic-droit sur "balise1"
puis "Ajouter un sous-élément" (en vue d'insérer "balise2"), là, il me demande si je veux débrancher l'élément existant, et là, du coup, je me retrouve dans l'impasse, je sais pas si tu vois le tableau ?

Du coup, il me semble que ce genre de manip que j'évoquais n'est pas envisageable, sur Talend; est-ce que je me trompe ?
Images attachées
Type de fichier : jpg Capt_110415_021605_001.jpg (120,4 Ko, 5 affichages)
souffle56 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/04/2011, 17h42   #4
Membre habitué
 
Inscription : août 2005
Messages : 117
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : août 2005
Messages : 117
Points : 145
Points : 145
L'arbre XML décrit dans ton premier POST est tout à fait réalisable avec Talend. Je viens de le faire sur mon TOS et ça passe très bien.

Ton message vient du fait que tu définis le mapping sur ta balise1 alors que tu dois définir le mapping sur un attribut de ta balise (comme tu l'as de toute façon spécifié dans ton premier post)

Voici comment définir le mapping de ton arbre XML pour générer le fichier XML désiré.
Images attachées
Type de fichier : jpg designXML.JPG (31,8 Ko, 4 affichages)
tetsu no tama est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h59.


 
 
 
 
Partenaires

Hébergement Web