Macro type: type S (C form/D form/E form/L form/M form); see "Macro types"
The RELTFT macro deletes from the task file table (TFT) the entry for the specified file link name and releases all private volumes, devices and Net-Storage volumes linked to this entry. When a private volume or a Net-Storage volume with more than one TFT entry is connected, it is released only when the last TFT entry is deleted. It also cancels the reservation of files reserved exclusively by means of the SECURE-RESOURCE-ALLOCATION command. RELTFT is ignored if a LOCK-FILE-LINK is still active for the TFTentry; it is executed only when this lock is released by means of the DROPTFT macro (see "DROPTFT - Release TFT entry") or the UNLOCK-FILE-LINK command (or at LOGOFF time. For further information on the LOCK-FILE-LINK, UNLOCK-FILE-LINK and SECURE-RESOURCE-ALLOCATION commands see the “Commands” [3] manual and the “Introductory Guide to DMS” [1]).
Note
The RELTFT macro is the earlier REL macro, extended by the use of wildcards in link names. As the previous functionality of the REL macro is still supported, its format is still shown in the appendix (see "Formats of replaced macros"). Its operands, however, are the same as those of the RELTFT macro and are therefore only described here.
Tape files
In the RELTFT macro, the user can select whether the tape devices requested for the tape file (KEEP operand) and/or the requested volumes (UNLOAD operand) are to remain assigned to the job.
The file counter in the TST entry is decremented by 1 if the TFT entry to be released is linked to a TST entry. Once this reaches zero, the TST entry is deleted and DMS releases all devices linked to it. As long as the TST entry is still linked to TFT entries (file counter > zero), DMS releases only those devices that were only requested for the TFT entry named in the RELTFT macro.
If the TFT entry to be released does not reference a TST entry, all devices linked to the TFT entry are released.
Format
Operation | Operands |
|
|
Operand descriptions
KEEP
Defines whether tape devices linked to this file or TFT entry are not to be returned to the system, but instead are to remain available to the job for reassignment.
= *NO
The tape devices are returned to the system.
= *YES
The tape devices are not returned to the system.
LINK
File link name of the TFT entry to be deleted.
Character strings in the specified name can be represented by wildcards. The following then applies:
The total length of the name must not exceed 80 characters.
The name may only contain wildcards or characters from the permitted value range of the command interface.
If wildcards are used, only those TFT entries are selected whose link names are made up of characters from the permitted value range of the command interface.
Default value: | The first TFT entry with the link name *BLANK is deleted. |
= <c-string 1..80: filename 1..8 with-wild(80) without-gen>
File link name (enclosed in single quotes).
= <var: char: 80: filename 1..8 with-wild(80) without-gen>
Name of a variable containing the file link name.
MACID
Only evaluated in conjunction with MF=C/D/M and defines the second through fourth characters of field names and equates generated in the data area when the macro is expanded.
Default value: | MACID = MAR |
= macid
“macid” is a three-character string which defines the second through fourth characters of generated field names and equates.
MF
The forms of the MF operand are described in the appendix ("Macro types").
Default value: | Operand list and SVC as previously |
PARAM
Designates the address of the operand list and is only evaluated in conjunction with MF=E (see also "Macro types").
= addr
“addr” is the symbolic address (name) of the operand list.
= (r)
“r” is the number of the register containing the address of the operand list. The register must be loaded with this address value before the macro is called.
PREFIX
Only evaluated in conjunction with MF=C/D/M; this defines the first character of field names and equates generated in the data area when the macro is expanded.
Default value: | PREFIX = D |
= pre
“pre” is a single-character prefix with which the field names and equates generated by the assembler are to begin.
UNLOAD
Only for tape files:
Defines whether the volumes linked to the TFT entry specified under LINK are released and the tape devices concerned are unloaded. They must be requested again if the job is to reaccess these volumes. Automatic allocation by the system is no longer possible.
If a private volume is linked to different TFT entries, it is released only after the last TFT entry is deleted.
= *NO
The tape devices are released.
= *YES
The tape devices are not released.
VERSION = <integer 1..1>
Control operand; controls generation.
WILDCRD
Defines whether wildcard characters in the file link name are interpreted as wildcards or as normal characters.
= *NO
Wildcard characters are interpreted as normal characters.
= *YES
Wildcard characters are interpreted as wildcards.
Programming notes
The error code is only returned in the standard header and no longer in general-purpose register 15, as it was in the REL macro. Program termination with STXIT connection can be initiated in the following cases:
parameter address faulty (e.g. shorter than the standard header)
parameter address not aligned on a word boundary
UNIT or FUNCTION in the header faulty
header is write-protected
Return codes
Standard header: ccbbaaaa
The following code relating to execution of the RELTFT macro is returned in the standard header(cc = SUBCODE2, bb = SUBCODE1, aaaa = MAINCODE):
X'cc' | X'bb' | X'aaaa' | Meaning |
X'01' | X'00' | X'059A' | No such link name |
X'01' | X'059D' | Invalid link name | |
X'82' | X'059B' | File is currently opened | |
X'02' | X'00' | X'059C' | Not all selected TFT entries are deleted |
X'01' | X'05C2' | Invalid link name (binary null) | |
X'01' | X'06F5' | TPR bit set by TU caller | |
X'01' | X'06FD' | Invalid parameter list range | |
X'03' | X'FFFF' | Invalid version |