Display Object Description (DSPOBJD)

Where allowed to run: All environments (*ALL)
Threadsafe: No
Parameters
Examples
Error messages

The Display Object Description (DSPOBJD) command shows the names and attributes of specified objects in the specified library or in the libraries of the library list for the current thread. The command can also show the names and attributes of libraries themselves.

Only the object attributes of each object are shown; the data attributes of data in the object, and the actual data in the object, are not shown. Also indicated is whether an object being shown has been damaged (possibly by a system failure) or is not able to be accessed because it is locked.

Any object for which you have some authority other than *EXCLUDE authority can be shown by this command. Libraries for which you do not have execute (*EXECUTE) authority cannot be shown, even if specified in the command. If only one object is to be shown, you can specify it by entering the object name, object type, the name of the library where it is located, and the auxiliary storage pool (ASP) device where the library is located. Depending on the specified library qualifier, either the first object found in the specified libraries is shown, or all objects in the specified libraries for which you have some authority are shown.

Notes:

Restrictions:

  1. You must have execute (*EXECUTE) authority for the specified libraries. If you do not have *EXECUTE authority for a library, none of its objects are shown.
  2. You must have some authority other than *EXCLUDE authority for each of the objects to be shown.
  3. You must have either all object (*ALLOBJ) or audit (*AUDIT) special authority to see a value other than *NOTAVL for the object auditing field.
Top

Parameters

Keyword Description Choices Notes
OBJ Object Single values: *ALLUSR, *IBM
Other values: Qualified object name
Required, Positional 1
Qualifier 1: Object Generic name, name, *ALL
Qualifier 2: Library Name, *LIBL, *USRLIBL, *CURLIB, *ALL, *ALLUSR
OBJTYPE Object type Single values: *ALL
Other values (up to 93 repetitions): *ALRTBL, *AUTL, *BNDDIR, *CFGL, *CHTFMT, *CLD, *CLS, *CMD, *CNNL, *COSD, *CRG, *CRQD, *CSI, *CSPMAP, *CSPTBL, *CTLD, *DEVD, *DOC, *DTAARA, *DTADCT, *DTAQ, *EDTD, *EXITRG, *FCT, *FILE, *FLR, *FNTRSC, *FNTTBL, *FORMDF, *FTR, *GSS, *IGCDCT, *IGCSRT, *IGCTBL, *IMGCLG, *IPXD, *JOBD, *JOBQ, *JOBSCD, *JRN, *JRNRCV, *LIB, *LIND, *LOCALE, *MEDDFN, *MENU, *MGTCOL, *MODD, *MODULE, *MSGF, *MSGQ, *M36, *M36CFG, *NODGRP, *NODL, *NTBD, *NWID, *NWSCFG, *NWSD, *OUTQ, *OVL, *PAGDFN, *PAGSEG, *PDFMAP, *PDG, *PGM, *PNLGRP, *PRDAVL, *PRDDFN, *PRDLOD, *PSFCFG, *QMFORM, *QMQRY, *QRYDFN, *RCT, *SBSD, *SCHIDX, *SPADCT, *SQLPKG, *SQLUDT, *SQLXSR, *SRVPGM, *SSND, *SVRSTG, *S36, *TBL, *TIMZON, *USRIDX, *USRPRF, *USRQ, *USRSPC, *VLDL, *WSCST
Required, Positional 2
DETAIL Detail *BASIC, *FULL, *SERVICE Optional, Positional 3
ASPDEV ASP device Single values: *, *ALLAVL, *CURASPGRP, *SYSBAS
Other values: Element list
Optional
Element 1: Device Name
Element 2: Search type *ASP, *ASPGRP
OUTPUT Output *, *PRINT, *OUTFILE Optional
OUTFILE File to receive output Qualified object name Optional
Qualifier 1: File to receive output Name
Qualifier 2: Library Name, *LIBL, *CURLIB
OUTMBR Output member options Element list Optional
Element 1: Member to receive output Name, *FIRST
Element 2: Replace or add records *REPLACE, *ADD
Top

Object (OBJ)

Specifies which objects in the library or libraries are to have their object attributes shown. If library (qualifier 2) is not specified, *LIBL is assumed, and all libraries in the library list for the current thread are searched for the objects. Objects in a library for which you do not have some authority are not shown. This parameter can be specified as a single value or as a list of one or two qualifiers.

This is a required parameter.

Single values

*ALLUSR
When the object name has a value of *ALLUSR, the object type must be *LIB. All user libraries in the auxiliary storage pools (ASPs) specified for the ASP device (ASPDEV) parameter are shown. Refer to *ALLUSR in the description of library (qualifier 2) for a definition of user libraries.
*IBM
When the object name has a value of *IBM, the object type must be *LIB. All libraries in the auxiliary storage pools (ASPs) defined by the ASP device (ASPDEV) parameter which are saved and restored using the SAVLIB and RSTLIB CL commands with *IBM specified for the Library (LIB) parameter are shown.

Qualifier 1: Object

*ALL
All objects in the libraries identified in library (qualifier 2) that are of the types specified for the Object type (OBJTYPE) parameter and for which you have some authority other than *EXCLUDE authority are shown.
  1. If the library (qualifier 2) is *ALL, *ALLUSR, or a library name, all objects of the specified type and that are in the specified libraries are shown.
  2. If the library (qualifier 2) is *USRLIBL or *LIBL and the object name is a specific name (not *ALL and not a generic name), only one object type (and not *ALL) can be specified for the OBJTYPE parameter and only the first object found is shown.
generic-name
Specify the generic name of the objects to be shown. A generic name is specified as a character string that contains one or more characters followed by an asterisk (*). A generic name specifies all objects that have names with the same prefix as the generic object name for which you have some authority other than *EXCLUDE authority.
name
Specify the name of the object to be shown.

Qualifier 2: Library

*LIBL
All libraries in the library list for the current thread are searched until the first match is found. If the ASP device (ASPDEV) parameter is specified when this value is used, ASPDEV(*) is the only valid value.
*CURLIB
The current library for the thread is searched. If no library is specified as the current library for the thread, the QGPL library is searched. If the ASP device (ASPDEV) parameter is specified when this value is used, ASPDEV(*) is the only valid value.
*USRLIBL
If a current library entry exists in the library list for the current thread, the current library and the libraries in the user portion of the library list are searched. If there is no current library entry, only the libraries in the user portion of the library list are searched. If the ASP device (ASPDEV) parameter is specified when this value is used, ASPDEV(*) is the only valid value.
*ALL
All the libraries in the auxiliary storage pools (ASPs) specified for the ASP device (ASPDEV) parameter are searched.
*ALLUSR
All user libraries in the auxiliary storage pools (ASPs) defined by the ASP device (ASPDEV) parameter are searched.

User libraries are all libraries with names that do not begin with the letter Q except for the following:

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

Although the following libraries with names that begin with the letter Q are provided by IBM, they typically contain user data that changes frequently. Therefore, these libraries are also considered user libraries:

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 name of the library to be searched.
Top

Object type (OBJTYPE)

Specifies which types of objects are shown. This parameter can be specified as a single value or as a list of one or more object types.

To see a complete list of object types when prompting this command, position the cursor on the field for this parameter and press F4 (Prompt). For a description of the object types, see "Object types" in the CL topic collection in the Programming category in the IBM i Information Center at http://www.ibm.com/systems/i/infocenter/.

This is a required parameter.

Single values

*ALL
All types of objects with the specified object name are shown.

Other values

object-type
Specify one or more values for the types of objects that are shown. All objects in the specified libraries, as well as libraries themselves, that have the object type(s) specified have their object attributes shown. If the library qualifier for the Object (OBJ) parameter is *USRLIBL or *LIBL and the object name qualifier is a specific name (not *ALL and not a generic name), only one object type (and not *ALL) can be specified here.
Top

Detail (DETAIL)

Specifies which set of attributes is shown for each object.

Note: When the output is directed to a database file, this parameter is ignored and all object attribute information is written to the file.

*BASIC
The display or listing contains the name and a basic set of object attributes for each object.
*FULL
The display or listing contains the name and a full set of object attributes for each object (which includes the basic set of attributes).
*SERVICE
The display or listing contains the service-related attributes for each object.
Top

ASP device (ASPDEV)

Specifies the auxiliary storage pool (ASP) device name where storage is allocated for the library containing the object. If the library resides in an ASP that is not part of the thread's library name space, this parameter must be specified to ensure the correct library is searched. If this parameter is used when the library qualifier specified for the Object (OBJ) parameter is *CURLIB, *LIBL, or *USRLIBL, ASPDEV(*) is the only valid value. This parameter can be specified as a single value or a list of one or two elements.

Single values

*
The ASPs that are currently part of the thread's library name space will be searched to find the library. 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.
*ALLAVL
All available ASPs will be searched. This includes the system ASP (ASP 1), all defined basic user ASPs (ASPs 2-32), and all available primary and secondary ASPs (ASPs 33-255 with a status of 'Available'). The ASP groups are searched in alphabetical order by the primary ASP. The system ASP and all defined basic user ASPs are searched after the ASP groups. ASPs and libraries to which the user is not authorized are bypassed and no authority error messages are sent.
*CURASPGRP
If the thread has an ASP group, the primary and secondary ASPs in the thread's ASP group will be searched to find the library. The system ASP (ASP 1) and defined basic user ASPs (ASPs 2-32) will not be searched. If no ASP group is associated with the thread an error will be issued.
*SYSBAS
The system ASP (ASP 1) and all defined basic user ASPs (ASPs 2-32) will be searched to find the library. No primary or secondary ASPs will be searched, even if the thread has an ASP group.

Element 1: Device

name

Specify the name of the primary or secondary ASP device to be searched. The primary or secondary ASP must have been activated (by varying on the ASP device) and have a status of 'Available'. The system ASP (ASP 1) and defined basic user ASPs (ASPs 2-32) will not be searched.

Note: To specify a specific auxiliary storage pool (ASP) device name when the search type specified for element 2 is *ASP, you must have execute (*EXECUTE) authority for the specific ASP device.

To specify a specific auxiliary storage pool (ASP) device name when the search type specified for element 2 is *ASPGRP, you must have execute (*EXECUTE) authority for each ASP device in the ASP group.

Element 2: Search type

Specifies whether the single ASP device or the entire ASP group named in element 1 is to be searched.

*ASP
Only the single auxiliary storage pool (ASP) device named in element 1 is to be searched.
*ASPGRP
The entire group of the primary auxiliary storage pool (ASP) device named in element 1 is to be searched.
Top

Output (OUTPUT)

Specifies where the output from the command is sent.

*
The output is displayed (if requested by an interactive job) or printed with the job's spooled output (if requested by a batch job).
*PRINT
The output is printed with the job's spooled output.
*OUTFILE
The output is directed to the database file specified for the File to receive output (OUTFILE) parameter.
Top

File to receive output (OUTFILE)

Specifies the database file to which the output of the command is directed. If the file does not exist, this command creates a database file in the specified library.

Note: If a new file is created, the text describing that file is "Output file for DSPOBJD" and the public authority is the same as the create authority specified for the library in which the file is created. Use the Display Library Description (DSPLIBD) command to show the library's create authority. The database format (QLIDOBJD) of the output file is the same as that used in the IBM-supplied database file QADSPOBJ.

Qualifier 1: File to receive output

name
Specify the name of the file to which the output of the command is directed.

Qualifier 2: Library

*LIBL
All libraries in the library list for the current thread are searched until the first match is found.
*CURLIB
The current library for the job is searched to find the file. If no library is specified as the current library for the job, the QGPL library is used.
name
Specify the name of the library to be searched to find the file.
Top

Output member options (OUTMBR)

Specifies the name of the database file member that receives the output of the command.

Element 1: Member to receive output

*FIRST
The first member in the file receives the output. If OUTMBR(*FIRST) is specified and the member does not exist, the system creates a member with the name of the file specified for the File to receive output (OUTFILE) parameter. If the member already exists, you have the option to add new records to the end of the existing member or clear the member and then add the new records.
name
Specify the name of the file member that receives the output. If it does not exist, the system creates it.

Element 2: Replace or add records

*REPLACE
The system clears the existing member and adds the new records.
*ADD
The system adds the new records to the end of the existing records.
Top

Examples

Example 1: Displaying a Basic Description of Objects

DSPOBJD   OBJ(X/PAY)  OBJTYPE(*ALL)

A basic description of all the objects for which you have some authority (except exclude (*EXCLUDE) authority) that are named PAY in library X are shown. Objects in the library for which you have no authority are not shown.

Example 2: Displaying a Full Description of a Program

DSPOBJD   OBJ(X/PAY)  OBJTYPE(*PGM)  DETAIL(*FULL)

A full description of the program named PAY in library X is shown. The display includes all the attributes of the program.

Example 3: Displaying Program Information

DSPOBJD   OBJ(*USRLIBL/PAY)  OBJTYPE(*PGM)

This command shows information about the first program named PAY that is found in the user portion of the library list for the current thread.

Example 4: Displaying a Basic Description of Files

DSPOBJD   OBJ(Z/ABC*)  OBJTYPE(*FILE)

A basic description of all of the files whose names begin with ABC (generic name) located in library Z for which you have some authority (except exclude (*EXCLUDE) authority) are shown.

Top

Error messages

*ESCAPE Messages

CPFB8ED
Device description &1 not correct for operation.
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.
CPF2115
Object &1 in &2 type *&3 damaged.
CPF2121
One or more libraries cannot be accessed.
CPF2123
No objects of specified name or type exist in library &2.
CPF2124
No specified objects can be displayed from library &2.
CPF2150
Object information function failed.
CPF2176
Library &1 damaged.
CPF2177
OBJTYPE value not compatible with OBJ value.
CPF218C
&1 not a primary or secondary ASP.
CPF218D
&1 not a primary ASP when *ASPGRP specified.
CPF2182
Not authorized to library &1.
CPF2189
Not authorized to object &1 in &2 type *&3.
CPF326B
Damage to file &1 in library &2.
CPF9809
Library &1 cannot be accessed.
CPF9814
Device &1 not found.
CPF9825
Not authorized to device &1.
CPF9827
Object &1 cannot be created or moved into &2.
CPF9833
*CURASPGRP or *ASPGRPPRI specified and thread has no ASP group.
CPF9845
Error occurred while opening file &1.
CPF9846
Error while processing file &1 in library &2.
CPF9847
Error occurred while closing file &1 in library &2.
CPF9850
Override of printer file &1 not allowed.
CPF9851
Overflow value for file &1 in &2 too small.
CPF9860
Error occurred during output file processing.
CPF9899
Error occurred during processing of command.
Top