Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[WD10] Problème avec une liste

4 réponses
Avatar
Pascal ROY
Bonjour,
Voila j'ai un soucis avec une liste

Voila le code de remplissage (place dans l'init de la fenêtre)

ListeSupprimeTout(LST_FamArt) //Pour être sûr qu'elle soit vide
Info( "Nombre de famille = "+LST_FamArt..Occurrence) //Me renvoie 0, c'est normal !
HLitPremier(FAMART,CODFAM)
TANTQUE PAS H.EnDehors
ListeAjoute(LST_FamArt,FAMART.NOMFAM+gLien(NumériqueVersChaîne(
FAMART.CODFAM, "05d")))
HLitSuivant(FAMART,CODFAM)
FIN
Info( "Nombre de famille = "+LST_FamArt..Occurrence) //Me renvoie 972, ce qui
est normal aussi
gLienActive(LST_FamArt, Vrai)

Mon problème se passe apres. En effet la liste semble être vide ( que des lignes
blanches !)
En fait, en déroulant l'ascenseur je retrouve mes familles articles tres tres loin !
Si je clique sur une famille le code de sélection se plante

CODE : Message( LST_FamArt[ LST_FamArt..Valeur])

En disant que l'indice (un tres gros chiffre genre 12451) est endehors des
limites que l'indice doit être
entre 1 et 972 !

J'ai supprimé le dossier CPL, et effectuer une recompile, mais j'ai toujours le
même soucis.
J'ai défilé tout le code et l'init de la fenêtre est bien le seul endroit ou
j'effectue un ajout dans
la liste !

Bref, je ne comprend rien !
QQun a une idée ?
Merci d'avance

--
Pascal ROY
(Service Informatique - SODALEC)

4 réponses

Avatar
alain
fait un peu une trace de glien(...) et dis moi ce que ca donne

je me demande s il n y a pas prob a ce niveau

alain

"Pascal ROY" a écrit dans le message de news:
f33n4b$l1t$
Bonjour,
Voila j'ai un soucis avec une liste

Voila le code de remplissage (place dans l'init de la fenêtre)

ListeSupprimeTout(LST_FamArt) //Pour être sûr qu'elle soit vide
Info( "Nombre de famille = "+LST_FamArt..Occurrence) //Me renvoie 0, c'est
normal !
HLitPremier(FAMART,CODFAM)
TANTQUE PAS H.EnDehors
ListeAjoute(LST_FamArt,FAMART.NOMFAM+gLien(NumériqueVersChaîne(
FAMART.CODFAM, "05d")))
HLitSuivant(FAMART,CODFAM)
FIN
Info( "Nombre de famille = "+LST_FamArt..Occurrence) //Me renvoie 972, ce
qui est normal aussi
gLienActive(LST_FamArt, Vrai)

Mon problème se passe apres. En effet la liste semble être vide ( que des
lignes blanches !)
En fait, en déroulant l'ascenseur je retrouve mes familles articles tres
tres loin !
Si je clique sur une famille le code de sélection se plante

CODE : Message( LST_FamArt[ LST_FamArt..Valeur])

En disant que l'indice (un tres gros chiffre genre 12451) est endehors des
limites que l'indice doit être
entre 1 et 972 !

J'ai supprimé le dossier CPL, et effectuer une recompile, mais j'ai
toujours le même soucis.
J'ai défilé tout le code et l'init de la fenêtre est bien le seul endroit
ou j'effectue un ajout dans
la liste !

Bref, je ne comprend rien !
QQun a une idée ?
Merci d'avance

--
Pascal ROY
(Service Informatique - SODALEC)


Avatar
Pascal ROY
OK, j'ai compris !

Il y a des enregistrements dont le libelle (NOMFAM) est vide.
Et comme la liste est triée, ils retrouvent au début.

Ensuite, je pense que LST_FAM..Valeur renvoie la valeur du gLien
qui par ailleurs est correct (ca donne une flèche vers la gauche puis k puis le
code puis k puis une flèche vers la gauche.)

Donc, le probleme est déporté à : Comment récuperer l'indice de la liste
si gLien est actif ?


alain a écrit :
fait un peu une trace de glien(...) et dis moi ce que ca donne

je me demande s il n y a pas prob a ce niveau

alain

"Pascal ROY" a écrit dans le message de news:
f33n4b$l1t$
Bonjour,
Voila j'ai un soucis avec une liste

Voila le code de remplissage (place dans l'init de la fenêtre)

ListeSupprimeTout(LST_FamArt) //Pour être sûr qu'elle soit vide
Info( "Nombre de famille = "+LST_FamArt..Occurrence) //Me renvoie 0, c'est
normal !
HLitPremier(FAMART,CODFAM)
TANTQUE PAS H.EnDehors
ListeAjoute(LST_FamArt,FAMART.NOMFAM+gLien(NumériqueVersChaîne(
FAMART.CODFAM, "05d")))
HLitSuivant(FAMART,CODFAM)
FIN
Info( "Nombre de famille = "+LST_FamArt..Occurrence) //Me renvoie 972, ce
qui est normal aussi
gLienActive(LST_FamArt, Vrai)

Mon problème se passe apres. En effet la liste semble être vide ( que des
lignes blanches !)
En fait, en déroulant l'ascenseur je retrouve mes familles articles tres
tres loin !
Si je clique sur une famille le code de sélection se plante

CODE : Message( LST_FamArt[ LST_FamArt..Valeur])

En disant que l'indice (un tres gros chiffre genre 12451) est endehors des
limites que l'indice doit être
entre 1 et 972 !

J'ai supprimé le dossier CPL, et effectuer une recompile, mais j'ai
toujours le même soucis.
J'ai défilé tout le code et l'init de la fenêtre est bien le seul endroit
ou j'effectue un ajout dans
la liste !

Bref, je ne comprend rien !
QQun a une idée ?
Merci d'avance

--
Pascal ROY
(Service Informatique - SODALEC)








--
Pascal ROY
(Service Informatique - SODALEC)
Avatar
JeAn-PhI
Pascal ROY a émis l'idée suivante :
OK, j'ai compris !

Il y a des enregistrements dont le libelle (NOMFAM) est vide.
Et comme la liste est triée, ils retrouvent au début.

Ensuite, je pense que LST_FAM..Valeur renvoie la valeur du gLien
qui par ailleurs est correct (ca donne une flèche vers la gauche puis k puis
le code puis k puis une flèche vers la gauche.)

Donc, le probleme est déporté à : Comment récuperer l'indice de la liste
si gLien est actif ?


alain a écrit :
fait un peu une trace de glien(...) et dis moi ce que ca donne

je me demande s il n y a pas prob a ce niveau

alain

"Pascal ROY" a écrit dans le message de news:
f33n4b$l1t$
Bonjour,
Voila j'ai un soucis avec une liste

Voila le code de remplissage (place dans l'init de la fenêtre)

ListeSupprimeTout(LST_FamArt) //Pour être sûr qu'elle soit vide
Info( "Nombre de famille = "+LST_FamArt..Occurrence) //Me renvoie 0, c'est
normal !
HLitPremier(FAMART,CODFAM)
TANTQUE PAS H.EnDehors
ListeAjoute(LST_FamArt,FAMART.NOMFAM+gLien(NumériqueVersChaîne(
FAMART.CODFAM, "05d")))
HLitSuivant(FAMART,CODFAM)
FIN
Info( "Nombre de famille = "+LST_FamArt..Occurrence) //Me renvoie 972, ce
qui est normal aussi
gLienActive(LST_FamArt, Vrai)

Mon problème se passe apres. En effet la liste semble être vide ( que des
lignes blanches !)
En fait, en déroulant l'ascenseur je retrouve mes familles articles tres
tres loin !
Si je clique sur une famille le code de sélection se plante

CODE : Message( LST_FamArt[ LST_FamArt..Valeur])

En disant que l'indice (un tres gros chiffre genre 12451) est endehors des
limites que l'indice doit être
entre 1 et 972 !

J'ai supprimé le dossier CPL, et effectuer une recompile, mais j'ai
toujours le même soucis.
J'ai défilé tout le code et l'init de la fenêtre est bien le seul endroit
ou j'effectue un ajout dans
la liste !

Bref, je ne comprend rien !
QQun a une idée ?
Merci d'avance

-- Pascal ROY
(Service Informatique - SODALEC)









listeselect() doit renvoyer l'indice
LST..Valeur renvoie la valeur mémorisé (gLien ou Rub mémorisé dans le
cas d'une liste fichier)
LST..ValeurAffichée renvoie la valeur textuelle de la ligne
sélectionnée

--
Cordialement JeAn-PhI
Avatar
Pascal ROY
Pascal ROY a écrit :
Bonjour,
Voila j'ai un soucis avec une liste

Voila le code de remplissage (place dans l'init de la fenêtre)

ListeSupprimeTout(LST_FamArt) //Pour être sûr qu'elle soit vide
Info( "Nombre de famille = "+LST_FamArt..Occurrence) //Me renvoie 0,
c'est normal !
HLitPremier(FAMART,CODFAM)
TANTQUE PAS H.EnDehors
ListeAjoute(LST_FamArt,FAMART.NOMFAM+gLien(NumériqueVersChaîne(
FAMART.CODFAM, "05d")))
HLitSuivant(FAMART,CODFAM)
FIN
Info( "Nombre de famille = "+LST_FamArt..Occurrence) //Me renvoie 972,
ce qui est normal aussi
gLienActive(LST_FamArt, Vrai)

Mon problème se passe apres. En effet la liste semble être vide ( que
des lignes blanches !)
En fait, en déroulant l'ascenseur je retrouve mes familles articles tres
tres loin !
Si je clique sur une famille le code de sélection se plante

CODE : Message( LST_FamArt[ LST_FamArt..Valeur])

En disant que l'indice (un tres gros chiffre genre 12451) est endehors
des limites que l'indice doit être
entre 1 et 972 !

J'ai supprimé le dossier CPL, et effectuer une recompile, mais j'ai
toujours le même soucis.
J'ai défilé tout le code et l'init de la fenêtre est bien le seul
endroit ou j'effectue un ajout dans
la liste !

Bref, je ne comprend rien !
QQun a une idée ?
Merci d'avance



Bonjour à tous,

Bon le problème est solutionné !

En fait tout venait du fait que dans la description de la liste
j'avais coché "Retourne la valeur spécifiée avec la fonction gLien"

A partir de ce moment la liste ne s'occupe plus de la fonction
gLienActive et renvoie systématiquement la valeur de gLien
dans le champ NOMLISTE ou NOMLISTE..valeur

Je ne sais si ce comportement est normal ou s'il s'agit d'un bug,
mais puisqu'on peut contourner le problème (en décochant ce
paramètre) on va dire que c'est du Windev classique :-)

Merci à tous pour votre aide

--
Pascal ROY
(Service Informatique - SODALEC)