Macro type: type S (E form/L form/D form/C form); see "Macro types"
With the aid of the DELPOOL macro, the user can delete ISAM pools he/she has created or clear the link between his/her job and ISAM pools. When the link between an ISAM pool and the last job connected to it is cleared, the ISAM pool is automatically deleted.
If the specified ISAM pool does not exist, the macro is rejected with an error message.
Before an ISAM pool or the link between a job and an ISAM pool can be deleted, all entries in the pool table for the affected ISAM pools must be deleted by means of REMPLNK. If a pool is still linked to a pool table via its link name, DELPOOL is rejected with an error message.
Note
Cross-task ISAM pools which are not task-specific are created automatically in a data space on a file-specific basis when the file is opened and released again when the file is closed.
COPE=USERID and SCOPE=USERGROUP, which were available up to BS2000/OSD V6.0A, are still accepted for reasons of compatibility, but are mapped internally to SCOPE=HOST (cross-task ISAM pool). For further information on ISAM pools in data spaces please refer to the “Introductory Guide to DMS” [1].
Format
Operation | Operands |
|
|
| |
| |
|
Operand descriptions
MACID
Evaluated only in conjunction with MF=C; defines the second through fourth characters of each field name and equate generated when the macro is expanded.
Default value: | MACID = ISD |
= macid
Three-character string defining the second through fourth characters of the generated field names and equates.
MF
The forms of the MF operand are described in detail in the appendix ("Macro types").
MODE
Specifies whether only a specific pool or all pools linked to the job are to be released.
MODE = SINGLE
At least one pool name must be specified. Only the ISAM pool identified by NAME, CATID and SCOPE is to be deleted/released.
NAME=poolname
Specifies the name with which the pool was created by means of the CREPOOL macro.
CATID=catid
Specifies the pubset to which the pool was assigned by means of the CREPOOL macro.
Default value: the default catalog ID of the job.
SCOPE
Specifies the scope of the ISAM pool as defined in the CREPOOL macro.
All the operand values except TASK are only supported still for reasons of compatibility (see the note on "DELPOOL - Delete/release ISAM pool").
= TASK
The task-local ISAM pool is deleted or released if there is no pool link name still active for it; otherwise, the macro is aborted with an error message.
= USERID
= USERGROUP
SCOPE=USERID and SCOPE=USERGROUP, which were available up to BS2000/OSD V6.0A, are still accepted for reasons of compatibility, but are mapped internally to SCOPE=HOST (cross-task ISAM pool).
= HOST
The cross-task ISAM pool “poolname” is deleted or released if no further pool link names exist for the job; otherwise, the macro is aborted with an error message.
MODE = ALL
Specifies that all (task-local and cross-task) ISAM pools linked to this job are to be deleted.
PARAM
Specifies the address of the operand list; evaluated only in conjunction with MF=E (see "Macro types").
= addr
Symbolic address (name) of the operand list.
= (r)
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
Evaluated only in conjunction with MF=C or MF=D; defines the first character of each field name and equate generated in the data area when the macro is expanded.
Default setting: | PREFIX = D |
= pre
Single-character prefix with which the field names and equates generated by the assembler are to begin.
Return codes
Unless otherwise specified, the field names and the EQU statements for the return codes generated by the C and D forms of the macro begin with the string DISD. This string can be modified by PREFIX and MACID.
The return codes are placed in the standard header of the operand list.
Main return code | Meaning |
DISDOK X'0000' | The macro was executed successfully. |
DISDNPAR X'0001' | Access to the operand list is not possible. |
DISDNCAT X'0003' | The catalog ID “catid” is unknown in the system. |
DISDNACC X'0004' | There is no link to the pubset “catid”. |
DISDINVN X'0005' | The pool name is invalid. |
DISDNANF X'0006' | There is no ISAM pool with the specified name, catalog ID and scope. |
DISDPUSE X'0009' | The task pool table still contains entries with pool link names for this ISAM pool. |
DISDSYSE X'000B' | A system error occurred during macro processing. |
DISDSPEX X'0014' | Allocation for ISAM pools exceeded. |
DISDRNLK X'FFFF' | Macro could not be executed (linkage error): |