La journalisation permet de conserver une trace de toutes les mises à jour et/ou consultations d'une table HFSQL. La fonction HHistoriqueModification permet pour une table journalée, de pouvoir à tout moment connaître toutes les modifications faites, par qui, à partir de quelle application, quand... Très utile voire fondamental pour les données sensibles.


Lorsqu'une table HFSQL client/serveur est journalée, le moteur HFSQL qui héberge la base contient :

  • le fichier de données lui-même :
    \<NomBase>\<NomTable>.FIC,
  • le journal du fichier de données :
    \__JNL\<NomBase>\<NomTable>JNL.FIC,
  • les historiques du journal du fichier de données après les modifications des structures :
    \__JNLBackup\<NomBase>\<NomTable>JNL_<date>_<Heure>.FIC,


Il est intéressant de savoir que tous les fichiers des bases systèmes __JNL et __JNLBackup restent des tables HFSQL à part entière. Il est donc possible de les manipuler comme un fichier HFSQL quelconque : donc pas de limite aux possibilités !


Il est donc par exemple possible :

  • de récupérer un fichier journal, ou de l'historique du journal, par un simple copier / coller par l'Explorateur ou un partage réseau. Une fois le journal rappatrié, il peut être utilisé pour le traitement d'anciennes données, la construction de nouvelles données, ...

  • déplacer un journal dans l'historique :
    • arrêter le moteur HFSQL client/serveur,
    • couper le fichier \BDD\__JNL\<nom-base>\<nom>JNL.fic et .ndx
    • coller le fichier \BDD\__JNLBACKUP\<nom-base>\
    • renommer les fichiers collés afin d'ajouter la date et l'heure au nom comme le fait la modification automatique des données. Par exemple : le journal \CRM\__JNL\ClientJNL.fic deviendra \CRM\__JNLBackup\ClientJNL_20200408_133400.fic
    • relancer le serveur.

  • plus finement encore, il est possible d'ouvrir les journaux avec la fonction HDéclareExterne. On peut ainsi créer des traitements spécifiques pour :
    • déplacer une sélection d'enregistrements (HCopieEnreg / HAjoute / HSupprime) d'un journal vers un nouveau fichier d'historique,
    • collecter, consolider, exporter des données...

 

 

< Retour

Publier un commentaire : 
Votre adresse email ne sera pas publiée