A user label is an optional method of adding documentation
to your file. You can write your own labels to a KSAM file with
the FWRITELABEL intrinsic. For example, you can use a label to
enter the date and time of the last file update. These labels are
read with the FREADLABEL intrinsic.
Specify the number of user labels to be created in the userlabel parameter of the FOPEN intrinsic. In order to write labels, the file
must be open. To do so, set the aoptions parameter of the FOPEN intrinsic to one of the write, input/output, or
update access specifications.
The following example shows the intrinsic call to write information
to the second file label.
FWRITELABEL(KFILNUM,LABELBUF,60,1); |
In this example, the 60 halfwords of text contained in the
variable LABELBUF are to be written in the second user label. Note
that label numbering starts with zero. The second label is identified
by the number 1 in the last parameter. If this parameter contains
zero or is omitted, the first label is written.
You can read the contents of user labels using the FREADLABEL intrinsic. During the normal reading of a file,
user labels are skipped. The FREADLABEL intrinsic, therefore, should be called immediately
after the file has been opened. To read a user label, the file must
be opened with read, input/output, or update access, and the user
labels to be read must be identified.
Issue the following FREADLABEL intrinsic call to read the user label written
in the previous example.
FREADLABEL(KFILNUM,LABEL2,,1) |
The variable LABEL2 returns the contents of the second user
label. By default, the call returns 128 halfwords from the label.