IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XSL/XSLT/XPATH XML Discussion :

Affichage de données depuis un XML


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre du Club
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Juillet 2009
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 29
    Points : 47
    Points
    47
    Par défaut Affichage de données depuis un XML
    Bonjour,

    Je sèche depuis un moment, c'est pourquoi je viens demander de l'aide !

    J'ai un XML tel que ci-dessous :

    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
     
    <matiere ref="..." type="matiere">
    </matiere>
    <matiere ref="..." type="matiere">
    </matiere>
    <matiere ref="..." type="matiere">
    </matiere>
    <matiere ref="..." type="matiere">
    </matiere>
    <matiere ref="1737504552" type="matiere"><ref-hierarchique>169516879,477455173,1737504471,1737504552</ref-hierarchique>
    	<ordre>DIPL2_ANG</ordre>
    	<code langue="fr">DIPL2_ANG</code>
    	<code-plan langue="fr">7012</code-plan>
    	<libelle langue="fr">Diplôme 2 Anglais</libelle>
    	<details>
    		<detail id="1737504813" synthese="1">
    			<inscription-matiere id="1737504812"/>
    			<libcode langue="fr"/>
    			<libelle langue="fr">Synthèse</libelle>
    			<colonne source="BULL-COLONNE" no="3" langue="fr">60:Semestre 6</colonne>
    			<colonne source="NOTE" no="5" langue="fr">Acquis</colonne>
    		</detail>
    	</details>
    </matiere>
    J'aimerais afficher le libellé : "Diplôme 2 Anglais" aux conditions suivantes :

    " code-plan langue="fr" " doit être plus grand que 7000

    et

    "colonne source="NOTE" no="5" langue="fr" " doit être "Aquis"

    Ce que j'ai réalisé comme cela :

    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
     
    <xsl:choose>
                    <xsl:when test="(matiere/details/detail/colonne[@source='NOTE']/text() = 'Acquis')" >
                   <!--     <xsl:variable name="libelle_diplome" select="matiere/libelle[@langue='fr']/text()"/>    -->
                        <fo:table>
                            <fo:table-column column-width="4cm"/>
                            <fo:table-column column-width="6cm"/>
                            <fo:table-body>
                                <fo:table-row height="100%">
                                    <fo:table-cell text-align="left"  >
                                        <xsl:call-template name="diplom-language-label"/>
                                        <fo:block>
                                            <fo:inline>Diplôme de langue :</fo:inline>
                                        </fo:block>
                                    </fo:table-cell>
                                    <fo:table-cell>
                                        <xsl:call-template name="diplom-language-value"/>
                                        <fo:block>
                                            <xsl:apply-templates match="matiere" />
                                                <xsl:if test="code-plan[@langue='fr']/text() &gt; 7000">
                                                <xsl:value-of select="libelle[@langue='fr']/text()"/>  <!-- on se trouve ici en haut de la liste des libellés -->
                                                </xsl:if>
                                        </fo:block>
                                    </fo:table-cell>
                                </fo:table-row>
                            </fo:table-body>
                        </fo:table>
                    </xsl:when>    
                <xsl:otherwise>
                </xsl:otherwise>
                </xsl:choose>
    Le texte "Diplome de langue" s'affiche sans problèmes, mais ensuite,il n'arrive pas à me sortir le libellé "Diplôme 2 Anglais", il prend toujours le premier libellé qu'il trouve dans la première balise "matière"...
    Comment le faire redescendre au niveau du libellé du Diplôme ???

    Je me doute bien qu'il faudrait lui mettre un template pour lui dire de redescendre dans le XML, mais je ne vois malheureusement pas trop comment !
    Merci d'avance si vous vous penchez sur mon problème ( par une belle journée pluvieuse, j'ai un peu d'espoir )

    Nicolas

  2. #2
    Expert confirmé
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Points : 4 845
    Points
    4 845
    Par défaut
    Je ne sais pas comment doit être ton tableau généré, mais dans le cas d'une ligne par matière, il est préférable de générer chaque ligne dans le template matière.

    De même, les conditions colonne[@source='NOTE'] = 'Acquis' et code-plan[@langue='fr'] &gt; 7000 ont leur place dans ce template-là.

Discussions similaires

  1. Problème d'affichage des données depuis un Listview
    Par cadeau10 dans le forum Composants graphiques
    Réponses: 2
    Dernier message: 13/05/2011, 14h42
  2. extraire données depuis fichier xml
    Par seeif dans le forum Format d'échange (XML, JSON...)
    Réponses: 6
    Dernier message: 10/07/2009, 10h18
  3. Recupération de données depuis un XML
    Par levit dans le forum Flash
    Réponses: 6
    Dernier message: 01/02/2007, 23h22
  4. JAVA - XML - Affichage des données triées
    Par TheReturnOfMuton dans le forum Format d'échange (XML, JSON...)
    Réponses: 6
    Dernier message: 05/07/2006, 11h14
  5. probleme d'affichage de données XML avec XSL
    Par sundjata dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 08/06/2006, 18h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo