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

WinDev Discussion :

nombre de résultat dans htrouve()


Sujet :

WinDev

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 17
    Points : 19
    Points
    19
    Par défaut nombre de résultat dans htrouve()
    Salut a tous je cherche a savoir combien il y a de résultat dans mon htrouve()
    il doit bien avoir une fonction qui fait ca bien non??
    Merci d'avance

    Marc

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 91
    Points : 70
    Points
    70
    Par défaut
    Je n'utilise jamais ce genre de fonction mais en regardant vite fait la doc je suis tombé sur ça : HLitRecherche(). Il doit y avoir moyen de parcourir les recherches avec ça, et donc de compter.

  3. #3
    R&B
    R&B est déconnecté
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Mars 2005
    Messages : 571
    Points : 1 263
    Points
    1 263
    Par défaut
    HTrouve() est le fruit d'une recherche.
    Si on a une recherche positive HTrouve donnera Vrai, sinon Faux.

    La quantité d'éléments correspondant à la recherche est possible de plusieurs manière.
    1- En fonctions Hxxx, comme documenté ici dans les notes de la recherche sur clés composée "2. Utilisation de la fonction HConstruitValClé"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    nPos est un entier // pointeur de position du premier élément
    nCompteur est un entier // compteur d'occurrence de la recherche
    HLitrecherchePremier(Fichier,Clé,Valeur)
    SI HTrouve(Fichier) ALORS
       nPos = HSauvePosition(Fichier)
       // on en a trouvé un est on est dessus
       TANTQUE HTrouve(fichier)
          nCompteur++
          HSuivant(Fichier,Clé)
       FIN
       // revient tu premier
       HRetourPosition(nPos)
       info("Nombre trouvé : "+nCompteur)
    FIN
    Note : une variante passerait avec un filtre

    2- en SQL
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    nCompteur est un entier // compteur d'occurrence de la recherche
    cSQL est une chaine = "SELECT COUNT(*) AS NB FROM Fichier WHERE Cle = '"+Valeur+"'"
    sSQL est une source de données
    SI HExecuteRequeteSQL(sSQL,hrequetedefaut,cSQL) alors
       SI HLitPremier(sSQL) ALORS
          Compteur = sSQL.NB
       FIN
       HLibèreRequête(sSQL)
    FIN
    Info("Nombre trouvé : "+nCompteur)
    Attention aux recherches identiques ou génériques sinon cela ne devrait pas être un problème.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 198
    Points : 185
    Points
    185
    Par défaut
    Si tu utilises les requetes SQL, t'as une petite variante avec HNbEnr

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    requete est une Source de Données
    HExécuteRequêteSQL(requete,"SELECT * FROM Ville WHERE Nom LIKE 'Saint%'")
    HLitPremier(requete)
    SI HTrouve(requete) ALORS
    	Info("Nombre de ville répondant à la requete  : "+HNbEnr(requete))
    SINON
    	Info("Aucune Ville trouvée !")
    FIN
    Tu peux aussi faire avec HLitRecherche au lieu de HLitRecherchePremier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    HLitRecherche(Ville,Nom,"Saint")
    compteur est un entier
    TANTQUE HTrouve
    	compteur+=1
    	HLitSuivant(Ville)
    FIN
    Info("Nombre de ville: "+compteur)
    Bref .... tu as plein de solutions ..

Discussions similaires

  1. Réponses: 5
    Dernier message: 06/02/2014, 20h43
  2. [Vxi3] Nombre de résultats dans tableau avec filtre
    Par Elsa1 dans le forum Webi
    Réponses: 13
    Dernier message: 22/12/2011, 14h25
  3. DOM : saisir le nombre de résultats dans google scholar
    Par thibaud74 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 22/07/2010, 16h26
  4. Nombre de résultats dans un tableau
    Par Dam'$ dans le forum Langage
    Réponses: 5
    Dernier message: 15/12/2009, 15h00
  5. Nombre de décimal dans résultat en utilisant jxlapi
    Par Ichigo-BaKa dans le forum Documents
    Réponses: 1
    Dernier message: 11/06/2007, 15h12

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