PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV 2024 → hmodifie
hmodifie
Started by acorna, Jan., 30 2005 11:22 AM - 3 replies
Posted on January, 30 2005 - 11:22 AM
Bonjour,

J'ai un champ table "détails" basé sur un fichier. ce champ table affiche des détails sur un enregistrement sélectionné dans un autre champ table, basé lui sur une requête.

Je voudrais, lorsque je saisis quelque chose dans mon champ table "détail", que les modifications soient appliquées dans le fichier qui en est la source. J'ai tenté un EcranVersFichier, qui n'a rien donné, puis un HModifieFichier, et enfin un HModifie(Fichier),
qui me retourne une erreur comme quoi le n° d'enregistrement -1 n'est pas correct. (HnumEnr vaut -1, quel que soit l'enregistrement affiché...)

Quelqu'un a-t-il une idée?

Merci d'avance.
Posted on January, 30 2005 - 12:09 PM
Si ta table est une table fichier, regarde du côté de "TableEnregistre"

acorna a écrit :
Bonjour,

J'ai un champ table "détails" basé sur un fichier. ce champ table affiche des détails sur un enregistrement sélectionné dans un autre champ table, basé lui sur une requête.

Je voudrais, lorsque je saisis quelque chose dans mon champ table "détail", que les modifications soient appliquées dans le fichier qui en est la source. J'ai tenté un EcranVersFichier, qui n'a rien donné, puis un HModifieFichier, et enfin un HModifie(Fichier),
qui me retourne une erreur comme quoi le n° d'enregistrement -1 n'est pas correct. (HnumEnr vaut -1, quel que soit l'enregistrement affiché...)

Quelqu'un a-t-il une idée?

Merci d'avance.

Posted on January, 30 2005 - 12:28 PM
Oui, c'est une table fichier.
Tableenregistre ne me genere pas d'erreur, mais n'enregistre pas pour autant les modifications. Rien ne marche.
Posted on January, 30 2005 - 12:31 PM
Sinon tu peux essayer de la manière suivante, dans le code de sortie d'une ligne de ta table :

//on considère que la 1ere colonne de ta table contient la clé et la 2ème la valeur à modifier.

//on recherche l'enregistrement dans le fichier qui correspond à la ligne séléctionnée.
SI HLitRecherchePremier (<NomFichier>, <NomRubrique>, <NomTable> [TableSelect(<NomTable>)][1]) = 1 ALORS
//on affecte la valeur au champ que l'on veut modifier.
<NomFichier>.<NomRubrique> = <NomTable> [TableSelect(<NomTable>)][2]
HModifie (<NomFichier>)
FIN