Delete Class (DLTCLS)

The Delete Class (DLTCLS) command deletes a class object or a group of class objects from the system. Any routing steps that are running that are using the class are not affected by its deletion. However, additional routing steps using this class cannot be started. If the deleted class is referred to in any existing routing entry, either the routing entry must be changed (to refer to a different class) or another class must be created with the same name. If a subsystem routing entry specifies a deleted class, the subsystem is unable to start any jobs using that routing entry.

Restrictions:

  1. To use this command, you must have object existence (*OBJEXIST) authority for the class, and execute (*EXECUTE) authority for the library.

Parameters

Keyword Description Choices Notes
CLS Class Qualified object name Required, Positional 1
Qualifier 1: Class Generic name, name
Qualifier 2: Library Name, *LIBL, *CURLIB, *USRLIBL, *ALL, *ALLUSR

Class (CLS)

Specifies the name and library of the class being deleted. A specific class or a generic class can be specified; either type can be optionally qualified by a library name.

This is a required parameter.

Qualifier 1: Class

generic-name
Specify the generic name of the class being deleted. A generic name is a character string that contains one or more characters followed by an asterisk (*). If a generic name is specified, then all classes that have names with the same prefix as the generic class are deleted.
name
Specify the name of the class.

Qualifier 2: Library

*LIBL
All libraries in the thread's library list are searched until a match is found. If a specific object name is specified (instead of a generic name), only the first object found to have that name is deleted.
*CURLIB
The current library for the thread is used to locate the object. If no library is specified as the current library for the thread, the QGPL library is used.
*USRLIBL
Only the libraries listed in the user portion of the library list are searched. If a specific object name is specified (instead of a generic name), only the first object found with that name is deleted.
*ALL
All libraries in auxiliary storage pools (ASPs) that are currently part of the thread's library name space will be searched. This includes the system ASP (ASP 1), all defined basic user ASPs (ASPs 2-32), and, if the thread has an ASP group, the primary and secondary ASPs in the thread's ASP group. Only your own QTEMP library is searched. All objects matching the specified name and object type in all libraries in the thread's name space are deleted.
*ALLUSR
All user libraries are searched. All libraries with names that do not begin with the letter Q are searched except for the following:

#CGULIB     #DSULIB     #SEULIB
#COBLIB     #RPGLIB
#DFULIB     #SDALIB

Although the following Qxxx libraries are provided by IBM, they typically contain user data that changes frequently. Therefore, these libraries are considered user libraries and are also searched:

QDSNX       QRCLxxxxx   QUSRDIRDB   QUSRVI
QGPL        QSRVAGT     QUSRIJS     QUSRVxRxMx
QGPL38      QSYS2       QUSRINFSKR
QMGTC       QSYS2xxxxx  QUSRNOTES
QMGTC2      QS36F       QUSROND
QMPGDATA    QUSER38     QUSRPOSGS
QMQMDATA    QUSRADSM    QUSRPOSSA
QMQMPROC    QUSRBRM     QUSRPYMSVR
QPFRDATA    QUSRDIRCF   QUSRRDARS
QRCL        QUSRDIRCL   QUSRSYS

  1. 'xxxxx' is the number of a primary auxiliary storage pool (ASP).
  2. A different library name, in the format QUSRVxRxMx, can be created by the user for each previous release supported by IBM to contain any user commands to be compiled in a CL program for the previous release. For the QUSRVxRxMx user library, VxRxMx is the version, release, and modification level of a previous release that IBM continues to support.
name
Specify the library where the class is located.

Examples

DLTCLS  CLS(CLASS1)

This command deletes the class named CLASS1 from the system.

Error messages

*ESCAPE Messages

CPF2105
Object &1 in &2 type *&3 not found.
CPF2110
Library &1 not found.
CPF2113
Cannot allocate library &1.
CPF2114
Cannot allocate object &1 in &2 type *&3.
CPF2117
&4 objects type *&3 deleted. &5 objects not deleted.
CPF2160
Object type *&1 not eligible for requested function.
CPF2176
Library &1 damaged.
CPF2182
Not authorized to library &1.
CPF2189
Not authorized to object &1 in &2 type *&3.
CPF5702
File either not DDM file or not found.