Il
s'agit de garder la trace, dans une table séparée,
de certaines actions:
par exemple, qui a effacé une fiche et quand, qui a créé
une fiche et quand, qui a imprimé tel état etc...
1 -
Il faut créer
a) une table "T_Actions" comportant les champs suivants:
Ac_Num / Numéro Automatique clé primaire
Ac_Date / Date Heure
Ac_CodeAction / Entier long lié à La_CodeAction
Ac_Auteur / Entier long lié à Au_Code
Ac_NumDossier / Texte - cet exemple suit des actions sur des "Dossiers"
b) une table "T_LibelléActions" comportant les
champs suivants:
La_Code / Numéro automatique Clé primaire
La_Libellé / Texte
exemples: 1 = Effacer, 2 = Imprimer, 3 = annuler saisie, etc...
c) une table "T_Auteurs" comportant les champs suivants:
Au_Code / Numéro automatique clé primaire
Au_Nom / Texte
si nécessaire on peut ajouter d'autres champs (téléphone,
service, ....)
2 -
Il faut mettre en place un moyen d'identification, par exemple un
formulaire de mot de passe au démarrage ou la récupération
de CurrentUser, de
manière à disposer de la variable lnAuteur
correspondant au code de l'auteur dans la table T_Auteurs
2 -
Dans un module, placer ceci:
Public
Sub flic(iCode As Long, lnAuteur As Long, chDossier As String)
DoCmd.SetWarnings False
DoCmd.RunSQL "INSERT INTO T_Actions ([Ac_Date], [Ac_CodeAction],
[Ac_Auteur], [Ac_NumDossier]) VALUES (Now, " & iCode &
", " & lnAuteur& ", " & chDossier
& " );"
DoCmd.SetWarnings True
End Sub
3 -
Aux endroits à surveiller (par exemple: sur clic d'un bouton
...) placer ceci:
chDossier
= [monChampQuiContientCeRenseignement]
flic 1, lnAuteur, chDossier
' la valeur
1 est à remplacer par 2, ou 3 en fonction du contexte de
l'action
|
|