BeeBase

Programmable relational database
with graphical user interface Support This Project
This page is also available in Deutsch English

Documentation

La documentation ci-dessous fait partie de la distribution de BeeBase. Elle est également disponible sous forme de PDF.


[ << ] [ >> ]           [Sommaire] [Table des matières] [Index] [ ? ]

8. Journal

Dans ce chapitre vous trouverez :


8.1 Table Log

Pour journaliser les modifications d'un projet, BeeBase utilise une table interne nommée `_Log'. Notez que le souligné en début de nom indique que cette table est une table système gérée par BeeBase qui ne peut pas être modifiée.

Cette table contient les champs suivants :

 

Nom               Description

`_Label'          Un champ qui peut être défini via le menu `Journal - Définir le tag'
                       ou calculé par une fonction déclencheur nommée logLabel
                       (voir  Définir le tag).
`_Date'           Date de l'entrée.
`_Time'           Heure de l'entrée.
`_Action'         `Nouvel enregistrement', `Enregistrement supprimé' Ou `Valeur modifiée'.
`_Table'          Nom de la table sur laquelle l'action a eu lieu.
`_Record'         Numéro d'enregistrement concerné par l'action. Notez que le numéro d'enregistrement peut varier par ajout, suppression ou tri des enregistrements d'une table.
`_Description'    Description de l'enregistrement concerné par l'action.
                       La description de l'enregistrement peut être spécifiée dans l'éditeur de table 
                       (voir  Éditeur de table).
`_Field'          Si l'action est une `Valeur modifiée' alors le champ
                       porte le nom du champ ayant été modifié.
`_OldValue'       Ancienne valeur du champ (pour l'action `Valeur modifiée').
`_NewValue'       Nouvelle valeur du champ (pour l'action `Valeur modifiée').

La table `_Log' peut être lue comme les autres tables d'un projet. Par exemple, une requête select-from-where

 
SELECT * from _Log

peut être exécutée dans l'éditeur de requête pour obtenir la liste de toutes les modifications (voir Requêtes Select-from-where et Éditeur de requêtes).


8.2 Activer la journalisation

Par défaut la journalisation est désactivée dans un projet. Pour commencer à enregistrer les modifications sélectionnez le menu `Journal - Activer la journalisation'. L'état de ce menu est enregistré dans le fichier du projet, ainsi une fois activé et enregistré les modifications continueront à s'enregistrer même à l'ouverture suivante du projet. Désactiver le menu pour arrêter la journalisation.

Notez que seules les modifications des tables et champs ayant l'option `Journaliser les modifications' seront enregistrées (voir Création de tables et Création de champs).

Les modifications sons journalisées lors de l'ajout, la suppression ou la modification d'un champ, d'un enregistrement. Pour chacune de ces actions une nouvelle entrée est crée et ajoutée à la table `_Log' si le mode de journalisation inclut la journalisation dans le projet (voir Mode de journalisation).


8.3 Mode de journalisation

Vous pouvez sélectionner un de ces modes de journalisation dans le menu `Journal - Mode de journalisation' :

Les modes qui incluent la journalisation dans un fichier externe sont utiles pour préserver les modifications si le fichier de projet vient à être corrompu. Voir Appliquer les modifications pour savoir comment l'utiliser pour restaurer un projet à partir d'une sauvegarde.


8.4 Définir le fichier journal

Pour définir le fichier journal externe, utiliser le menu `Journal - Définir le fichier journal'. Vous pourrez choisir un fichier avec un sélecteur ou entrer son nom. Les modifications seront ajoutées à ce fichier au cas où il existe déjà.


8.5 Définir le tag

La table `_Log' a un champ nommé `_Label' qui peut être librement défini par le projet. Le menu `Journal - Définir le tag' ouvre une fenêtre pour définir ce tag.

Il est aussi possible de fournir un tag à partir d'une fonction. La fonction doit être nommée logLabel et être appelée à chaque nouvelle entrée. Elle ne prend aucun argument et l'expression qu'elle retourne, convertie en texte, est utilisée comme tag. Pour d'autres informations à propos de cette fonction déclencheur, voir logLabel

Notez que lorsque la fonction logLabel existe le menu `Journal - Définir le tag' est désactivé.


8.6 Importer un journal

Il est possible d'importer des entrées de journal depuis un fichier externe. C'est utile lorsque d'anciens entrées ont été supprimés du journal. Après avoir sélectionné le menu `Journal - Importer le journal' une fenêtre s'ouvre que permet d'importer les enregistrements dans la table `_Log'. Voir Importer des enregistrements, pour d'autres informations sur toutes les options d'importation.


8.7 Exporter le journal

Lorsque la table `_Log' grossit il est utile d'exporter les anciennes entrées dans un fichier externe. Pour ce faire, utilisez le menu `Journal - Exporter le journal'. Une fenêtre s'ouvre qui permet d'exporter les entrées de la table `_Log' vers un fichier. Voir Exporter des enregistrements, pour d'autres informations sur toutes les options d'exportation.


8.8 Vider le journal

Pour nettoyer les entrées du journal, utilisez le menu `Log - Vider le journal'. Un cas typique pour nettoyer le journal est lorsque la table `_Log' devient trop grande. Soyez certain d'avoir exporté les entrées vers un fichier externe avant le vidage.


8.9 Appliquer les modifications

Le menu `Journal - Appliquer les modifications' permet d'importer les modifications depuis un fichier externe et de les appliquer au projet. Voir Importer des enregistrements, pour une description de toutes les options d'import. Les modifications déjà présentes dans la table `_Log' du projet sont ignorées.

Cette fonction permet la restauration d'un projet éventuellement corrompu à partir d'une copie de sauvegarde en utilisant les modifications du fichier journal. L'idée est d'appliquer les modifications intervenues après la dernière sauvegarde, sur la base sauvegardée, en les important depuis le journal externe.

Il existe deux stratégies possibles qui peuvent être utilisées en fonction du mode de journalisation (voir Mode de journalisation) :


8.10 Afficher le journal

Pour afficher le journal du projet, utiliser le menu `Journal - Afficher le journal'.

Si le mode de journalisation (voir Mode de journalisation) est `Dans le projet' ou `Dans les deux' alors l'éditeur de requêtes s'ouvre avec une requête prédéfinie qui répertorie toutes les entrées du journal. Vous pouvez modifier la requête et son titre, et BeeBase se souviendra de la requête. Pour d'autres informations, voir Éditeur de requêtes.

Si le mode de journalisation est `Dans un fichier' alors le fichier journal externe est affiché (voir visionneuse externe).


[ << ] [ >> ]           [Sommaire] [Table des matières] [Index] [ ? ]

Ce document a été généré le 30 Septembre 2024 par texi2html