Guardian Procedure Calls Reference Manual
next-record pointer=0D
◦ Sharing the same EOF pointer
If a given disk file is opened more than once by the same process, separate current-record
and next-record pointers are provided for each open, but all opens share the same EOF
pointer.
• Structured files
◦ Accessing structured files as unstructured files
The unstructured access option (options.<0> = 1) permits a file to be accessed as an
unstructured file. Note that the block format used by Enscribe must be maintained if the
file is be accessed again in its structured form. (HP reserves the right to change this block
format at any time.) For information about Enscribe block formats, see the Enscribe
Programmer's Guide.
For a file opened using the unstructured access option, a data transfer occurs to the
position in the file specified by an RBA (instead of to the position indicated by a key
address field or record number); the number of bytes transferred is that specified in the
file-system procedure call (instead of the number of bytes indicated by the record format).
If a partitioned file, either structured or unstructured, is opened using the unstructured
access option, only the first partition is opened. The remaining partitions must be opened
individually with separate calls to FILE_OPEN_ (each call specifying unstructured access).
Accessing audited structured files as unstructured files is not allowed.
• Current-state indicators after an open
After successful completion of an open, the current-state indicators have these values:
◦ The current position is that of the first record in the file by primary key.
◦ The positioning mode is approximate.
◦ The comparison length is 0.
If READ is called immediately after FILE_OPEN_ for a structured file, it reads the first
record in the file; in a key-sequenced file, this is the first record by primary key. Subsequent
reads, without intervening positioning, read the file sequentially (in a relative or
entry-sequenced file) or by primary key (in a key-sequenced file) through the last record
in the file.
When a key-sequenced file is opened, KEYPOSITION is usually called before any
subsequent I/O call (such as READ, READUPDATE, WRITE) to establish a position in the
file.
• Queue files
If the READUPDATELOCK operation is to be used, the value of the sync-or-receive-depth
parameter must be 0. A separate open may be used for operations with
sync-or-receive-depth > 0.
Sequential block buffering cannot be used.
• 64-bit primary keys
In order to access non-key-sequenced files larger than 4 GB, bit <31> of the FILE_OPEN_
elections parameter must be set. Use of this parameter allows the use of procedures using
32-bit primary keys (POSITION, KEYPOSITION, REPOSITION, GETSYNCINFO, and
FILE_OPEN_ Procedure 467