Problem:
A customer's application deletes a record from an index file via COBOL.
The record is ".. Not Found" when reading the file.
When dumped using 'od' the record data can be seen to still exist in the file.
So how can one delete a record physically from an index file using a COBOL program?
Resolution:
When you delete a record the file handler marks in the data file and index that the record is deleted - it doesn't physically write over the record. You would have to rewrite the key with spaces in the record area and then delete it to remove the data but of course the key is still there.
So the only permanent way of doing this is to run rebuild which will remove all the deleted and free space records.
The reason we don't permanently delete the record is entirely for performance.
#ServerExpress
#RMCOBOL
#COBOL
#netexpress
#AcuCobol