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 09/02/2011, 13h39   #1
Invité de passage
 
Inscription : février 2011
Messages : 5
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 5
Points : 1
Points : 1
Par défaut tFileInputXML & Xpath

bonjour

mon xml est le suivant:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<partenaires>
<item>
<nom class="String">p1</nom> 
</item>
<item>
<nom class="String">p2</nom> 
</item>
<item>
<nom class="String">p3</nom> 
</item>
</partenaires>
 
<acitivites>
<item>
<partenairesTEST>
<item>
<typeApport>
<ouiNon class="String">Non</ouiNon> 
</typeApport>
</item>
<item>
<typeApport>
<ouiNon class="String">Oui</ouiNon> 
</typeApport>
</item>
<item>
<typeApport>
<ouiNon class="String">Non</ouiNon> 
</typeApport>
</item>
</partenairesTEST>
</item>
</acitivites>
pour chacun des partenairesTEST/item d'une activité, on définit la valeur d'un flag "ouiNon" pour le partenaires/item ayant le même numéro d'ordre sous le noeud partenaires

le mapping
"../../../../partenaires/item[position()=count(preceding-sibling::item)+1]/nom"

ne fonctionne pas car le "count" me renvoie 0

en testant séparément avec XSLT et XML, cela fonctionne si j'ajoute la fonction current() au même mapping:

<xsl:value-of select="../../../../partenaires/item[position()=count(current()/preceding-sibling::item)+1]/nom"/>

hélas, XPath (utilisé dans Talend) ne reconnait pas la fonction "current()"

avec le "." à la place de la fonction "current()", j'obtiens le même résultat

une idée?

merci d'avance
spw71 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 06h22.


 
 
 
 
Partenaires

Hébergement Web