FORUMS PROFESSIONNELS
WINDEV
,
WEBDEV
et
WINDEV Mobile
Accueil
|
Messages récents
|
Connexion
|
Déconnexion
|
Français
Accueil
→
WINDEV (précédentes versions)
→
Comptage des lignes affichées dans une table hiérarchique mémoire
Comptage des lignes affichées dans une table hiérarchique mémoire
Débuté par GpEp, 15 juil. 2019 12:18 - 2 réponses
Connectez-vous…
GpEp
#1
Membre enregistré
45 messages
Posté le 15 juillet 2019 - 12:18
Bonjour à tous
Je veux tout simplement afficher le nombre de lignes déroulées affichées d'une table hiérarchique mémoire.
J'utilise donc la fonction suivante mais le résultat est erroné.
STotalLignes = TableOccurrence(TableHierarchique1,toVisible)
J'ai essayé les options toAffichée, toVisible, et toTotal : elles donnent des valeurs erronées ou le total des lignes chargées dans la table.
J'ai essayé aussi de lire les lignes :
Toutes les lignes sont lues mais à la lecture rien ne différencie les lignes affichées de celles cachées.
Merci pour votre aide
Signaler
0
0
midou23175
#2
Membre enregistré
46 messages
Popularité : -1 (9 votes)
Posté le 17 juillet 2019 - 14:57
Bonjour,
POUR i
=
1
_A_
TableOccurrence
(
MaTABLEH
)
n
TotLigne_Déroulé
+
=
TableFilsOccurrence
(
MaTABLEH
,i)
FIN
Trace
(
n
TotLigne_Déroulé
)
Message modifié, 17 juillet 2019 - 14:57
Signaler
0
0
GpEp
#3
Membre enregistré
45 messages
Posté le 17 juillet 2019 - 16:30
midou23175 a écrit :
Bonjour,
POUR i=1 _A_ TableOccurrence(MaTABLEH)
nTotLigne_Déroulé+=TableFilsOccurrence(MaTABLEH,i)
FIN
Trace(nTotLigne_Déroulé)
Message modifié, 17 juillet 2019 - 14:57
Bonjour,
Merci pour ta réponse mais elle ne fonctionne pas.
En effet lorsqu'on lit directement les fils on les a toujours tous ( déroulé ou enroulé )
J'ai donc écris la procédure suivante qui fonctionne en utilisant la liste des parents qui contient les noeuds correspondant au fils de la table.
WTotDeroule est un entier = 0
NbT est un entier = ListeParents..Occurrence
WNbDeroule est un tableau de NbT entiers
// on met a zero le tableau
POUR I = 1 À ListeParents..Occurrence
WNbDeroule[I] = 0
FIN
WTypeLigne est un entier
// on verifie le nombre de noeuds déroulés
POUR I = 1 À ListeParents..Occurrence
// -1 taErreur : Trace("Le noeud n'existe pas.")
// 1 taDéroule : Trace("Le noeud est déroulé.")
// 2 taEnroule : Trace("Le noeud est enroulé.")
WTypeNoeud = ListeParents[I]
WTypeLigne = TableEtatElément(TableHierarchique1,WTypeNoeud)
SI WTypeLigne = taDéroule ALORS
WTotDeroule ++
WNbDeroule[I] = I
FIN
FIN
// on cumule les compteurs des noeuds déroulés
WCumulLignes est un entier = 0
POUR I = 1 À ListeParents..Occurrence
SI WNbDeroule[I] > 0
WCumulLignes = WCumulLignes + WCtrParBranche [I]
FIN
FIN
STotalLignes = WCumulLignes
Cette procédure fait la somme des branches déroulées.
S'il y a plus simple à faire je suis preneur.
En tous cas je te remercie pour ton aide
>
Signaler
0
0
→ Revenir à WINDEV (précédentes versions)
WINDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
WEBDEV (précédentes versions)
WINDEV Mobile (précédentes versions)
Etats & Requêtes
Hors-sujet
Outils
Français
English
Español
Portuguesa
Fermer cette fenêtre
Type de recherche
Uniquement les sujets
Tous les messages
Période de recherche
Date indifférente
Moins d'une heure
Moins de 24 heures
Moins d'une semaine
Moins d'un mois
Moins d'un an
Annuler
Aperçu de votre message
Ajouter une image
Importer une image depuis une URL
Envoyer une image depuis un fichier de votre disque
Déposez ici un fichier ou cliquez sur "Parcourir..."
ou
Annuler
0%
WLangage
SQL
XML, HTML
JAVA, Javascript
Texte