|
Joe, I'm in agreement with most of what you said, except for this little quibble: I'm confused by your definition of 'successful' or 'unsuccessful' operation. If you chain to a file, with say, key 4, and only key 1,2, 6 and 7 are in the file, the chain was unsuccessful at retrieving the record, but success was achieved in moving the file pointer to record 6 for a subsequent read, or 2 for a readp. the file pointer has changed, and we are no longer at %eof. if you chain with an 8, your file pointer may or may not have changed, but you still can't test for %eof until you do a read. Same goes for a SetLL - If you setll with a 4, you've successfully changed your file pointer, you are no longer at %eof (if you were before). If you setll with an 8, the operatio was a success, and your pointer is at the end of the file, but you aren't at %eof yet - you must do a subsequent 'read' I find this wholy consistant - %eof IS for testing the result of a 'read' operation, not the position of a file pointer. The fact that any chain or setxx operation sets this off is makes it even more consistant. Rick ---Joe Lee said----- If a CHAIN or SETxx operation is successful you know that you are not at the end of the file, therefore %EOF will be off. If a CHAIN or SETxx is unsuccessful, you do not know if you are at the end of the file, therefore %EOF should not be changed.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.