Probleme transformation xslt - XML/XSL - Programmation
Marsh Posté le 27-03-2009 à 17:59:44
http://www.w3.org/TR/xpath#function-sum
Marsh Posté le 27-03-2009 à 19:01:04
J'ai essayé des choses du style :
<xsl:choose>
<xsl:when test="//type[.='Debit']">
<xsl:value-of select="sum(//Montant)"/>
</xsl:when >
</xsl:choose>
mais sa ne marche pas
Marsh Posté le 27-03-2009 à 19:15:43
Toukiii a écrit : J'ai essayé des choses du style : <xsl:choose> mais sa ne marche pas |
Normal, c'est n'importe quoi. XSLT, c'est pas du C ou du Java, c'est un langage fonctionnel basé sur des sélections et des templates.
Ici, tu peux récupérer chaque somme avec un unique xsl:value-of.
Commences par te demander comment sélectionner tous les Montant depuis ta racine (/)
Marsh Posté le 31-03-2009 à 21:19:41
Pour sélectionner tout les montant je fait : sum(//Operation/Montant)
sa marche tres bien.
Parcontre pour sélectionner les montants quand type est égal à debit j'ai essayé : sum(//Operation[type ='Debit']/Montant) .
Mais sa ne marche toujours pas..
Marsh Posté le 31-03-2009 à 21:26:08
Chez moi ça marche
Marsh Posté le 27-03-2009 à 16:35:03
Bonjour,
alors voilà j'enregistre dans un fichier XML des informations sur une opération :
<?xml version="1.0" encoding="UTF-8"?>
<Finance>
<Operation numero_Operation="1">
<type>Debit</type>
<date>12-12-2008</date>
<Tiers>JEAN BERNARD</Tiers>
<Categorie>Automobile</Categorie>
<Montant>55</Montant>
</Operation>
<Operation numero_Operation="2">
<type>Credit</type>
<date>01-01-2009</date>
<Tiers>JACQUES</Tiers>
<Categorie>Frais bancaire</Categorie>
<Montant>150</Montant>
</Operation>
</Finance>
J'arrive à afficher l'ensemble de ces informations dans un tableau grâce à mon fichier xslt.
Maintenant j'aimerai pouvoir avoir le total du montant correspondant aux opérations de débits, et pareil pour les opérations de crédits. J'ai essayé plusieurs méthodes mais je n'y arrive pas je débute avec le XML et xslt.
Si quelqu'un peut m'aider =)
Merci