KarenLloyd
Programmer
Dear Gurus
Please could you share your opinions on the use of memo fields?
More specifically:
1) Memos used in a multi-user environment in a VFP6 application
2) Where existing text can be updated and overwritten many times
3) Where 100s of records are added daily
4) And the file is only packed and reindexed once per week
I have been reading threads relating to memo use, and have referred back to the following:
thread184-1612797
thread184-1644583
thread184-1641916
thread184-240424
When a memo file is updated just storing new records, it is a very useful thing and tends not to run into problems.
But I have some memo text that can be updated, going back a sizeable block, say if updating text on job costs from a couple of weeks or even months prior.
The users don't work in the actual table, or type into the live memo. Instead a set of records is copied to a temporary file, which is worked on, and the records are then updated back to the main file using SCATTER/GATHER to overwrite each existing record for the job, and the newly appended lines.
I have lost a lot of time comparing memo files from restored data, trying to locate blocks of text that have since become corrupted. More recently, the corruption was not caused by any hardware issue, but by the presence of non-keyboard characters -namely ASCII Chars 0, 19 and 21 - two of which I also bring up by accident when typing.
OK - so next, I can add validation to the editbox to remove any non-keyboard characters from the text at the point of update.
But - is that all I should do?
There is still the potential for memo problems occuring in this file due to it's constant updating. It has 85000 records so far, just from two years of jobs.
I don't want to banish memo fields from this system and rewrite the whole thing, but do want the data to be secure. Also, I want to restore confidence in the text without having to run periodic memo file checks.
The reason I seek your advice is that I now have to consider whether to change over to text fields on this file. This will still mean editing in a temporary file in memo format, but saving back to the main file into fixed length fields, splitting longer text across multiple records when necessary.
I'm not sure that I really have any choice...
I would really appreciate any feedback you can give me here, before I plan my next move.
Thank you in advance...
Karen
Please could you share your opinions on the use of memo fields?
More specifically:
1) Memos used in a multi-user environment in a VFP6 application
2) Where existing text can be updated and overwritten many times
3) Where 100s of records are added daily
4) And the file is only packed and reindexed once per week
I have been reading threads relating to memo use, and have referred back to the following:
thread184-1612797
thread184-1644583
thread184-1641916
thread184-240424
When a memo file is updated just storing new records, it is a very useful thing and tends not to run into problems.
But I have some memo text that can be updated, going back a sizeable block, say if updating text on job costs from a couple of weeks or even months prior.
The users don't work in the actual table, or type into the live memo. Instead a set of records is copied to a temporary file, which is worked on, and the records are then updated back to the main file using SCATTER/GATHER to overwrite each existing record for the job, and the newly appended lines.
I have lost a lot of time comparing memo files from restored data, trying to locate blocks of text that have since become corrupted. More recently, the corruption was not caused by any hardware issue, but by the presence of non-keyboard characters -namely ASCII Chars 0, 19 and 21 - two of which I also bring up by accident when typing.
OK - so next, I can add validation to the editbox to remove any non-keyboard characters from the text at the point of update.
But - is that all I should do?
There is still the potential for memo problems occuring in this file due to it's constant updating. It has 85000 records so far, just from two years of jobs.
I don't want to banish memo fields from this system and rewrite the whole thing, but do want the data to be secure. Also, I want to restore confidence in the text without having to run periodic memo file checks.
The reason I seek your advice is that I now have to consider whether to change over to text fields on this file. This will still mean editing in a temporary file in memo format, but saving back to the main file into fixed length fields, splitting longer text across multiple records when necessary.
I'm not sure that I really have any choice...
I would really appreciate any feedback you can give me here, before I plan my next move.
Thank you in advance...
Karen