Salut et merci pour votre aide,Comment mettre à jour un champ d'accès avec la date à chaque fois qu'une modification est apportée à sa ligne?
Note: J'utilise Access 2002
Je suis en train de mettre à jour mon champ « LastUpdatedDate » avec le timbre de date/heure NOW() s'il y a un changement sur son rangée.
En ce moment, j'ai suivi les instructions que Doanair a donné un autre gars essayant de comprendre cela:
DATETIME to the table e.g. named LastUpdatedDate that indicates the last updated date/time of each row. Make it NOT NULL so that you will have to write an updated DATETIME value to that column for each INSERT or UPDATE. Also, set the column to have a default of DATE() for the current date stamp or NOW() for the current date/time stamp.
Malheureusement, il ne change toujours pas le champ si quelque chose a changé sur la ligne. Il a mentionné que je devrais:
Then add a Validation Rule or CHECK constraint e.g. CHECK (LastUpdatedDate = NOW()) to ensure the column is actually updated on each UPDATE and INSERT.
Mais il n'y a pas une fonction de contrôle dans Access XP que je connaisse.
Des idées de gars/filles?
Merci, Est-ce que
Oui, il fonctionne actuellement avec des insertions, mais pas avec des mises à jour - J'ai besoin de connaître la date/heure de mise à jour d'une ligne - J'ai un champ sur un rapport qui tire le maximum du champ dernière fois que la table a été mise à jour. –
Si les lignes sont en cours d'édition dans un formulaire, vous pouvez utiliser l'événement OnDirty du formulaire ou l'événement Changed de chaque champ, mais c'est assez compliqué. – dsteele
Ce code provient de ce post: http://stackoverflow.com/questions/926897/detect-time-of-last-change-on-a-microsoft-access-database-table –