Bonjour,
Voici mon fichier XML :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
<?xml version="1.0" encoding="UTF-8"?>
<datasets>
  <dataset name="Entete" type="1">
    <record date="05/04/2007" ref="2007-878-1" chauffeur="Nom du chauffeur" />
  </dataset>
  <dataset name="Client" type="1">
    <record nom="nom" adresse1="ADRESSE1" adresse2="ADRESSE2" code_postal="CP" commune="COMMUNE" />
  </dataset>
  <dataset name="AgrImmob" type="n">
    <record num="0090" rep="N" />
    <!-- ... -->
  </dataset>
  <dataset name="Palettes" type="n">
    <record num="2614" vrac="N" verif="O" />
    <record num="2862" vrac="O" verif="O" />
  </dataset>
  <dataset name="Pupitres" type="n">
    <record num="1167" vrac="N" verif="O" />
    <record num="1760" vrac="N" verif="O" />
    <record num="5627" vrac="N" verif="O" />
    <record num="9999" vrac="O" verif="N" />
  </dataset>
</datasets>
Avec une seule expression XPATH, je souhaiterais récuperer les numéros des palettes et des pupitres qui ont été vérifiés (verif="O")
Comment faire ?
J'ai essayé d'appliquer le code de cette discussion:
http://www.developpez.net/forums/showthread.php?t=98529 à mon exemple, ce qui donne (filtre XSLT pour OOo) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
<fus:template name="section_N11235">
 <text:p text:style-name="P26">
  <fus:value-of select="@num"/>
 </text:p>
</fus:template>
<!-- ... -->
<fus:for-each select="/datasets/dataset[@name='[starts-with(name(),'P')]']/record[@verif='O']">
 <fus:call-template name="section_N11235"/>
</fus:for-each>
Mais ça ne marche pas, OOo plante même lors de l'import d'un fichier XML.
Quelqu'un peut-il m'aider ?
Merci beaucoup !