PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 2024 → HModifie() : disparition de la valeur d'un champ
HModifie() : disparition de la valeur d'un champ
Iniciado por trash_poubelle, jul., 28 2005 8:25 PM - 3 respostas
Publicado em julho, 28 2005 - 8:25 PM
Bonjour,


L'application contient un fichier 'CONTACT' possédant entre autres les champs 'DateCreation', 'DateDernierMessage', et 'DateDerniereConnexion'.

Lors de la création d'un utilisateur, la valeur de 'DateCreation' est initialisée dans l'enregistrement HyperFile.

Lorsque ce même utilisateur se connecte (identifiant et mot de passe), la 'DateDerniereConnexion' est initialisée, mais à ce même moment, la valeur de 'DateCreation' dans l'enregistrement est perdue !

J'ai bien étudié mon code pour déceler l'erreur, sans succès.

Voilà le code du bouton d'envoi-serveur du formulaire d'authentification :

-----
HLitRecherche("CONTACT","Identifiant",Saisieidentifiant)
Si h.Trouve alors
si Saisiemotdepasse~=CONTACT.MotDePasse alors
Prenomutilisateur=CONTACT.Prenom
Nomutilisateur=CONTACT.Nom
Privilegeutilisateur=CONTACT.Privilege
Utilisateurconnecte=vrai
Saisiederniereconnexion=DateSys()
PageVersFichier
HModifie("CONTACT")
PageAffiche("INDEX")
fin
FIN
SI Utilisateurconnecte=faux alors
Messagevalidation..Etat=Actif // affiche "Identifiant incorrects"
PageAffiche("AUTHENTIFICATION") // et réaffiche le formulaire d'authentification
FIN
-----

Le problème vient-il de mon utilisation de 'HModifie()' ??

Ayant compris que 'HAjoute()' revient à faire 'FICHIER.NomChamp=ChampDeLaPage', j'ai tenté de remplacer le 'HModifie()' par :
'Saisiederniereconnexion=DateSys()'
'CONTACT.Datederniereconnexion=Saisiederniereconnexion'

Autre chose, j'ai remarqué que l'opérateur de comparaison '=' ne fonctionne pas, et que seul '~=' fonctionne. Est-ce normal ? (La "casse" de ma saisie est bien la même que celle de mon enregistrement).

Bien que réticent à Webdev au début (je travaille sur la version 1.5), je commence à m'y habituer, voire à l'apprécier ^^


Merci de m'indiquer des pistes :O)
Publicado em julho, 29 2005 - 12:12 PM
Bonjour,

Juste avant ton hmodifie, je vois un ecranversfichier....n'as tu pas un champ dans ta fenêtre reliè à la rubrique datecreation que tu oublierais de remplir dans le cas d'une modification...
A part ca, je ne vois pas de problème..

Je réalise que tu travailles en Webdev en fait...pas en windev.... Peut-être que tu auras plus de réponse sur le forum webdev...qui sait

Bonne chance

Fred
Publicado em julho, 29 2005 - 4:08 PM
Bonjour,

J'ai eu ce problème en cas de double attachement. Deux champs pointent vers la même rubrique.

Je me souviens d'avoir écrit un utilitaire délivrant un tableau décrivant les attachements, et mettant en garde contre ceux reliés deux fois ou plus.
Il s'agissait en général d'erreurs d'indices.

J'avais des fenêtres avec près de 250 variables se ressemblant, alors...

Bien cordialement,

Jacques De Schryver
Publicado em agosto, 03 2005 - 11:59 PM
Bonjour et merci ^^


Veuillez m'excuser pour ce silence prolongé, je pensais que mon message avait été moderé et rejeté sans raison.

Et moi qui commençais à crier "Oôôh Censure !" auprès du Modérateur. Je croyais vraiment avoir posté sur le forum Webdev ;O) Milles excuses.

Fred, lors de l'initialisation des valeurs des champs de l'enregistrement ('HAjoute()'), j'avais en effet créé un 'champ de saisie' relié à la rubrique/au champ.
Par contre, sur la page où le 'HModifie()' entre en scène, je n'ai pas de tel champ, ne souhaitant pas modifier la fameuse rubrique 'DateCreation'.
Je suppose que 'HModifie()' ne met à jour que les champs dont il existe une liaison dans la page (ici, 'DateDerniereConnexion' uniquement).

M. De Schryver, j'ai bien vérifié mes différents fichiers, et il n'y a pas de double-attachement qui pointerait sur la rubrique 'DateCreation'.

Mystère, mystère, je vous tiens au courant lorsque cela sera résolu !


A plus tard,



-- Pascal --