OVH Cloud OVH Cloud

Journalisation des entrées/sorties dans le code

12 réponses
Avatar
Didier Morandi
Bonjour à tous et bonne année,

Je voudrais créer le journal d'exploitation d'une grosse appli dont les auteurs
et le contrôle ont été perdus, et dont je récupère la maintenance.

Afin de savoir un peu ce qui s'y passe, j'ai dans un premier temps ajouté sur
tous les écrans les noms des formulaires et sous-f. Je souhaite maintenant créer
une trace des modules VB exécutés par les différents formulaires.

Etant débutant sur la programmation ACCESS/VB, je suis donc allé à la FNAC et
j'ai acquis le John Viescas (Access 2002 au quotidien), le Greg Perry (VB 6 en
21 jours et un divorce) et *le* F. Scott Barker (programmation Access).

Ebé, je n'y ai trouvé que la possibilité d'écrire des messages d'erreur dans une
table via un error handler (bon, d'accord, je n'ai pas tout lu mais presque :-)
Ce que je voudrais, c'est avoir dans un fichier (avec DoCmd.OutputTo par
exemple) l'état suivant :

type nom routine date/heure
----------+------------+------------------------+--------------------
Formulaire ListeClients Private Sub Form_Load() 31-jan-2004 11:30:01
Formulaire ListeClients Private Sub faitmoiça() 31-jan-2004 11:30:02
Formulaire ListeClients Private Sub Form_Close() 31-jan-2004 11:32:00
etc.

En DCL, le langage de script de VMS, j'aurais fait un truc comme ça :

1. ouvrir un fichier texte au début de l'appli
2. inclure (automatiquement) dans tous les scripts la ligne
$ write FichierLog "Entrée dans ",f$environnement(procedure)," le ", f$time()
3. fermer le fichier en sortie de procédure

f$environnement(procedure) me donne le nom complet du script et son emplacement
f$time() me donne l'quivalent de "Now".

Qu'en pensez-vous ?
Merci.

D.
--
VAXUS - Your new helpful friend in the DEC Family!
EHQ: 19 chemin de la Butte, 31400 Toulouse, France
Phone: +336 7983 6418 Fax: +335 6154 1928
http://www.vaxus.org

2 réponses

1 2
Avatar
Raymond [mvp]
Bonjour.

les exemples distribués gratuitement sur mon site ne sont que des exemples
et ne peuvent répondre à toutes les demandes. ils sont placés ici à titre
pédagogique et le lecteur en partant de cette base la modifie pour l'adapter
à son cas personnel après avoir compris le cheminement du code, comme ici
l'utilisation de l'objet screen.

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


"Didier Morandi" a écrit dans le message de
news:bvigid$u2c$
Raymond [mvp] wrote:


http://access.seneque.free.fr/journal_surveillance.htm


Date Code Libelle Utilisation
-------------------+----+-------+------------------------
01/02/2004 09:22:38 Form (rien) Ouverture
01/02/2004 09:22:47 Form (rien) Fermeture
01/02/2004 09:22:50 Form (rien) Ouverture
01/02/2004 09:22:59 Form (rien) Fermeture
01/02/2004 09:26:51 Form (rien) Ouverture
01/02/2004 09:26:51 Form (rien) Démarrage
01/02/2004 09:26:58 Form (rien) Gestion de chantiers
01/02/2004 09:26:59 Form (rien) Gestion des clients
01/02/2004 09:27:01 Form (rien) Fiche client
../..

Bon, voici qq résultats.

1. ca marche
2. il n'y a rien dans Libellé (champ Me.Name)
3. il n'y a que des "Form" même si je passe dans autre chose ?
4. la fenêtre de surveillance apparaît minimisée en bas et à gauche de
l'écran,

j'aimerais la cacher.
5. comment avoir aussi le nom des procédures exécutées dans chaque
formulaire ?

Je suppose que je dois ajouter un bout de code dans chaque, pour mettre la
table

à jour, exact ?

Merci bcp.
Je promets de rédiger un HowTo sur la journalisation de l'exploitation
sous

Access quand j'aurai fini.

D.




Avatar
Didier Morandi
Raymond [mvp] wrote:

Bonjour.

les exemples distribués gratuitement sur mon site ne sont que des exemples
et ne peuvent répondre à toutes les demandes. ils sont placés ici à titre
pédagogique et le lecteur en partant de cette base la modifie pour l'adapter
à son cas personnel après avoir compris le cheminement du code, comme ici
l'utilisation de l'objet screen.


Je comprends.
Merci Raymond.

D.

1 2