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 :

[XSLT] Compter avec conditions


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Candidat au Club
    Inscrit en
    Octobre 2007
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut [XSLT] Compter avec conditions
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?xml version="1.0" encoding="UTF-8" ?> 
    - <xml>
    - <elu lecteur="XSD" mode="0">
      <profil id="114412" etat="0" etat_report="0-pas de report" signature="1113304002003_T_LECTURE_12_20071001_044410" ajout_bible="non" id_report="" gratuit="non" super_prio="non" />   
     
    - <profil id="132405" etat="1" etat_report="0-pas de report" signature="1113304002003_T_LECTURE_12_20071001_044619" ajout_bible="non" id_report="" gratuit="non" super_prio="non">
      </profil>
     
      <profil id="132404" etat="1" etat_report="0-pas de report" signature="1113304002003_T_LECTURE_12_20071001_044651" ajout_bible="non" id_report="" gratuit="non" super_prio="non">
      </profil>
      <profil id="132405" etat="0" etat_report="0-pas de report" signature="1113304002003_T_LECTURE_12_20071001_044619" ajout_bible="non" id_report="" gratuit="non" super_prio="non" />
    Je veux compter avec la commande count tous les profils id avec etat="1" mais je dois retrancher un profil si derrière on a etat="0" qui correspond à une annulation.
    Comment faire pour déduire le profil 132405 alors ?
    La clé étant le profil id.

    J'utilise pour le moment
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:value-of select="count(//@etat[contains(.,'1')])"/> mais je ne sais pas
    comment faire.

    Merci d'avance.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 466
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 466
    Points : 1 610
    Points
    1 610
    Par défaut
    Salut,
    Un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:value-of select="count(//profil[@etat='1' and following::profil[1]/@etat!='0'])"/>

  3. #3
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Points : 4 314
    Points
    4 314
    Par défaut
    Le monde est bien fait!

    J'étais venu pour poser une question similaire et grâce à ce post (plus un peu de réflexion et quelques adaptation), j'ai eu ma réponse.

    Merci à vous deux donc

Discussions similaires

  1. compter avec condition
    Par stéphanie123 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 03/02/2010, 20h04
  2. Compter le nombre d'entrée avec condition
    Par Seta-san dans le forum Langage
    Réponses: 5
    Dernier message: 17/02/2009, 12h20
  3. Compter avec condition dans une requête
    Par CHINAILLON dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 10/04/2008, 14h50
  4. [XSLT] SELECT avec condition
    Par olbouss dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 03/04/2008, 10h10
  5. [XSLT]copie partielle avec condition sur les axes
    Par MasterOfChakhaL dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 13/10/2006, 19h15

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