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 :

Afficher données sur 2 colonnes [XSL-FO]


Sujet :

XSL/XSLT/XPATH XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juin 2009
    Messages
    237
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 237
    Par défaut Afficher données sur 2 colonnes
    Bonjour,

    J'ai un fichier XML de ce type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <A>
       <B><C>C1</C></B>
       <B><C>C2</C></B>
       <B><C>C3</C></B>
    </A>
    Je veux afficher ces données dans un tableau de 2 colonnes quelque soit le nombre de balise C
    Mon code xsl:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     <xsl:template match="A/B/C">
    	<xsl:if test="position() mod 2 = 1">
    		<fo:table-row>
    			<fo:table-cell>
    				<fo:block><xsl:value-of select="."/></fo:block>
    			</fo:table-cell>
    			<fo:table-cell>
    				<fo:block><xsl:value-of select="following-sibling::A/B/C[1]"/></fo:block>
    			</fo:table-cell>
    		</fo:table-row>
    	</xsl:if>
      </xsl:template>
    En résultat je n'arrive pas à récupérer la deuxième cellule ? Je gère mal le following-sibling


    Merci

  2. #2
    Membre éclairé
    Inscrit en
    Juin 2009
    Messages
    237
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 237
    Par défaut
    J'ai trouvé
    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
     
     <xsl:template match="A/B">
    	<xsl:if test="position() mod 2 = 1">
    		<fo:table-row>
    			<fo:table-cell>
    				<xsl:apply-templates select="C"/>
    			</fo:table-cell>
    			<fo:table-cell>
    			<xsl:apply-templates select="following-sibling::B[1]/C"/>
    			</fo:table-cell>
    		</fo:table-row>
    	</xsl:if>
      </xsl:template>
       <xsl:template match="C">
    		<fo:block><xsl:value-of select="."/></fo:block>
       </xsl:template>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ma listview affiche les données sur 3 colonnes
    Par beegees dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 25/05/2009, 10h46
  2. [PHP 5.0] Afficher les données sur trois colonnes
    Par dexter74 dans le forum Langage
    Réponses: 6
    Dernier message: 12/04/2009, 04h08
  3. Tableau croisé dynamique : données sur 2 colonnes
    Par damsmut dans le forum Excel
    Réponses: 2
    Dernier message: 23/09/2008, 14h55
  4. [CR XI] section detail - afficher les données sur plusieurs colonnes
    Par Flamby38 dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 26/09/2007, 14h44
  5. [XSLT~FO] formatage des données sur deux colonnes
    Par troisj dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 04/04/2007, 08h59

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