Batch Processing, Systems Managed Storage and Tape Processing

If you have any questions about the content of this page, please contact Requests for clarification.


Batch Standards






Job Naming Standards
Please start all job names with the appropriate two-character institution code  for your organization; for example, NW for NWRDC. If you do not know your  two-character institution code, contact (850) 245-3500 or ACF2 Request. In most cases  it is the same as the two first letters of your ACF2 logonID.

Start development jobs (tests, compiles etc.) with the full five or six  character logon id of the submitter/retriever of the job. Because this leaves  only three characters for uniqueness, you must use the programmer name field (20  characters) to differentiate between like-named jobs.



Example JCL syntax:
//jobname JOB accounting_data,
// MSGCLASS=output_class,
// MSGLEVEL=(statements,messages),
// class="job_class" 

MSGCLASS Parameter
The MSGCLASS parameter assigns the job log for a job to a particular sysout  output class. The job log contains the JOB statement, the JCL for the job, JCL  processing messages, in-stream and cataloged procedure statements, and JES2  messages and MVS operator messages

The default value supplied for the job log if MSGCLASS is omitted is A.
The default value for the * in //ddn DD SYSOUT=* is the MSGCLASS value set in  the MSGCLASS parm.

Valid Message (or Output) Classes at the NWRDC
The following output classes have specific meaning:

A,JCreate output on the job spool regardless of run’s success
B,KCreate output for PUNCH
HHold the output regardless of run’s success
JCreate output on the job spool regardless of run’s success
XDo not create output on the job spool, regardless of run’s success, "no output"
YPrint the output only if the run was unsuccessful


MSGLEVEL Parameter

The MSGLEVEL parameter is used to control the listing of the job log for a job.

The following job log elements can be controlled:

  • The JOB statement.
  • All JCL in the job's input stream including all JCL statements and JES2 control  (JECL) statements
  • In-stream and cataloged procedure statements for a procedure invoked by a job  step
  • JCL substitution and processing messages
  • JES and MVS operator messages concerning the job's processing, including those  for allocations of devices/volumes, start/stop of job steps and the job, and the  disposition of the data sets used

Syntax: MSGLEVEL=({statements}{,messages})

The parentheses can be left off if only the first subparameter is used.

Values for 'statements' in the MSGLEVEL keyword can be one of these:

0only JOB statement prints
1all JCL and JES statements and messages print
2only JCL & JES statements print


Values for 'messages' in the MSGLEVEL keyword can be one of these:

0only JCL messages print. If the job ABENDs, then JES mssages print  also.
1JCL and JES messages print



// MSGLEVEL=(0,0) Print minimal job log:
// MSGLEVEL=(1,1) Print everything in job log: (this is the default value)


CLASS Parameter

The CLASS parameter is used to assign your job to a job processing class. The  class you should request depends on the characteristics of the job and NWRDC's  rules for assigning classes.

Job Classification Determination and Restrictions

JOB classes 1 through 7 are system generated at the NWRDC. Customers of the  NWRDC should not use these classes. If one of these classes is specified in the  CLASS parameter, NWRDC will resubmit the job under a generated JOB class.

The algorithm for system-generated JOB classes (i.e., 'CLASS =' not specified on  the JOB card) has been enhanced at the NWRDC to increase system performance.  Three resources are the controlling factors in determining the class to be  system assigned:

1. REGION size
2. TAPE Drive use count
3. CPU time specified for JOB execution

REGION size is controlled by the 'REGION=' parameter on the JOB or EXEC  statement or by the system default of 4096K bytes.

TAPE DRIVE quantity can be reduced by the use of the 'UNIT=AFF=' parameter or by  using disk space instead of magnetic tape where applicable.

The quantity of CPU time is specified with the 'TIME=' parameter on the JOB  card as defined in the JCL manual. The system default for time is 30 minutes (A  VERY LARGE VALUE).

The user specified JOB classes provided by the NWRDC are:

CLASS ValueMeaning
VHighest priority (see Job Pricing Differential table) - can require  any combination of resources
EHigh priority (see Job Pricing Differential table) - can require any  combination of resources
CLow priority - typically overnight  (see Job Pricing  Differential table) - can require any combination of resources
GLowest priority - typically weekend (see Job Pricing Differential  table) - can require any combination of resources
Dfor DEVELOPMENT and can use up to four tape drives and up to four  megabyte of region. CLASS D is also generated by the system under the  same conditions.
Fis for Cross Domain FILE TRANSFER jobs.

Warning: class codes should not be used to schedule jobs.


Job Class Scheduling

Class G/Priority "0" Jobs:
Executes on weekends, after 2100 on Friday, and
Cancelled from the system if not completed by 0220 Monday morning.

Class C/Priority "1" Jobs:

Executes only between 2100 and 02:20 Monday, between 2100 and 0500 Tuesday  through Friday (and on weekends)
Jobs not started by 0500(0220 Monday) will be held until the following 2100.
Jobs still in execution at 0500 Tuesday, Wednesday, Thursday or Friday are  subject to being cancelled.
Jobs still in execution at 0220 Monday will be cancelled due to system IPL.

Calculated Job Priorities
Calculated job execution priorities will be based upon the following table:



If the 'CLASS=' parameter is omitted from the JOB card, a class will be generated for the job. The generated classes are 1 through 7, L, A, and D. CLASS  1 jobs, for example, are generated under the following conditions: 0 tape usage,  less than one megabyte region size and no more than ten seconds of CPU time. The  table that follows describes the requirements for all generated classes.



Time in
Max Tape Drives
11 - 100
211 - 300
331 - 600
461 - 18000
51 - 101
611 - 301
731 - 3001


NWHOLD: A Technique for Holding Jobs

Use of CONTROL-M is recommended for scheduling jobs to start after a certain  time

Hold Data Set Names
NWR maintains allocations for thirty-one datasets: twenty-four hourly datasets  and seven day-of-the-week datasets. The dataset names are as follows:



Be sure to use DISP=SHR for all NWR.HOLD.xxxxxx data sets.

You may use one of the “time” data sets and/or one of the “day” data sets to  force a delay in the start of your job. For example, if you wanted a job to run  sometime after 8 PM on Tuesday, you would add the following JCL to the job  anywhere in a job step.


Special Note on “DAY HOLD” data sets:

The “day” in question does not start until 8 AM.

So to hold a job until 7 AM on a Friday, the following JCL would be required:



System-Managed Storage

All Customer data sets and volumes are SMS managed


Storage Class
Storage class is an optional parameter. For most NWRDC institutions, if not  entered, the storage class is assigned automatically by SMS ACS routines.


Storage Groups
Institutions that require multiple disk volumes will be assigned unique SGIIXXX  names that related to a specific group of volumes, where II is an institution  code and XXX will be chosen by the customer. XXX is usually STD or DB2 but can  be anything the institution wants.

 Note: DASD volumes can be viewed by Storage Group by using the Quick-Ref product.


Management Class

Management class is an optional parameter. If not supplied, non-DB2 data will  default to the NWRDC default management class of MCDEFALT which will expire a  dataset 7 years after last usage. The current default for disk data sets is  permanent retention. MCDEFALT is an attempt to control the lifespan of data sets  that are migrated by HSM, then not used again. Data sets that are historical in  nature and must be retained beyond 7 years after last usage should be allocated  or subsequently altered to management class MC4EVER. If not supplied, DB2 data  will default to the management class of MCNOBAK, which differs from MCDEFALT as  follows: data sets are permanent, they will never expire; no autobackup. For  DB2, backup and recovery is performed via DB2 services. Customers are  responsible for image copy (full is recommended) and recovery procedures for  their tablespaces to correspond to the 60 day recovery window.


Management Classes

For migration: eligible for auto-migration to level 1(disk) after 10 days  non-usage; eligible for auto-migration to level 2(tape) after 14 days non-usage;  both auto-migration and migration by command are supported.

MCDEFALTdefault mgmt class; assigned if none explicitly selected.
MCCMDMIGmigration by command only, no automigration.
MCMONTHtemp data sets expire 45 days after last usage;two backups kept.
MCNOLV1no level 1 migration, goes directly to level 2 after 10days  non-usage, intended primarily for GDGs
MCNOMIGperm data sets will never expire; no command or auto migration
MCNOBAKpermanent; data sets will never expire; no autobackup,command backup only. This  is the default managementclass for all BD2 data.
MCSLOWMGslowmig, automig 90 days after last usage directly to lvl 2, no lvl 1
MCSTLPshort term, low-priority; automatically assigned to TSOlist and log data sets;  data set will expire 105 daysafter last usage; no autobackup, command backup only, 1backup kept.
MCTEMPtemporary; data sets will expire 4 days from creation or one day from last usage, whichever comes later;command migration only, no automigration; no backups.
MC4EVERpermanent; data sets will never expire.


Data Classes

DCTINYfor sequential datasets of approximately 50,000 bytes.
DCSMALLfor sequential datasets of approximately 750,000 bytes
DCMANYwill allow datasets to span several DASD volumes.


Tape Management System

TMS Expiration and Retention Dates TMS selects volumes for deletion based upon  the expiration date supplied via JCL parameter EXPDT or the retention period  supplied via JCL parameter RETPD. The value supplied via RETPD is converted to a  date. If no EXPDT or RETPD value is supplied, then the TMS default of 7 day  retention takes effect. However, if the step abends, open output tapes default  to 2-day retention only.

Certain values supplied for EXPDT are TMS codes, rather than true dates. The  only currently valid TMS codes are explained below:


98000Used for external tapes unknown to TMS; used only when reading a tape created by  an outside agency or when writing to a non-NWRDC tape volume
98nnnRetain for nnn days before scratching
99000CATLG controlled; i.e., when the dataset is uncataloged, the tape will  subsequently be scratched
99nnnRetain for nnn cycles before scratching; this should only be used with datasets  with the same name, not with generation data sets
99365Retain permanently