The Decompress Object (DCPOBJ) command allows you to permanently decompress programs, panel groups, menus, display files, printer files, modules, and service programs.
Compressed objects use less storage space than decompressed objects. When a compressed object is used or a compressed program is called, a decompressed version of the object automatically becomes available to the user.
Decompressed objects use the system storage space allocated to them and are in a final, ready-to-use state.
Temporarily Decompressed Objects are temporarily decompressed copies of compressed objects. The system allocates storage space for the temporary copies until the system or the user determines that the temporary storage space needs to be reclaimed.
Temporary storage is automatically reclaimed when:
The RCLTMPSTG command is run
The next initial program load (IPL) is run
The object is used often enough to cause the system to permanently decompress it
When an object is permanently decompressed, the compressed version of the object is destroyed as well as any temporary forms of the object; however, compressed versions remain intact as long as the objects are temporarily decompressed.
Restriction: The user must have *USE authority to the objects specified on the command and execute authority to the library containing the objects.
Specifies the name and library of the object to be decompressed.
This is a required parameter.
The possible values are:
*ALL
All objects in the specified library of the object type specified on the Object type prompt (OBJTYPE parameter) are decompressed.
generic*-object-name
Specify the generic name of the object to be decompressed. A generic name is a character string that contains one or more characters followed by an asterisk (*).
object-name
Specify the name of the object to be decompressed.
The possible library values are:
*LIBL
All libraries in the library list for the current thread are searched until the first match is found.
*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.
*CURLIB
Only the current library is searched. If no current library entry exists in the library list, QGPL is used.
*ALL
All libraries in the system, including QSYS, are searched.
*ALLUSR
All user libraries are searched. All libraries with names that do not begin with the letter Q are searched except for the following:
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:
'xxxxx' is the number of a primary auxiliary storage pool (ASP).
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.
Specifies the type of object to be decompressed. You can specify *ALL, or you can specify one or more of the other possible values.
This is a required parameter.
The possible values are:
*ALL
All compressed menus, panel groups, display and printer device files, programs, modules, and service programs with the name and library specified on the Object prompt (OBJ parameter) are decompressed.
*FILE
Display and printer device files with the name and library specified on the Object prompt (OBJ parameter) are decompressed.
*MENU
Menus with the name and library specified on the Object prompt (OBJ parameter) are decompressed.
*MODULE
Modules with the name and library specified on the Object prompt (OBJ parameter) are decompressed.
*PGM
Programs with the name and library specified on the Object prompt (OBJ parameter) are decompressed.
*PNLGRP
Panel groups with the name and library specified on the Object prompt (OBJ parameter) are decompressed.
*SRVPGM
Service programs with the name and library specified on the Object prompt (OBJ parameter) are decompressed.
Specifies whether the entire program or service program or only the instruction stream is decompressed. This parameter is valid only when *PGM, *SRVPGM, or *ALL is specified on the Object type prompt (OBJTYPE parameter).
The possible values are:
*ALL
The entire program or service program (instruction stream and observability tables) is decompressed.
*INS
Only the instruction stream of the program or service program is decompressed.