FORUMS PROFESSIONNELS
WINDEV
,
WEBDEV
et
WINDEV Mobile
Accueil
|
Messages récents
|
Connexion
|
Déconnexion
|
Français
Accueil
→
WINDEV (précédentes versions)
→
Parcours de table inversé
Parcours de table inversé
Débuté par Alain, 13 juin 2013 14:38 - 5 réponses
Connectez-vous…
Alain
#1
Posté le 13 juin 2013 - 14:38
Bonjour à tous,
Je constate que pour faire des extractions ou d'autres opérations, certain d'entre vous parcours les tables depuis le bas de ces dernières.
J'ai cherché mais je n'ai pas trouvé la raison de ce parcours inversé.
Quelqu'un pourrait il m'éclairer.
Merci de vos réponses.
Alain
Signaler
0
0
Erick BAVUT
#2
Membre enregistré
111 messages
Popularité : +13 (13 votes)
Posté le 13 juin 2013 - 17:19
Bonjour
C'est surtout pratique dans le cas de suppressions en chaine dans une table multisélection (avant l'apparition de TableSupprimeSélect)
--
A+
Erick
Signaler
0
0
Fabrice Harari
#3
Posté le 13 juin 2013 - 20:34
Bonjour Alain
la raison est le changement d'indice de ligne selon les opération
effectuées :
- si on supprime une ligne de la table dans la boucle de parcours,
toutes les lignes qui suivent ont donc leur indice décrémenté, et il
faut soit ne pas incrémenter l'indice de parcours dans la boucle ou
parcourir de bas en haut, faute de quoi on saute/évite la ligne suivante
- si on insère une ligne dans la table dans la boucle, les indices sont
maintenant incrémentés, et la valeur de fin de boucle est fausse... En
parcourant à l'envers, la fin de la table a déjà été traitée et ca ne
pose donc pas de problème
Cordialement
--
Fabrice Harari
Consultant WinDev, WebDev et WinDev Mobile International
Nouveau site web (EXPERIMENTAL)
http://www.fabriceharari.eu
(Plus d'information sur
http://fabriceharari.com/index_FR.html
)
On 6/13/2013 6:38 AM, Alain wrote:
Bonjour à tous,
Je constate que pour faire des extractions ou d'autres opérations,
certain d'entre vous parcours les tables depuis le bas de ces dernières.
J'ai cherché mais je n'ai pas trouvé la raison de ce parcours inversé.
Quelqu'un pourrait il m'éclairer.
Merci de vos réponses.
Alain
Signaler
0
0
Alain
#4
Posté le 14 juin 2013 - 08:37
Bonjour,
Merci de vos réponses.
Mais alors quelle difference entre parcourrir une table avec:
i est un
entier
Pour i
=
1
a
TableOccurrence
(
Matable
)
//traitement
FIN
et
n
Indice est un
entier
POUR
TOUTE LIGNE
n
Indice DE Matable
//traitement
FIN
Avec 'POUR TOUTE LIGNE' est il possible d'inverser le parcours de la table, si oui comment.
Alain
Signaler
0
0
Thomas
#5
Posté le 24 avril 2014 - 15:44
Réponse tardive, mais j'ai également eu besoin de faire cette opération.
Il faut tout simplement parcourir à l'ancienne
sans se servir des fonction Windev.
b est un entier = TableauOccurrence(MonTableau ou Matable)
TANTQUE b >= 1
SI MonTableau [b,9] <> de valeurAttendue ALORS
TableauSupprimeLigne(MonTableau,b)
FIN
b--
FIN
Signaler
0
0
Camus HADDAD ( depem
#6
Membre enregistré
841 messages
Popularité : +19 (27 votes)
Posté le 28 avril 2014 - 08:43
ou plus simplement
POUR x
=
TableOccurrence
(
table
)
à
1
PAS
-
1
TableSupprime
(
table
,x)
FIN
--
Miro
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