
Cacher et récupérer des enregistrements.
Demandé et répondu par
R&B le 27-Sep-2004 12:14
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
Hop : les enregistrements sont à nouveau là : magique !
NB :
- 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.
- 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.
Cette Q&R a été trouvée sur WDForge.org : http://old.wdforge.org/modules/smartfaq/faq.php?faqid=30