Comment cacher et récupérer des enregistrements

Il peut s'avérer utile de 'cacher' des enregistrements pour effecteur un traitement et les récupérer ensuite.

- Remplir un tableau (dynamique) avec les n° des enregistrement à cacher.

ndim est un entier
tEnr est un tableau de 0 entiers sur 8 octets
ndim=Dimension(tEnr,Dimension(rEnr)+1)
tEnr[ndim]=HNumEnr(FICHIER)

- Utiliser hRaye() pour les enlever des parcours du traitement.

POUR i= 1 A ndim
   HRaye(FICHIER,tEnr[i],hIgnoreIntégrité)
FIN

- Lancer le traitement, les enregistrement rayés ne sont plus lisible

- Récupérer les enregistrements par lecture et modification.

POUR i= 1 A ndim
   HLit(FICHIER,tEnr[i])
   HModifie(FICHIER,tEnr[i],hIgnoreIntégrité)
FIN

Les enregistrements sont à nouveau disponibles !

NB :

  1. il faut veiller à ne pas quitter le traitement avant récupération des enregistrement ou bien alors se prémunir d'un mécanisme de sauvegarde/ restauration du fichier.
  2. Il faut aussi veiller à se prémunir d'un réindexation avec compactage du fichier pendant la durée du traitement sous peine de perdre les informations.

A utiliser de préférence avec des fichier temporaires donc.