Bonjour,
permettez moi de poser ici un problème que je rencontre actuellement:

J'ai deux fichiers:

1- un fichier xml contenant des balises représentant des opérations (historiques)
2- un fichier de libelle spécifique pour certaines opérations (le commun entre les 2 fichiers est la référence de l'opération)

je charge le fichier de libellé dans mon xslt et parcours le tableau pour constitué la sortie.
Je fais un test pour savoir si la reference du noeud courant se retrouve dans le fichier de libelle ainsi je recupère le libellé situé dans le fichier pour affichage.
Voici mon code (la partie de la boucle):

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
<xsl:variable name="file-extrait-labels" select="'../../../../../../../../Ressources-bank/xml-xsl/EXTRAIT-10765280004-01102021-31122021.xml'" />
<xsl:variable name="table-extrait-labels" select="document($file-extrait-labels)/transactions-reals-labels" />
<table-movement struct="table">			
	 <xsl:for-each select="/ACCOUNT_EXTRACTION/MOVEMENT">
		<ligne struct="row">
			<mvt.date><xsl:value-of select="normalize-space (@MOVEMENT_DATE)" /></mvt.date>
			<mvt.ref><xsl:value-of select="normalize-space (@MOVEMENT_ACCOUNTING_RECORD)" /></mvt.ref>
 
			<xsl:choose>
				<xsl:when test="$table-extrait-labels/transaction[reference = @MOVEMENT_ACCOUNTING_RECORD]">
					<mvt.lib>
					   <xsl:value-of select="normalize-space ($table-extrait-labels/transaction[reference = @MOVEMENT_ACCOUNTING_RECORD]/label)"/>
					</mvt.lib>
				</xsl:when>
 
				<xsl:otherwise>
					<mvt.lib><xsl:value-of select="normalize-space (@MOVEMENT_DESCRIPTION)" /></mvt.lib>
					<xsl:choose>
						<xsl:when test="LABELS">
							<mvt.label><xsl:value-of select="concat(' - ', normalize-space (LABELS[1]/@LABEL))" /></mvt.label>
						</xsl:when>
						<xsl:otherwise>
							<mvt.label><xsl:value-of select="''" /></mvt.label>
						</xsl:otherwise>
					</xsl:choose>
				</xsl:otherwise>				
			</xsl:choose>
		</ligne>
	 </xsl:for-each>
</table-movement>
Le problème est que cela ne fonctionne pas malgré le fait que les référence sont bien existante dans le fichier de libellé.
Merci beaucoup pour votre aide.