PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → saut d'un enregistrement lors de la suppression des lignes d'un champ table Windev
saut d'un enregistrement lors de la suppression des lignes d'un champ table Windev
Iniciado por axelkano01, 04,feb. 2020 10:08 - 2 respuestas
Publicado el 04,febrero 2020 - 10:08
Bonjour Chers DEV
j'ai un soucis au parcours des lignes de mon champs TABLE_REQ_Tous_les_dépotages.
J'ai remarqué qu'a chaque fois un enregistrement qui devrais être effacer reste dans mon tableau;
je vous sollicite donc pour me donner un coup de pousse...

[code:wl]
POUR j=1 A TableauOccurrence(gtabtriepost)
POUR TOUTE LIGNE DE TABLE_REQ_Tous_les_dépotages
Info("si "+gtabtriepost[j]+" = "+ TABLE_REQ_Tous_les_dépotages.COL_IDStationdedepotage_St)

SI gtabtriepost[j]=TABLE_REQ_Tous_les_dépotages.COL_IDStationdedepotage_St ALORS
Info("supprime "+TABLE_REQ_Tous_les_dépotages.COL_IDStationdedepotage_St)
TableSupprime(TABLE_REQ_Tous_les_dépotages)
FIN
FIN
FIN
/code]
Miembro registrado
324 mensajes
Publicado el 04,febrero 2020 - 13:16
Il faut inverser le parcours , tout est dans l'aide, avec le PAS -1 et le J du plus haut au plus bas, et comme ça rien à gérer tout est logique

C'est comme les proba en maths, faut prendre le problème à l'envers ;)

POUR j=TableauOccurrence(gtabtriepost) _A_ 1 PAS -1
POUR TOUTE LIGNE de TABLE_REQ_Tous_les_dépotages
Info("si "+gtabtriepost[j]+" = "+ TABLE_REQ_Tous_les_dépotages.COL_IDStationdedepotage_St)

SI gtabtriepost[j]=TABLE_REQ_Tous_les_dépotages.COL_IDStationdedepotage_St ALORS
Info("supprime "+TABLE_REQ_Tous_les_dépotages.COL_IDStationdedepotage_St)
TableSupprime(TABLE_REQ_Tous_les_dépotages)
FIN
FIN
FIN
Mensaje modificado, 04,febrero 2020 - 13:17
Miembro registrado
310 mensajes
Publicado el 04,febrero 2020 - 15:36
Bonjour,
La suppression d'une ligne de table implique la remontée des suivantes...donc lecture d'une ligne sur 2
En utilisant (par exemple) une boucle TANTQUE on peut contrôler l'indice pointé sur la table.

indi est un entier
POUR j=1 À TableauOccurrence(gtabtriepost)
indi = 1
TANTQUE indi<=TABLE_REQ_Tous_les_dépotages..Occurrence
TABLE_REQ_Tous_les_dépotages=indi //on se positionne sur la ligne de table
Info("si "+gtabtriepost[j]+" = "+ TABLE_REQ_Tous_les_dépotages.COL_IDStationdedepotage_St)

SI gtabtriepost[j]=TABLE_REQ_Tous_les_dépotages.COL_IDStationdedepotage_St ALORS
Info("supprime "+TABLE_REQ_Tous_les_dépotages.COL_IDStationdedepotage_St)
//soit on supprime et l'indice suivant reste le même ////////////////////////////////////////
TableSupprime(TABLE_REQ_Tous_les_dépotages)
SINON
//soit on avance //////////////////////////////////////////////////////////
indi++
FIN
FIN
FIN


bon dev