v1.00 - Original
v1.01 - Fixed bug when using *ALL for subsystem and debug mode. Detail
lines weren't printing.
Fixed heading alignment on debug report.
v2.00 - Registration updates.
v2.01 - Registration fix. If you aquired keys for v2.00 of JOBWATCH, please contact
us for new keys for this version.
v3.00 - Added Job Maintenance screen (F6 from JOBWATCHCF command) that allows you to
set up jobs to check for activity. Enter a job name, a status you want to
check for (*ACTIVE, *JOBQ, *OUTQ, or *ANY for every status) and the minimum
number of jobs matching that status to check for. If less jobs that
specified are found, the command entered will be run.
v3.01 - Parameters &Y and &L were reversed. Fixed.
Added new parameter &E that will return then message text from the last (newest)
message from the job log in question.
(SP111006) - Updated message returned from &E to include the message
Fixed bug in message returned with garbage characters.
More error checking in returning error message text. Was
erroring when it tried to process a job that no longer
Fixed bug when returning an error message greater than
1024. Was causing an error in F.MSG that said length
or start position was greater than the receiver variable.
Fixed bug when using &E code and message had a single quote
Added feature in F6 (Job Maintenance) so in addition to
specific job names to look for, also allow the use of
v3.10 - Added new option in the Job Maintenance screen to allow the
status of *MINACT. This will stand for "Minutes Active". The
MIN column can then be filled with the maximum number of minutes
you want a job to run. If this is exceeded, the command
associated will be run.
v4.00 - Added licensing by date (SaaS) option.
v4.10 - Added the replacement variable &C which will return a list of
object locks for the job in the format:
Removed &K replacement variable.
Included module JW001MD that has a procedure named JWObjLocks()
that will return a list of object locks for a specific Job,
user and job number.
Included sample program JWSAMP that shows how to use the
Included source PF QRPGLESRC that has source for JWSAMP
Included source PF QCOPYSRC that has the /COPY member for
JW001MD prototype definition(s).
Made replacements bigger for message so that the message isn't
SP170405 - Bug found when a job had a lock on more than 100 objects. Fixed.
SP170421 - Added the following replacement parameters for the *MINACT
Job Maintenance commands. &U - User ID, &N - Job Number, &T - Job Type,
&B - Job Subtype
v5.00 - Added Message Queue Status monitoring (V7R2 or higher required). When using
JOBWATCHCF the F7 command key will allow you to set up Message Queue
monitoring by message queue, user,job, severity, etc. The replacement
variables avilable are:
&L = Message Queue Library (10)
&Q = Message Queue (10)
&I = Message ID (7)
&T = Message Type (13)
&S = Message Subtype(22)
&X = Message Text (1024)
&V = Message Severity (5)
&Z = Message Timestamp (26)
&U = From User (10)
&J = From Job (28)
&P = From Program (10)
&R = Message File Library (10)
&F = Message File (10)
&2 = Message Second Level Text (4096)
&M - Machine Name (8)
Added a TRIM option for commands that are run. By default TRIM will be
set to *YES which means the values used in substitution will be trimmed.
This option is good when you are calling a command. The value of *NO
will not trim the data. This option is good when you are calling a
program with replacement variables.
Changed the debug option to produce a stream file in the IFS vs a printer
file. The default file name is /tmp/jobwatchdebug.txt and can be
changed on the JOBWATCH command.
SP200821 - Bug found when retrieving job log messages. For one call the
Clear API wasn't being called after which could have caused
storage issues in some cases.
SP210412 - Updated application to allow 1000 watches vs 40 previously.
SP210422 - Updated debug log to show number of jobs running vs number
of jobs processed.
SP210505 - Added more debugging messaging for subsystems monitored, type
of jobs and *ACTIVE and *MINACT jobs.
SP210507 - Added a check when *ACTIVE match is met to double check the
total number of jobs running.
v5.10 - Removed &U, &N, &T, &B and &I from being used as replacement variables
when checking for a ACTIVE job counts. That's because these
really aren't available to the system when counting the number of
Added option in Job Status Maintenance to allow the monitoring
of CPU percentage. For example, no monitor for jobs over 50% CPU,
you would use the entry *C50. The command run will then be done
when a job's CPU% is greater than or equal to 50.
Added &CPU as a replacement variable for CPU and Status jobs. The
job's CPU percentage will be replaced (9,2).
When running multiple cycles, every 20 cycles the job CPU statistics
will be reset so that the job list being used to calculate the CPU
percentage is cleared of any ended jobs.
Added a message to alert the highest CPU job at the end of a run in
the JOBWATCH debug output.
SP210617 - Fixed bug when number of jobs was over 9,999.
v5.20 - Added Monitor Message Queue (MSGQ) parameter to JOBWATCH command. This
defaults to *YES. This can be useful when submitting multiple
JOBWATCH jobs and you want some to not monitor a message queue.
v5.30 - Updated to include option *ONLY for the MSGQ parameter so that you
can submit a job that only watches message queues.