|
Function To cancel one or more
jobs on the specified queue, including purging the job's output, and
removing all traces of it from the system. If the job is active, wait
for it to complete its current activity, then purge it from the system.
Syntax
>>-$P--+-Job--+--+--------------------------------------+------->
+-JOBQ-+ +-nn--+------------+-------------------+
+-JQ---+ | '- ---+-mm-+-' |
+-Stc--+ | '-*--' |
'-Tsu--' +-'--job--'----------------------------+
| .-,--------------------------. |
| V | |
'-(----+-+-nn-+--+------------+-+-+--)-'
| '-*--' '- ---+-mm-+-' |
| '-*--' |
+-job--------------------+
'-'--job--'--------------'
>--+--------------------------------------------------------+--->
'-,--+---+--CMDauth--+-=--+--+-cmdauth-----------------+-'
'-/-' '-^=-' | .-,-------------. |
| V (1) | |
'-(----------cmdauth-+--)-'
>--+---------------------------------+-------------------------->
'-,--+-+---+--Age--+--+->-+--days-'
| '-/-' | '-<-'
'-+---+--DAys-'
'-/-'
>--+-------------------------------+---------------------------->
'-,--+---+--Hours--+->-+--hours-'
'-/-' '-<-'
>--+----------------------------------------+------------------->
'-,--+-+---+--JM------+--+-=--+--jobmask-'
| '-/-' | +-^=-+
'-+---+--JOBMASK-' +->--+
'-/-' '-<--'
>--+---------------------+-------------------------------------->
'-,--+---+--PROTected-'
'-/-'
>--+------------------------------------+----------------------->
'-,--+---+--Queue--+-=--+--+-CNV---+-'
'-/-' '-^=-' +-INPUT-+
+-OUT---+
+-PPU---+
+-PURGE-+
+-RCV---+
+-SETUP-+
+-SPIN--+
+-XEQ---+
'-XMT---'
>--+------------------------------------+----------------------->
'-,--+---+--REBUILD--+-=--+--+-No--+-'
'-/-' '-^=-' '-Yes-'
>--+------------------------------------------------------------------------------------------+-->
| .-,------------------------------------------------------. |
| V | |
'-,--+-+---+--SPL---+--=--(----+-+-+---+--%-------+--+->-+--percent-----------------+-+--)-'
| '-/-' | | | '-/-' | '-<-' |
'-+---+--SPOOL-' | '-+---+--Percent-' |
'-/-' | '-/-' |
+-+---+--Tgs--+->-+--tgs-----------------------------+
| '-/-' '-<-' |
'-+---+--Volumes--+-=--+--+-volume-----------------+-'
'-/-' '-^=-' | .-,------------. |
| V (2) | |
'-(----------volume-+--)-'
>--+---------------------------------+-------------------------->
'-,--+---+--TYPE--+-=--+--+-JOB-+-'
'-/-' '-^=-' +-STC-+
'-TSU-'
>--+--------------------+--+------------------+----------------->
'-,--BUSY=--+-YES--+-' '-,--CARDS=--cards-'
+-ANY--+
+-NO---+
'-NONE-'
>--+------------------+--+----------------+--------------------->
'-,--Class=--class-' '-,--OFFS=--offs-'
>--+--------------------+--+------------------------+----------->
'-,--SCHENV=--schenv-' '-,--SCHENV_AFF=--member-'
>--+------------------------+--+--------------------------+----->
'-,--SECLABEL=--seclabel-' '-,--SECLABEL_AFF=--member-'
>--+------------------------+----------------------------------->
'-,--SRVCLASS=--srvclass-'
>--+-----------------------------------------------------------------+-->
'-+---+--Sysaff--=--+-memname-----------------------------------+-'
'-/-' +-ANY---------------------------------------+
+-IND---------------------------------------+
'-(--+-memname-------------------------+--)-'
+-ANY-----------------------------+
| .-,---------------------------. |
| V (3) | |
'-----+----+--+-memname-+-------+-'
+-=--+ +-ANY-----+
'-^=-' '-IND-----'
>--+--------------------+--+--------------------+--------------->
'-,--USERID=--userid-' '-,--HOLD=--+-ALL--+-'
+-JOB--+
+-DUP--+
+-ARM--+
'-NONE-'
>--+----------------------------------------+------------------->
'-,--DELAY=--+-BUSY_ON_DEVICE----------+-'
+-HOLD--------------------+
+-LIMIT-------------------+
+-LOCKED------------------+
+-SECLABEL----------------+
+-SYSAFF------------------+
+-SCHENV------------------+
'-MEMBER_STATUS=--+-YES-+-'
'-NO--'
>--+-----------------------------------+------------------------>
'-,--CC--+------------------------+-'
| .-,---------. |
| V | |
'-=--( ---+-ABEND-+-+--)-'
+-CODE--+
'-TYPE--'
>--+------------------------------------+----------------------->
'-,--+---+--XEQNode--+-=--+--xeqnode-'
'-/-' '-^=-'
>--+---------------------------------+-------------------------><
'-| Selection limiting keywords |-'
Selection limiting keywords
|--+-----------------------------------------------+------------|
'-,--+-+---+--JC------+--+-=--+--job correlator-'
| '-/-' | +-^=-+
'-+---+--JOBCORR-' +->--+
'-/-' '-<--'
Notes: - cmdauth can be coded up to 2 times
- volume can be coded up to 253 times
- Multiple Sysaff values can be coded up to 33 times
Parameters - Age|DAys<days | Age|DAys>days
- Specifies the age of
affected jobs in days. Only jobs more (with DAYS>nn) or less (with
DAYS<nn) than the specified number of days in age are affected,
The days are counted from the current hour.
- BUSY=
- Specifies
one of the following:
- The system name or number on which the job is busy. Note that
you can specify a value of 0 to indicate the job is not busy. You
can also specify values above 32 to match systems with invalid values
in the BUSY value (for example, $PJOBQ,BUSY>32)
- YES or ANY, indicating that all busy jobs are to match
- NO or NONE, indicating that all non-busy jobs are to match
- CARDS=cards
- Specifies
the number of input cards associated with the job.
- CC=(ABEND|ABENDED|CANcelled|CNVT_abend|CODE| COMPleted|ENDed_by_cc|EOM_failure|JCLerror|
SECurity_failure|TYPE)
- Specifies
the completion information associated with the job.
- ABENDED
- Specifies only jobs which have abnormally ended.
- ABEND
- Specifies the ABEND code associated with the job's termination.
- CANcelled
- Specifies only jobs which were cancelled by the operator.
- CNVT_abend
- Specifies only jobs which have abnormally ended during the conversion
phase.
- CODE
- Specifies the last (or highest) completion code of steps in the
job.
- COMPleted
- Specifies only jobs which completed.
- ENDed_by_cc
- Specifies only jobs which were ended by a step completion code.
- EOM_failure
- Specifies only jobs which failed in end-of-memory processing.
- JCLerror
- Specifies jobs which did not execute due to a JCL error.
- SECurity_failure
- Specifies jobs which failed security validation.
- Class=class
- Specifies a job class used to select a subset of jobs that have a
matching job class. Wildcard characters can also be specified: see
Using wildcards for details.
- CMDauth=cmdauth
- Only
the jobs that can be affected from the specified remote(s) or node(s)
will be released. The valid specifications are:
- LOCAL|ANYLOCAL
- Only the local devices at the local node can affect the output.
- Nnnnn|nodename
- Only local devices at the specified node can affect the output.
- Rnnnn
- Only the specified remote device can affect the output.
- NnnnnRnnnn|nodename.Rnnnn
- Only the specified remote device at the specified remote node
can affect the output.
- destid
- A destid corresponding to any of the above remote devices.
Note: Specification of the CMDAUTH filter does not override the authority
of the console from which the command is issued; both the authority
of the console and the specified CMDAUTH filter must match for the
job to be affected.
- DELAY={BUSY_ON_HOLD|HOLD|LIMIT|LOCKED| No|QUEUE_ERROR|SCHENV|SECLABEL|SPOOLS_NOT_AVAILABLE|SYSAFF| MEMBER_STATUS|Yes}
- Specifies
reasons why a pre-execution job does not enter execution:
- BUSY_ON_DEVICE
- The job does not execute because it is busy on a device (such
as an offload job transmitter).
- HOLD
- The job does not execute because it is held, its job class is
held, or another job with the same jobname is executing.
- LIMIT
- The job does not execute because the job class execution limit
has been reached (as specified by JOBCLASS XEQCOUNT=(MAX=)).
- LOCKED
- The job does not execute because it's being updated by JES2.
- SECLABEL
- The security label (SECLABEL) assigned to the job is not defined
as active on any member that is active.
- SYSAFF
- Each of the members for which the job has affinity (SYSAFF) is
inactive, or the job has specified independent state, and the JES2
member is not independent (IND=NO).
- SCHENV
- The job's scheduling environment is not available on any member,
or is available only on systems where JES2 is inactive. Use the $DJ'jobname',LONG
command to find out what scheduling environment a job requires. Then
use the D WLM,SCHENV=schenv-name command to find out the current status
of the scheduling environment on each system in the sysplex.
The
SCHENV state masks other reasons why the job might be ineligible to
run, such as the $P and $P XEQ commands having been issued. Also,
note that the SCHENV delay is detected only after a job goes through
conversion. If a job is delayed prior to conversion because of system
affinity requirements, scheduling environments are not considered
in determining delay status.
- MEMBER_STATUS
- A combination of system affinity, scheduling environment and SECLABEL
restrictions is preventing the job from running or other member events
prevent the job from running on systems where the job is otherwise
eligible. These events on other members include the following:
- $P command has been issued
- $P XEQ command has been issued
- BOSS=NO (used in a poly-JES environment only)
When used as a command filter, the string MEMBER_STATUS
matches on jobs delayed for SYSAFF, SCHENV, SECLABEL,
or MEMBER_STATUS. To get detail on why a job is delayed, display
job status with the $DJ'jobname',LONG command or display member status
with the $DJMEMBER(member-name) command.
- Yes
- Display only jobs which are delayed for any of the above reasons.
- No
- Display only jobs which are not delayed for any of the above reasons.
- H|Hours=hours
- Specifies the age of
affected jobs in hours. Only jobs more (with HOURS>nn) or less (with
HOURS<nn) than the specified number of hours in age are affected.
- HOLD
- Specifies
the hold status of the job.
- ALL
- Specifies jobs held by the $H A command.
- JOB
- Specifies jobs held by the $H J command, TYPRUN=HOLD, TYPRUN=JCLHOLD,
or held due to error.
- DUP
- Specifies jobs held for duplicate job name.
- ARM
- Specifies jobs which are held awaiting restart through ARM.
- NONE
- Specifies jobs which are not held.
- JC|JOBCORR=job correlator
- Specifies a combination of 1-64 alphanumeric, special (colon,
period or underscore) and wildcard characters that can be used to
select a subset of jobs that have a matching job correlator. For a
description of wildcard characters, refer to Using wildcards.
- JM|JOBMASK=jobmask
- Specifies 1 to 8
alphanumeric, special ($, #, or @) or wildcard characters (or a combination
of them) that can be used to select a subset of jobs whose job name
matches this combination of characters (mask). For a description of
wild cards, see Using wildcards.
Note: - This is a positional parameter. Specify this following the job_id
(JOB, STC, or TSU) or JOBQ parameter.
- The JOBMASK parameter is not valid with the ‘jobname ' parameter.
- job
- Specifies
1 to 8 alphanumeric, special ($, #, or @) or wildcard characters (or
a combination of them) that can be used to select a subset of jobs
whose job name matches this combination of characters (mask).
- ‘job'
- The name of the job that is cancelled. This name must appear as
coded on the JOB statement and must be enclosed in apostrophes. If
more than one job exists with this name, no action is taken.
- Job
- A batch
job or range of batch jobs is to be cancelled.
- JOBQ|JQ
- Specifies all jobs,
STCs, and TSUs across the MAS for processing.
- OFFS=offs
- Specifies
offload device numbers on which the job has been archived.
- PROTected
- Indicates that all specified output groups, including output
groups that have been specified ‘protected', should be purged.
The 'protected' attribute is assigned to programs running in a transactional
environment such as APPC or OMVS, where the transaction output is
associated with the initiators like ASCHINIT or BPXAS. The ‘protected'
attribute can also be assigned to jobs by JES2 installation exits.
APPC output is always protected.
Note: Since the OUTGRP= parameter
identifies the output to be cancelled, you do not need to specify
PROTECTED with this operand, even for output that is protected.
- Queue={CNV|INPUT|OUT|PPU|PURGE|RCV| SETUP|SPIN|XEQ|XMT}
- Only
jobs on the specified job queue are to be purged.
- CNV
- Only jobs awaiting conversion are to be cancelled.
- INPUT
- Only jobs on the JES2 $INPUT queue are to be cancelled.
- OUT
- Only jobs awaiting output processing are to be cancelled.
- PPU
- Only jobs awaiting print/punch processing are to be cancelled.
- PURGE
- Only jobs awaiting purge processing are to be cancelled.
- RCV
- Only jobs on the JES2 $RECEIVE queue are to be cancelled.
- SETUP
- Only jobs on the JES2 $SETUP queue are to be cancelled.
- SPIN
- Only jobs awaiting spin processing are to be cancelled.
- XEQ
- Only jobs awaiting execution are to be cancelled.
- XMT
- Only jobs queued for network transmission are to be cancelled.
- REBUILD={No|Yes}
- Jobs
on the rebuild queue are to be cancelled (Yes) or not cancelled (No).
- SCHENV=schenv
- Specifies
the scheduling environment associated with the job.
- SCHENV_AFF=member
- Specifies the JES2 MAS members on which the scheduling environment
for this job is available.
- SECLABEL_AFF=member
- Specifies the JES2 MAS members on which the SECLABEL for this job
is available but only if the RACF® SECLABEL_BY_SYS is also active.
- SECLABEL=seclabel
- Specifies
the security label associated with the job.
- SPL|SPOOL={Percent|%|Tgs|Volumes}
- Only jobs with specific SPOOL characteristics are to be cancelled:
- Percent|%
- Only jobs using more
(with %>nn) or less (with %<nn) than the specified percentage of
the total available spool space are to be cancelled.
- Tgs
- Only jobs using more (with Tgs>nn) or less (with Tgs<nn) than
the specified number of track groups are to be cancelled.
- Volumes=(v1,v2,...)
- Only jobs which have allocated spool space on the specified spool
volume(s) are to be cancelled.
- SRVCLASS=srvclass
- Specifies
the service class of the job. The service class is available for batch
jobs only. It is not available for started tasks or time-sharing users.
The default workload manager (WLM) policy assigns a service class
of blanks to all jobs, and WLM-managed initiators can then select
such jobs for processing.
- Stc
- A started
task or range of started tasks is to be cancelled.
- Sysaff
- Specifies
jobs to process based on this system affinity. Up to 33 entries can
be coded by using a combination of the following values:
- memname
- Specifies the identifier (1 to 4 alphanumeric characters) of a
member in the JES2 multi-access spool configuration that a job has
in its system affinity list.
- ANY
- Specifies jobs that are eligible to run on any member in the JES2
multi-access spool configuration. If you specify ANY followed by the
IND parameter, they must be separated by a comma and the list must
be enclosed in parentheses, for example, (ANY,IND).
- IND
- Specifies the job that is selected and must be executed on a processor
operating in independent mode.
- Tsu
- A time-sharing
user or range of time-sharing users is to be cancelled.
- TYPE={JOB|STC|TSU}
- Indicates
whether only batch jobs (JOB), started tasks (STC), or time-sharing
users (TSU) are to be cancelled.
- USERID=userid
- Specifies
the userid associated with the job.
- XEQNode=xeqnode
- Only
jobs which are destined to execute at the specified node, or which
have already executed at the specified node, are to be cancelled.
The node name may be specified using the decimal node number (Nnnnnn)
or an EBCDIC node name.
Related Commands To purge a job's output
data set, see the $PO Job command.
Authority Required This command requires job authority. The description of the $T RDRnn command explains
how to ensure that the authority of the appropriate MVS™ system
command group is assigned.
This command requires update security access authority. For a description of assigning command
input authority, see z/OS JES2 Initialization and Tuning Guide, SA32-0991.
Scope MAS-wide. This command has
an effect across the entire MAS.
Messages The $HASP890 message displays
the jobs that are to be deleted.
If all output has been purged
for a specified job, JES2 issues the $HASP250 message to indicate
that the job has been purged.
Examples 1 $p j'myjob'
JOB00002 $HASP890 JOB(MYJOB)
$HASP890 JOB(MYJOB) STATUS=(AWAITING EXECUTION),CLASS=A,
$HASP890 PRIORITY=9,SYSAFF=(IBM1),HOLD=(NONE),
$HASP890 PURGE=YES
Job MYJOB is
purged from the system.
2 $p jobq,q=ppu,days>2
JOB00002 $HASP890 JOB(MYJOB)
$HASP890 JOB(MYJOB) STATUS=(AWAITING HARDCOPY),CLASS=A,
$HASP890 PRIORITY=1,SYSAFF=(IBM1),HOLD=(NONE),
$HASP890 PURGE=YES
TSU00065 $HASP890 JOB(D96CLW1A)
$HASP890 JOB(D96CLW1A) STATUS=(AWAITING HARDCOPY),CLASS=A,
$HASP890 PRIORITY=1,SYSAFF=(IBM1),HOLD=(NONE),
$HASP890 PURGE=YES
All batch
jobs, STCs, and TSUs awaiting print that are more than two days old
are purged from the system.
3 $pj9,age<1
JOB00009 $HASP890 JOB(IE)
$HASP890 JOB(IE) STATUS=(AWAITING PURGE),CLASS=A,
$HASP890 PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE),
$HASP890 PURGE=YES
JOB00009 $HASP250 IE PURGED -- (JOB KEY WAS B3FB7D66)
JES2 purges job 9 if age is less than one day.
4 $pj9-25,/days>1
$HASP003 RC=(52),
$HASP003 RC=(52),J9-25 - NO SELECTABLE ENTRIES FOUND MATCHING
$HASP003 SPECIFICATION
JES2 purges jobs
9 through 25 if age is greater than 1 day.
5 $pj(*),jc=*:inventory,age>200
JOB00141 $HASP890 JOB(INVJOB01) C
$HASP890 JOB(INVJOB01) STATUS=(AWAITING PURGE),CLASS=A,
$HASP890 PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE),
$HASP890 PURGE=YES
JOB00142 $HASP890 JOB(INVJOB02) C
$HASP890 JOB(INVJOB02) STATUS=(AWAITING PURGE),CLASS=A,
$HASP890 PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE),
$HASP890 PURGE=YES
JOB00143 $HASP890 JOB(INVJOB03) C
$HASP890 JOB(INVJOB03) STATUS=(AWAITING PURGE),CLASS=A,
$HASP890 PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE),
$HASP890 PURGE=YES
JOB00144 $HASP890 JOB(INVJOB04) C
$HASP890 JOB(INVJOB04) STATUS=(AWAITING PURGE),CLASS=A,
$HASP890 PRIORITY=1,SYSAFF=(ANY),HOLD=(NONE),
$HASP890 PURGE=YES
JOB00143 $HASP250 INVJOB03 PURGED -- (JOB KEY WAS C88BDD25)
JOB00142 $HASP250 INVJOB02 PURGED -- (JOB KEY WAS C88BDD24)
JOB00141 $HASP250 INVJOB01 PURGED -- (JOB KEY WAS C88BDD23)
JOB00144 $HASP250 INVJOB04 PURGED -- (JOB KEY WAS C88BDD26)
JES2 purges any batch job with an age
greater than 200 days and a job correlator user portion is the value
INVENTORY.
|