Closes a file opened with the OPEN command and deassigns the associated logical name. Format CLOSE logical-name[:]
1 – Parameter
logical-name[:] Specifies the logical name assigned to the file when it was opened with the OPEN command.
2 – Qualifiers
2.1 /DISPOSITION
/DISPOSITION=option Specifies what action to take when the file is closed. The options are: DELETE Delete the file. KEEP Keep the file. (default) PRINT Print the file. SUBMIT Submit the file.
2.2 /ERROR
/ERROR=label Specifies a label in the command procedure to receive control if the close operation results in an error. Overrides any ON condition action specified. If an error occurs and the target label is successfully given control, the global symbol $STATUS retains the code for the error that caused the error path to be taken.
2.3 /LOG
/LOG (default) /NOLOG Generates a warning message when you attempt to close a file that was not opened by DCL. If you specify the /ERROR qualifier, the /LOG qualifier has no effect. If the file has not been opened by DCL, the error branch is taken and no message is displayed.
3 – Examples
1.$ OPEN/READ INPUT_FILE TEST.DAT $ READ_LOOP: $ READ/END_OF_FILE=NO_MORE INPUT_FILE DATA_LINE . . . $ GOTO READ_LOOP $ NO_MORE: $ CLOSE INPUT_FILE The OPEN command in this example opens the file TEST.DAT and assigns it the logical name of INPUT_FILE. The /END_OF_FILE qualifier on the READ command requests that, when the end-of- file (EOF) is reached, the command interpreter should transfer control to the line at the label NO_MORE. The CLOSE command closes the input file. 2.$ @READFILE <Ctrl/Y> $ STOP $ SHOW LOGICAL/PROCESS . . . "INFILE" = "_DB1" "OUTFILE" = "_DB1" $ CLOSE INFILE $ CLOSE OUTFILE In this example, pressing Ctrl/Y interrupts the execution of the command procedure READFILE.COM. Then, the STOP command stops the procedure. The SHOW LOGICAL/PROCESS command displays the names that currently exist in the process logical name table. Among the names listed are the logical names INFILE and OUTFILE, assigned by OPEN commands in the procedure READFILE.COM. The CLOSE commands close these files and deassign the logical names.