The Display Job Description Libraries command provides two functions
for one, generic, or all job descriptions: 1) A simple listing of the
libraries in each job description 2) A check for any non-existent
libraries. The output is either displayed or listed.
You must have *ALLOBJ special authority to use a qualified library
name of *ALL or *ALLUSR.
To list all libraries in all job descriptions, specify:
DSPJOBDLIB JOBD(*ALL/*ALL)
To check all job descriptions for non-existent libraries, specify:
DSPJOBDLIB JOBD(*ALL/*ALL) CHECK(*YES)
The DLTJOBDLIB command may be used to delete a library from one or
more job descriptions.
System handling of libraries in Job Descriptions
------------------------------------------------
A job always requires that a Job Description (*JOBD) object type be
assigned. A Job Description may be used to assign the libraries used
in the library list for the job and in some cases is required.
Therefore, a question arises that is 'What does the system do if a
library in a JOBD no longer exists?'
When SBMJOB is used, the INLLIBL parameter defaults to *CURRENT
meaning the current library list is used in batch. If *CURRENT is
used, it does not matter what libraries are defined for the Job
Description specified in the JOBD parameter for SBMJOB. Only the
current list is used.
Assume that you created Job Description ABC with an INLLIBL of LIB1,
LIB2, and LIB3. What would happen if LIB3 were deleted and no longer
existed? If you specify SBMJOB and take the default for INLLIBL the
system never bothers to check if LIB3 exists.
However, if you specified:
SBMJOB CMD(xxx) JOBD(ABC) INLLIBL(*JOBD)
the SBMJOB command will fail because LIB3 does not exist.
When an interactive job is started, it also uses a JOBD and would
fail if a library did not exist.
There are other ways of submitting a batch job besides SBMJOB (such
as a Job Scheduling Job). These types of jobs generally have more
considerations about whether a library exists.
Because most batch jobs are submitted by using the defaults for
SBMJOB, there is a good possibility that several JOBDs on a system
will contains libraries that no longer exist. You can use DSPJOBDLIB
to help determine where these exist to assist in cleanup.
DSPJOBDLIB escape messages you can monitor for
----------------------------------------------
None. Escape messages from based on functions will be re-sent.
DSPJOBDLIB Command parameters *CMD
-----------------------------
JOBD The qualified name of the job description. A
generic name or *ALL may be entered.
The library value defaults to *LIBL. A specific
library, *USRLIBL, *CURLIB, *ALLUSR, or *ALL may be
entered.
CHECK A *YES/*NO option for whether to check if the
libraries specified in the job description exist on
the system or just list the libraries.
*NO is the default to simply list all the libraries
that are specified in the job descriptions.
*YES may be specified to check the libraries
specified in the job descriptions to see if they
still exist.
OUTPUT How to output the results. * is the default to
display the spooled file if the command is entered
interactively. The spooled file is deleted after it
is displayed.
If the command is entered in batch or *PRINT is
specified, the spooled file is output and retained.
Restrictions
------------
You must have *ALLOBJ special authority to use a qualified library
name of *ALL or *ALLUSR.
Prerequisites
-------------
The following TAA Tools must be on your system:
CHKALLOBJ Check *ALLOBJ special authority
CVTJOBD Convert job descriptions
EXPVAL Expand value
RTVSYSVAL3 Retrieve system value 3
SNDCOMPMSG Send completion message
SNDESCINF Send escape information
Implementation
--------------
None, the tool is ready to use.
Objects used by the tool
------------------------
Object Type Attribute Src member Src file
------ ---- --------- ---------- ----------
DSPJOBDLIB *CMD TAAJBDJ QATTCMD
TAAJBDJC *PGM CLP TAAJBDJC QATTCL
TAAJBDJR *PGM RPG TAAJBDJR QATTRPG
|