OVH Cloud OVH Cloud

me.diry

14 réponses
Avatar
Jean-Claude
Bonjour, enfin rebonjour

J'ai un champ disons "prix" sur lequel "modification" lance une champ
date=date

Pas de problème.

Si je rentre dans ce champ et en fait je décide de ne rien changer, il me
change quand meme la date: exemple

prix: 245
date 15/01/04

Je modifie le prix à 246 pas de problème, la date chage

Maintenant j'entre dans le champ mais décide de ne pas changer le prix, la
date elle change quand meme, ce qui donne un resultat faux.

Merci pour une astuce

10 réponses

1 2
Avatar
Raymond [mvp]
Sur quel événement as-tu placé la fonction de mise à jour de la date ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jean-Claude" a écrit dans le message de
news:41387249$0$13695$
Bonjour, enfin rebonjour

J'ai un champ disons "prix" sur lequel "modification" lance une champ
dateÚte

Pas de problème.

Si je rentre dans ce champ et en fait je décide de ne rien changer, il me
change quand meme la date: exemple

prix: 245
date 15/01/04

Je modifie le prix à 246 pas de problème, la date chage

Maintenant j'entre dans le champ mais décide de ne pas changer le prix, la
date elle change quand meme, ce qui donne un resultat faux.

Merci pour une astuce





Avatar
Jean-Claude
Sur l'évènement prix...modification

"Raymond [mvp]" a écrit dans le message de
news:
Sur quel événement as-tu placé la fonction de mise à jour de la date ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jean-Claude" a écrit dans le message de
news:41387249$0$13695$
Bonjour, enfin rebonjour

J'ai un champ disons "prix" sur lequel "modification" lance une champ
dateÚte

Pas de problème.

Si je rentre dans ce champ et en fait je décide de ne rien changer, il
me


change quand meme la date: exemple

prix: 245
date 15/01/04

Je modifie le prix à 246 pas de problème, la date chage

Maintenant j'entre dans le champ mais décide de ne pas changer le prix,
la


date elle change quand meme, ce qui donne un resultat faux.

Merci pour une astuce









Avatar
Raymond [mvp]
ce n'est pas un événement ça ! BeforeUpdate ou AfterUpdate ou autre ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jean-Claude" a écrit dans le message de
news:41387523$0$13688$
Sur l'évènement prix...modification



Avatar
Jean-Claude
Raymond, je suis desole, mais ca existe. Quand tu cliques proprietes et
evenements, dans toutes les possibilites tu as "modification"
Merci

"Raymond [mvp]" a écrit dans le message de
news: #
ce n'est pas un événement ça ! BeforeUpdate ou AfterUpdate ou autre ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jean-Claude" a écrit dans le message de
news:41387523$0$13688$
Sur l'évènement prix...modification







Avatar
Raymond [mvp]
c'est bien ce que je disais. il y a 2 événements Dirty: Me.dirty et
Monchamp.Dirty
il semble que tu utilises le Me.Dirty ce qui veut dire que tu mets la date
chaque fois que tu modifies le formulaire, donc pas bon.
tu dois mettre la fonction dans l'événement Prix_Afterupdate et la date ne
sera prise en compte que si la prix est modifié;

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jean-Claude" a écrit dans le message de
news:4138859a$0$13696$
Raymond, je suis desole, mais ca existe. Quand tu cliques proprietes et
evenements, dans toutes les possibilites tu as "modification"
Merci


Avatar
Jean-Claude
Merci Raymond, je tente le coup et te tiens au courant.

Bonne soirée

"Raymond [mvp]" a écrit dans le message de
news:
c'est bien ce que je disais. il y a 2 événements Dirty: Me.dirty et
Monchamp.Dirty
il semble que tu utilises le Me.Dirty ce qui veut dire que tu mets la date
chaque fois que tu modifies le formulaire, donc pas bon.
tu dois mettre la fonction dans l'événement Prix_Afterupdate et la date ne
sera prise en compte que si la prix est modifié;

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jean-Claude" a écrit dans le message de
news:4138859a$0$13696$
Raymond, je suis desole, mais ca existe. Quand tu cliques proprietes et
evenements, dans toutes les possibilites tu as "modification"
Merci






Avatar
Jean-Claude
Salut :)

Donc j'ai fait comme tu dis en update sur le champ prix:
exemple: prix 12 date 15/01/04
Prix 15 date 15/02/04 (automatique)
Je vais disons le 3/09/04 sur le champ pour le modier et en fin décide de le
relaisser au même prix et retape 15. La date ne conserve pas le 15/02/04
mais se met quand même à jour le 03/09/04

Merci de toute façon de ton aide




"Jean-Claude" a écrit dans le message de news:
41389f4a$0$13681$
Merci Raymond, je tente le coup et te tiens au courant.

Bonne soirée

"Raymond [mvp]" a écrit dans le message de
news:
c'est bien ce que je disais. il y a 2 événements Dirty: Me.dirty et
Monchamp.Dirty
il semble que tu utilises le Me.Dirty ce qui veut dire que tu mets la
date


chaque fois que tu modifies le formulaire, donc pas bon.
tu dois mettre la fonction dans l'événement Prix_Afterupdate et la date
ne


sera prise en compte que si la prix est modifié;

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jean-Claude" a écrit dans le message de
news:4138859a$0$13696$
Raymond, je suis desole, mais ca existe. Quand tu cliques proprietes
et



evenements, dans toutes les possibilites tu as "modification"
Merci










Avatar
Jean-Claude
Je viens de trouver une solution que tu trouveras certainement peu élégante
mais qui semble marcher.
J'ai créé un champ indépendant que j'ai appelé TEMP

Quand je rentre sur mon champ prix je dis: temp=prix
quand je quitte mon champ prix je dis
si temp<>prix alors la date change

Qu'en penses tu?? lol.. je suis certain que tu vas rire..mais ca marche, je
te le jure..(je suis mort de rire)


"Jean-Claude" a écrit dans le message de news:
41396cbf$0$29673$
Salut :)

Donc j'ai fait comme tu dis en update sur le champ prix:
exemple: prix 12 date 15/01/04
Prix 15 date 15/02/04 (automatique)
Je vais disons le 3/09/04 sur le champ pour le modier et en fin décide de
le

relaisser au même prix et retape 15. La date ne conserve pas le 15/02/04
mais se met quand même à jour le 03/09/04

Merci de toute façon de ton aide




"Jean-Claude" a écrit dans le message de news:
41389f4a$0$13681$
Merci Raymond, je tente le coup et te tiens au courant.

Bonne soirée

"Raymond [mvp]" a écrit dans le message de
news:
c'est bien ce que je disais. il y a 2 événements Dirty: Me.dirty et
Monchamp.Dirty
il semble que tu utilises le Me.Dirty ce qui veut dire que tu mets la
date


chaque fois que tu modifies le formulaire, donc pas bon.
tu dois mettre la fonction dans l'événement Prix_Afterupdate et la
date



ne
sera prise en compte que si la prix est modifié;

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jean-Claude" a écrit dans le message de
news:4138859a$0$13696$
Raymond, je suis desole, mais ca existe. Quand tu cliques proprietes
et



evenements, dans toutes les possibilites tu as "modification"
Merci














Avatar
Raymond [mvp]
bonjour.

c'est une solution, tant que l'enregistrement n'est pas modifié deux fois.
Si tu modifies une fois, tu t'aperçois de l'erreur 1h après, tu reviens pour
remettre l'ancien prix et là tu as toujours la date qui est mémorisée. tant
que tu restes sur l'enregistrement c'est bon, à condition de ne pas modifier
deux fois le champ sinon ça ne marche pas.
il n'y a pas de solution miracle mais il faut le savoir ou alors il faudrait
faire confirmer la date par l'opérateur à chaque modif.
de toute façon ne charge pas la Temp sur l'entrée du champ mais sur
Form_Current ce qui permet de conserver le prix d'origine. charge aussi une
date_Temp ce qui te permettra de récupérer les deux anciennes valeurs en cas
de modifs successives sans changer d'enregistrement.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jean-Claude" a écrit dans le message de
news:41396e66$0$29672$
Je viens de trouver une solution que tu trouveras certainement peu
élégante

mais qui semble marcher.
J'ai créé un champ indépendant que j'ai appelé TEMP

Quand je rentre sur mon champ prix je dis: temp=prix
quand je quitte mon champ prix je dis
si temp<>prix alors la date change

Qu'en penses tu?? lol.. je suis certain que tu vas rire..mais ca marche,
je

te le jure..(je suis mort de rire)


Avatar
3stone
Salut Raymond,

"Raymond [mvp]"
c'est une solution, tant que l'enregistrement n'est pas modifié deux fois.
<snip>



La méthode de Jean-Claude est peu orthodoxe, mais ta réponse sibylline.
Surtout avec le "Form_Current" ;-))


Au lieu d'utiliser une zone de texte indépendante pour mémoriser
la valeur *avant* modification, il lui suffit de faire:

Sur après mise à jour...

If Prix.Value <> Prix.OldValue Then
[DateModif] = Date
End If





--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------






Quand je rentre sur mon champ prix je dis: temp=prix
quand je quitte mon champ prix je dis
si temp<>prix alors la date change

Qu'en penses tu?? lol.. je suis certain que tu vas rire..mais ca marche,
je

te le jure..(je suis mort de rire)






1 2