Bonjour,
J'ai un petit problème avec du code XSL.
Je suis débutant à ce niveau et ne comprends pas tout.
Néanmoins il me semblait que mon code était plutôt bon.
j'ai un XML parfaitement valide qui contient:
je veux créer une table qui contient 3 colonne avec des <select>
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 <Metiers Name='Metiers'> <Metier Name='Software' Order='1'></Metier> <Metier Name='Validation' Order='2'></Metier> <Metier Name='Hardware' Order='3'></Metier> <Metier Name='Project' Order='1'></Metier> <Metier Name='Integration' Order='2'></Metier> <Metier Name='System Test' Order='3'></Metier> <Metier Name='Technical Support' Order='1'></Metier> <Metier Name='Marketing' Order='2'></Metier> <Metier Name='Quality' Order='3'></Metier> <Metier Name='Subcontracter' Order='1'></Metier> <Metier Name='Client' Order='2'></Metier> <Metier Name='Architecture' Order='3'></Metier> <Metier Name='Tools' Order='1'></Metier> </Metiers>
(d'où les Order pour ordonner les lignes/colonnes
je fais donc:
ce qui me semble logique...
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
25
26
27
28
29
30
31 <table> <tr align="left"> <xsl:template match="Metiers"> <xsl:for-each select="Metier"> <xsl:if test="@Order='3'"> </tr><tr align="left"> </xsl:if> <xsl:choose> <xsl:when test="$InputFile/Review/Metiers/Metier[@Name=$Name]='N'"> <td style="font-size:10pt;font-weight:bold">@Name</td> <td> <select id="@Name" name="@Name" style="font-size:8pt"> <option value="N" selected></option> <option value="Y">Yes</option> </select> </td> </xsl:when> <xsl:when test="$InputFile/Review/Metiers/Metier[@Name=$Name]='Y'"> <td style="font-size:10pt;font-weight:bold">@Name</td> <td> <select id="@Name" name="@Name" style="font-size:8pt"> <option value="N"></option> <option value="Y" selected>Yes</option> </select> </td> </xsl:when> </xsl:choose> </xsl:for-each> </xsl:template> </tr> </table>
$inputFile est un fichier XML contenant une sauvegarde du formulaire.
Que l'on veut récupérer en construisant le <select>
Pour le code qui nous intéresse:
or j'ai l'erreur suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <Metier Name='Software'>Y</Metier> <Metier Name='Project'>Y</Metier> <Metier Name='System Test'>N</Metier> <Metier Name='Technical Support'>N</Metier> <Metier Name='Subcontracter'>N</Metier>
qui correspond à la ligne en rouge.Fatal Error at (file /.../fic.xsl, line 294, column 32): Expected end of tag 'xsl:if'
SAXParseException Message is: Expected end of tag 'xsl:if' (/.../fic.xsl, line 294, column 32)
Tout le reste du xls fontionne.
Si je supprime le code écrit ci-dessus, j'ai mon document.
Je ne vois pas d'où vient l'erreur.
Quelqu'un la voit-il?
Merci d'avance pour votre aide.
Partager