Input and output statement qualifiers

Many of the I/O statements have qualifiers that enable you to control the function of the statement. Each qualifier is followed by an expression. The valid values for each statement qualifier are defined by the compiler (and in the dbl.def file included with your distribution, which you can use as a reference). If you do not want these definitions available, you can specify the global definitions compiler option (‑g on Windows and UNIX or /nogbldefs on OpenVMS), which instructs the compiler not to define them. See Invoking the traditional compiler for more information about this compiler option.


When specifying a qualifier, you can either use a colon before the expression (for example, KEYNUM:krf_spec) or an equal sign (for example, KEYNUM=krf_spec).


Although it is not documented, the KRF qualifier is available for consistency with Synergy DBL version 4. KRF is functionally equivalent to KEYNUM. We suggest that you use KEYNUM instead of KRF for new development.

ALLOC - Pre‑allocate a number of blocks

BKTSIZ - Set bucket size

BLKSIZ - Set block size

BUFNUM - Set number of process local I/O buffers

BUFSIZ - Set buffer size

CONTIG - Allocate contiguity of a file

DEQ - Set number of blocks to add

DIRECTION - Set direction of a READS

FDL - Specify an FDL or XDL string or file specification

GETRFA - Return a record’s RFA

GUIWND - Open a new application window

KEYNUM - Specify a key of reference

LOCK - Control record locking

MASK - Specify activation characters

MATCH - Define how a record is located

NOFILL - Prevent the data area from being padded with blanks

OPTIONS - Specify runtime options

POSITION - Define the file position

RECSIZ - Specify a record size for a file

RECTYPE - Define the type of records to write to a file

RFA - Locate record with the specified RFA

SHARE - Control file access

TEMPFILE - Define an intermediate file for output mode

WAIT - Specify wait time for an I/O statement to finish processing