Messieurs Dames, bien le bonjour.
Je viens de rencontrer un problème sur une génération de fichier à partir de XSL, sachant que je ne peux pas influer sur la structure des données (je le regrette... )
Bref, après avoir tourné mon problème dans tous les sens, ma solution serait de pouvoir appliquer un filtre que je construit sur une liste de nœuds.
Reste à savoir si c'est possible, et c'est là que vous intervenez !
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
<xsl:template name="MonTemplate">
<xsl:param name="laReference"/>
<xsl:param name="laRupture"/>
<xsl:variable name="lOrdreMax" select="$laRupture/vol_ordre"/>
<xsl:variable name="leFiltre">
<xsl:for-each select="/ruptures">
<xsl:if test="./vol_ordre <= $lOrdreMax">
<xsl:variable name="laClef" select="./vol_clef"/>
[<xsl:value-of select="$laClef"/>='<xsl:value-of select="$laReference/*[name() = $laClef]"/>']
</xsl:if>
</xsl:for-each>
</xsl:variable>
<xsl:variable name="lesLignes" select="$lignes $leFiltre" />
<xsl:value-of select="$lesLignes"/>
(...)
</xsl:template> |
Synthèse :
La variable "leFiltre" est construite dynamiquement et ressemble à
[champ1=truc][champ2=machin]
avec un nombre de critères dynamique.
Mon souci : filtrer les nœuds compris dans "$lignes" (déclaré ailleurs) suivant ce filtre (j'ai mis n'importe quoi dans le code ci-dessus...).
Mes questions :
Est-ce possible ?
Si oui, comment ?
Merci pour toute piste de résolution et bonne journée à vous.
G.
Partager