× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Jerry Adams wrote:
I'm probably wrong, but I thought that *Start positioned the
pointer to the first record in the file regardless of whether
or not it was indexed. I.e., to the first available (undeleted)
record in file. I thought I had used it on unkeyed files before,
but I could not find an example quickly so maybe Jethro Tull is
making me hallucinate.


The special value *START for positioning is available also at the Data Management level, visible in the OVRDBF. That special value is valid for both keyed and non-keyed files. Both the *START & *END are available on the POSDBF to effect similar. The POSDBF POSITION(*START) was typical for a CLP to re-read an output file that had been read by RCVF [but had never encountered EOF]. Noting that the typical OUTFILE is not keyed, yet the POSITION(*START) functions against those arrival sequence [non-keyed] access paths for both the OVRDBF and POSDBF.

However as I recall, the *START does not position to the first undeleted. The position *START is at the physical RRN=1 for the non-keyed file. It is the nature of the "get next" which implements the READ that causes the deleted records to be skipped, not the position obtained at open time; i.e. get next existing row. Only "direct" positioning allows positioning to a deleted row, and the POSITION(*RRN 1) is a "get direct" request; i.e. as in SETLL with an RRN specified.

Regards, Chuck

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

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.