HP OpenVMS Systems Documentation
OpenVMS Record Management Utilities Reference Manual
The ALLOCATION attribute corresponds to the FAB$L_ALQ field.
ASYNCHRONOUSThis switch specifies asynchronous I/O operations. When you select this attribute, RMS returns control to your program as soon as an I/O operation begins. The switch is ignored for process-permanent files.
BEST_TRY_CONTIGUOUSThis switch controls whether the file is to be allocated contiguously, assuming there is sufficient contiguous space for it. If you set the switch and there is not enough space, the system allocates the file noncontiguous space. If you take the default, no space is allocated.
BUCKET_SIZEThis numeric attribute establishes the number of blocks per bucket. Its value must be an integer in the range 0 to 63. If you take the default (0), RMS computes the smallest bucket size capable of holding the largest record. Files processed by RMS--11 are limited to 32 blocks.
If you specify separate areas for the data level and the index levels, you must define separate bucket sizes for each file area; thus, the corresponding attribute in each AREA section overrides this related attribute in the FILE section.
The BUCKET_SIZE attribute corresponds to the FAB$B_BKS field.
CLUSTER_SIZEThis numeric attribute specifies the number of blocks allocated to a disk cluster. The disk cluster size can be established only when a disk volume is initialized.
The CLUSTER_SIZE attribute is output from the Analyze/RMS_File utility (ANALYZE/RMS_FILE), which returns the actual value of the disk cluster size to EDIT/FDL for use during an Optimize script.
CONTEXTThis numeric attribute contains a user-specified value 4 bytes long. RMS never uses the attribute for record management activities. It is intended solely for you to convey user information to a completion routine in your program.
The CONTEXT attribute corresponds to the FAB$L_CTX field.
CONTIGUOUSThis switch specifies that a file is allocated contiguous space.
If there is not enough contiguous space for the file's initial allocation, RMS returns an error.
If you take the default, the system allocates no space for the file.
CREATE_IFThis switch creates a file if the specified file does not already exist and, where applicable, RMS returns the alternate success status RMS$_CREATED to indicate that the file was created, not just opened. If the file exists, RMS opens it.
DEFAULT_NAMEThis attribute takes a string value that defines portions of the file specification for the data file being created.
When a utility creates a data file from an FDL file, it first attempts to get the file specification from the calling process. If the call includes a full file specification, the utility ignores the DEFAULT_NAME and NAME attributes.
When a process supplies a partial file specification, the invoked utility tries to complete the file specification from the DEFAULT_NAME string. If the calling process does not specify a value for DEFAULT_NAME, the utility uses the RMS defaults.
If the calling process supplies a file specification by using the NAME attribute, the utility uses it. If the NAME attribute includes only a partial file specification, the utility uses it and examines the DEFAULT_NAME attribute for the rest of the file specification.
The NAME and DEFAULT_NAME attributes correspond to the FAB$L_DNA and the FAB$B_DNS fields, respectively.
DEFERRED_WRITEThis switch specifies that the writing of modified I/O buffers to the file is deferred until that buffer is needed for other purposes. This attribute applies only to relative files, indexed files, and sequential files opened for shared access.
DELETE_ON_CLOSEThis switch specifies that the file is to be deleted after it is closed. If you select this attribute, you cannot create the file with either the Create/FDL utility or the FDL$CREATE routine because both open and then close the file. Therefore, the file will not exist long enough to be used. To create a file with the DELETE_ON_CLOSE attribute, you must use the FDL$PARSE routine.
DIRECTORY_ENTRYThis switch specifies a temporary file created and retained with a directory entry. When you set this switch to NO, RMS retains the file but does not include it as a directory entry. To access the file, you must use its file identification number (FID).
EXTENSIONThis numeric attribute establishes the size, in blocks, of the file's default extension value. Each time the file is automatically extended, the specified number of blocks is added. The value for this attribute must be an integer in the range 0 to 65,535. When you take the default (0), the system determines the extension size.
The EXTENSION attribute corresponds to the FAB$W_DEQ field.
FILE_MONITORINGThis switch enables RMS performance monitoring. It corresponds to the XABITM field XAB$_STAT_ENABLE and its default value is NO.
GLOBAL_BUFFER_COUNTThis numeric attribute specifies the number of global buffers allocated to the file. The value must be a number in the range 0 to 32,767; the default value is 0.
The GLOBAL_BUFFER_COUNT attribute corresponds to the FAB$W_GBC field. This attribute is not supported for DECnet for OpenVMS operations.
MAX_RECORD_NUMBERThis numeric attribute specifies the maximum number of records that can be placed in a relative file. The value must be an integer in the range 0 to 2,147,483,647. When you take the default value (0), you can place as many records as you want in the relative file, up to the maximum 2,147,483,647.
The MAX_RECORD_NUMBER attribute corresponds to the FAB$L_MRN field.
MAXIMIZE_VERSIONThis switch specifies the file's version number. If you take the default, YES, the File Definition Language facility assigns the greater of two possible version numbers: either the number that was part of the file specification or a version number that is 1 higher than the highest existing version number.
When you set the switch to NO, assigning an explicit version number lower than an existing version results in creating a new data file with the lower version number. If you assign an explicit version number that matches an existing version, RMS returns an error.
MT_BLOCK_SIZEThis numeric attribute establishes the number of bytes in a magnetic tape file block. The value can be 0, an integer in the range 20 to 65,535 for ANSI-formatted tapes, or an integer in the range 14 to 65,532 for foreign tapes (tapes that are not in the standard ANSI format used by OpenVMS operating systems and that must be mounted by means of the DCL command MOUNT/FOREIGN). If you take the default value (0), RMS assigns the block size specified when the tape was mounted.
The MT_BLOCK_SIZE attribute corresponds to the FAB$W_BLS field.
MT_CLOSE_REWINDThis switch controls whether a magnetic tape volume is rewound when the file is closed. The magnetic tape volume does not rewind if you take the default (NO).
MT_CURRENT_POSITIONThis switch directs RMS to position the magnetic tape volume set immediately after the most recently closed file when it creates the next file. If you use this option when you invoke the $CREATE service, RMS overwrites all files located beyond the current tape position.
If you do not specify either of the position specifiers (MT_CURRENT_POSITION or MT_OPEN_REWIND), RMS creates the new file at the logical end of the tape. If you specify both position specifiers, the MT_OPEN_REWIND attribute overrides the MT_CURRENT_POSITION attribute.
MT_NOT_EOFThis switch prevents positioning the tape to the end of a file being opened with the PUT attribute specified.
MT_OPEN_REWINDThis switch specifies that the magnetic tape volume is to be rewound before the file is opened or created. If you use this option to create a tape file, RMS assumes that write operations are to take place at the beginning of the tape, rewinds the tape to the beginning, and proceeds to overwrite the tape data beginning with the first tape file.
Conversely, if you specify this attribute when you open an existing tape file, RMS rewinds to the beginning of the tape but then proceeds to find the specified file before doing any file operations.
Typically, a user specifies the MT_OPEN_REWIND option to improve efficiency in opening a tape file or to ensure access to the correct file when the tape contains files with duplicate names. ANSI tapes allow named files, but they have no directories and can contain repeated instances of files with the same name.
In the first case, assume the tape has 50 files, is positioned at the fortieth file, and the user wants to access the thirtieth file. If the user specifies MT_OPEN_REWIND to the Open service, RMS rewinds the tape to the first file and then winds the tape forward to the thirtieth file. If the user does not specify MT_OPEN_REWIND, RMS winds the tape forward to the end of the tape. Then, not having found the file, RMS rewinds the tape to the first file and proceeds to wind the tape forward to the thirtieth file.
In the second case, assume a tape has two files named X.DAT and is positioned between the two files. Assume further that the user wants to access the first file named X.DAT. If the user does not specify MT_OPEN_REWIND, RMS winds forward until it finds the second file and opens it, instead of opening the desired file. Conversely, if the user does specify MT_OPEN_REWIND, RMS rewinds the tape and then winds forward until it finds and opens the first file named X.DAT.
MT_PROTECTIONThis single-character string attribute allows you to control access to a magnetic tape file. The default value is a space character that specifies access is not controlled. If the attribute is a non-space character, you can access the file only by specifying the /OVERRIDE=ACCESSIBILITY qualifier and option when you initialize or mount the volume.
This attribute corresponds to the XAB$B_MTACC field and is not supported for DECnet for OpenVMS operations.
NAMEThis string attribute specifies the name of the data file to be created from this FDL file. If you supply a name for the data file, that name overrides the one specified here.
This attribute corresponds to the FAB$L_FNA and the FAB$B_FNS fields.
On Alpha systems, if you have implemented the on-disk-structure level 5 (ODS-5) volume structure of extended file specifications, you can name a file using the 8-bit ISO Latin-1 or 16-bit Unicode (UCS-2) character sets. You can also have a file name exceed the traditional 39.39 character limit to a maximum of 255 characters.
NON_FILE_STRUCTUREDThis switch directs that the volume is to be processed in a manner that is not file structured. This attribute corresponds to the NFS option in the FAB$L_FOP field and is not supported for DECnet for OpenVMS operations.
ORGANIZATIONThis keyword attribute specifies the file organization. Its value must be one of the following keywords:
The default is SEQUENTIAL.
This attribute corresponds to the FAB$B_ORG field.
OUTPUT_FILE_PARSEThis switch specifies that the resultant file specification string, if used, is to provide directory, file name, and file type defaults only.
OWNERThis string attribute specifies the owner of the data file. The value must be the user identification code (UIC), in this form:
For example, OWNER [12,322] indicates that the person in group 12 with the user number 322 is the owner of the data file.
This attribute corresponds to the XAB$W_GRP and the XAB$W_MBM fields.
PRINT_ON_CLOSEThis switch controls whether the data file is to be spooled to the process default print queue when the file is closed, and applies to sequential files only. When you set the switch to YES, the data file is to be spooled to the process default print queue (SYS$PRINT) after the file is closed.
If you also set DELETE_ON_CLOSE to YES, the file is deleted after it is printed.
PROTECTIONThis keyword attribute specifies file protection by defining the type of file access allowed for each of the four user classes:
The syntax for encoding protection may take either of the following forms:
To deny a user class a specific access level, omit the access level from the code. To deny a user class all access levels, omit the user class keyword from the protection specification. For example, the following protection specification gives all access levels to user class System and user class Owner, read access to user class Group, and no access levels to user class World:
This attribute corresponds to the XAB$W_PRO field.
READ_CHECKThis switch determines whether transfers from disk volumes are followed by read-compare operations.
When you activate the switch, transfers from disk volumes are followed by read-compare operations. This double check increases the likelihood that the system will catch data errors; however, it also increases disk overhead.
Activating this switch does not permanently mark the file for READ_CHECK; it merely selects a run-time option. To permanently mark the file for READ_CHECK, use the SET FILE/DATA_CHECK=READ command.
REVISIONThis numeric attribute specifies the revision number of the data file as an integer in the range 0 to 65,535. Unless you want to change the revision number to some specific number, you should leave this value at its default of 0. When REVISION is set to 0, the file's revision number is incremented each time the file is opened for write access.
This attribute corresponds to the XAB$W_RVN field.
SEQUENTIAL_ONLYThis switch limits the file to sequential processing and related processing options. Any attempt at random access results in an error.
For DECnet for OpenVMS operations, this attribute enables file transfer mode, which is a data access protocol (DAP) feature that allows several records to be transferred in a single network operation. It maximizes throughput for single-direction, sequential-access file transfer.
STORED_SEMANTICSWhere applicable, this string attribute identifies the file semantics established when a file is created. The string is limited to 64 characters and the attribute corresponds to the XAB$_STORED_SEMANTICS field.
SUBMIT_ON_CLOSEThis switch submits the data file to the process default batch queue (SYS$BATCH) when the file is closed and is appropriate only for sequential command files.
SUPERSEDEThis switch replaces the existing data file with a different file of the same name, type, and version.
If you successfully create a new file with the same name, type, and version as an existing file, the old file is deleted.
SUPERSEDE is overridden by the CREATE_IF attribute.
This attribute corresponds to the SCF option in the FAB$L_FOP field.
TEMPORARYThis creates a temporary file that is deleted when it is closed. No directory entry is created for a temporary file.
You cannot create a file that has this attribute by using the CREATE/FDL command or the FDL$CREATE routine, because these commands open and then close the data file before it can be used. You can only use the FDL$PARSE routine to create a file that has the TEMPORARY attribute.
TRUNCATE_ON_CLOSEThis switch deallocates unused space at the end of a sequential file when the file is closed.
USER_FILE_OPENThis switch limits RMS operations to opening or creating a file. If you specify this option, you must also specify the SHARING USER_INTERLOCK attribute unless you have specified the SHARING PROHIBIT attribute.
WINDOW_SIZEThis attribute specifies the number of retrieval windows (pointers) you want RMS to maintain in memory for your file. You can specify a numeric value in the range 0 to 127, or 255. A value of 0 indicates that RMS is to use the system default number of retrieval pointers. A value of 255 means to map the entire file, if possible. Values between 128 and 254, inclusive, are reserved for future use.
This attribute corresponds to the FAB$B_RTV field and is not supported for DECnet for OpenVMS operations.
WRITE_CHECKThis switch specifies that disk transfers are checked by a read-compare operation. Note, however, that this operation creates extra system overhead.
This switch does not permanently mark the file for WRITE_CHECK; it sets an RMS run-time option. You must use the SET FILE/DATA_CHECK=WRITE command to mark the file permanently.
This attribute corresponds to the WCK option in the FAB$L_FOP field.
The KEY primary attribute acts as a header for a section of the FDL file that describes keys. You must specify a separate KEY section for each key of an indexed file. The number of the key being described follows the word KEY (for example, KEY 0, KEY 1,...KEY n). The KEY value for the primary key must be 0. The KEY value for secondary keys can be numbered from 1 to 254.
The KEY primary attribute corresponds to the XAB$B_REF field.