MF JCLAdvancedFeatures Slides
MF JCLAdvancedFeatures Slides
2
Confidential Information
• This Document is confidential to Infosys Limited. This document contains information and data that Infosys
considers confidential and proprietary (“Confidential Information”).
• Confidential Information includes, but is not limited to, the following:
– Corporate and Infrastructure information about Infosys;
– Infosys’ project management and quality processes;
– Project experiences provided included as illustrative case studies.
• Any disclosure of Confidential Information to, or use of it by a third party, will be damaging to Infosys.
• Ownership of all Infosys Confidential Information, no matter in what media it resides, remains with Infosys.
• Confidential information in this document shall not be disclosed, duplicated or used – in whole or in part – for
any purpose without specific written permission of an authorized representative of Infosys.
• This document also contains third party confidential and proprietary information. Such third party information
has been included by Infosys after receiving due written permissions and authorizations from the party/ies.
Such third party confidential and proprietary information shall not be disclosed, duplicated or used – in whole
© Infosys
or in part – for any purpose without specific written Technologies
permission Ltd. representative of Infosys.
of an authorized
4
Course Objectives(2 of 2)
5
Pre-requisites
• Z/OS Fundamentals
• JCL Fundamentals
• Knowledge of COBOL, REXX
7
DD statement parameters
• SYSOUT
• OUTPUT DD
• SEGMENT
• RETPD
• SPACE
• OUTLIM © Infosys Technologies Ltd.
SYSOUT=(class[,writer] [, {form-name,code-name}] )
9
SYSOUT parameter – Examples
Example 1
//ERXXXXXJ JOB ,,NOTIFY=&SYSUID
//STEP1 EXEC PGM=SBMPGM1
//STEPLIB DD DSN=OPERN.COBOL.LOADLIB,DISP=SHR
//SYSOUT DD SYSOUT=*
//
Example 2
© Infosys Technologies Ltd.
//ERXXXXXJ JOB ,,NOTIFY=&SYSUID
//STEP1 EXEC PGM=SBMPGM1
//STEPLIB DD DSN=OPERN.COBOL.LOADLIB,DISP=SHR
//SYSOUT DD SYSOUT=A
//
We enable you to leverage knowledge
© 2010 - 2011, Infosys Ltd. Confidential 10
anytime, anywhere!
Note: OUTPUT JCL statement and JES2/JES3 statements will be discussed later on this
course.
10
OUTPUT JCL statement and OUTPUT DD
parameter
• OUTPUT JCL statement with OUTPUT DD parameter is
used to specify the processing of SYSOUT datasets
Example
//ERXXXXXJ JOB ,,NOTIFY=&SYSUID
//OUT1 OUTPUT OUTDISP=PURGE
//STEP1 EXEC PGM=SBMPGM1
//STEPLIB DD DSN=OPERN.COBOL.LOADLIB,DISP=SHR
© Infosys Technologies Ltd.
//SYSOUT DD SYSOUT=*,OUTPUT=*.OUT1
//
11
Few more parameters for OUTPUT JCL
statement
• DEFAULT
• DEST
• CLASS
• JESDS
• NOTIFY
© Infosys Technologies Ltd.
• OUTDISP
• PRTY
12
Few more parameters for OUTPUT JCL statement – Notes (Contd.)
JESDS parameter:
This parameter is coded to specify whether the JCL listing and job log apply to this OUTPUT
statement. The following are the options:
ALL – this requests JCL, LOG and MSG
JCL – this requests just the JCL listing
MSG – this requests the system messages for the job
NOTIFY parameter:
This is coded to send a message to a user ID. The following are the valid usage of this
parameter.
NOTIFY=node.userid
NOTIFY=userid
NOTIFY=(node.userid, node.userid, node.userid, node.userid)
NOTIFY=SYSUID , where SYSUID is the TSO user id by giving this , hardcoding of userid
can be avoided.
OUTDISP parameter:
OUTDISP=(normal-disposition,abnormal-disposition) is coded to control the disposition for
the normal and abnormal job termination. The following are the disposition for normal and
abnormal termination.
WRIITE – This option is used to print the output and delete it
HOLD – This option is coded to hold the output data set till the user releases it.
KEEP – This option is coded to print the output and then changes the disposition to LEAVE.
LEAVE – If this option is coded, the disposition is changed to KEEP after the user or the
operator release the output.
PURGE – This is coded to delete the output without printing it
PRTY parameter:
This parameter is used to specify the priority of the printing in the output queue
13
OUPUT JCL statement – Example (1/2)
14
OUPUT JCL statement – Example (2/2)
15
SEGMENT parameter
• //ddname DD SYSOUT=class,SEGMENT=pages
//SYSPRINT DD SYSOUT=A,SEGMENT=60
Example:
//ERXXXXXJ JOB ,,NOTIFY=&SYSUID
//STEP1 EXEC PGM=SBMPGM1
//STEPLIB DD DSN=OPERN.COBOL.LOADLIB,DISP=SHR
//SYSOUT DD SYSOUT=*,SEGMENT=10
//
In the above example, suppose SYSOUT data produced is 40 pages, then 4 separate
segments , 10 pages in each, are produced for output processing.
16
RETPD parameter
be modified or deleted.
• //ddname DD RETPD=days
Example:
//ERXXXXXJ JOB ,,NOTIFY=&SYSUID,CLASS=D,MSGLEVEL=(1,1),MSGCLASS=X
//STEP1 EXEC PGM=IEFBR14
//DD1 DD DSN=ERXXXXX.TEST.DATA6,DISP=(NEW,CATLG),
// UNIT=SYSDA,RECFM=FB,LRECL=80,BLKSIZE=800,
// SPACE=(TRK,(3,3)),RETPD=10
//
In the above example data set is not eligible for deletion or written over for 10 days.
17
ABSTR for SPACE parameter
• SPACE=(ABSTR,(quantity,address,directory))
18
ROUND for SPACE parameter
Example:
SPACE=(1000,800,,,ROUND),UNIT=3390
19
Other special options for SPACE parameter
(1/2)
• RLSE option is coded to release all unused space when
you close a data set after you have opened it for output
and written in to it.
• CONTIG option is coded to allocate all the primary space
on contiguous tracks and cylinders.
• MXIG option is coded to allocate the primary space as
the largest contiguous free©area
Infosys Technologies Ltd.
on a volume.
• ALX option is coded to allocate the primary area by
building up a list of the five largest contiguous, free areas
on the volume.
We enable you to leverage knowledge
© 2010 - 2011, Infosys Ltd. Confidential 20
anytime, anywhere!
If only four blocks are written in the example, the system releases the space for the
remaining 12 blocks. The drawback of RLSE is it requires I/O time to release the space.
CONTIG option is coded to allocate all the primary space on contiguous tracks and
cylinders. The system allocates each extent on a contiguous way and because of this
CONTIG forces the primary space to be allocated in a single extent. If the contiguous space
is not available, the system terminates the job. MXIG option is coded to allocate the primary
space as the largest contiguous free area on a volume. MXIG can be used only for large
data sets which is an alternative for requesting secondary allocation. ALX option is coded to
allocate the primary area by building up a list of the five largest contiguous, free areas on the
volume. ALX is recommended to use for very large data sets as an alternative for requesting
secondary allocation.
20
Other special options for SPACE parameter
(2/2)
SPACE=(TRK,(5,5),RLSE)
SPACE=(100,(30,10),,CONTIG)
SPACE=(500,(1000,5,RLSE,ALX)
21
OUTLIM parameter
• OUTLIM parameter is coded to limit the number of logical
records in the SYSOUT data.
• It is valid only on DD statement with SYSOUT parameter.
• OUTLIM=number (maximum number of logical records)
• Example:
//STEPLIB DD DSN=OPERN.COBOL.LOADLIB,DISP=SHR
//SYSOUT DD SYSOUT=*,OUTLIM=10
//
22
Storage Management Subsystem (SMS)
23
Important SMS parameters
• DATACLAS
• STORCLAS
• MGMTCLAS
• SECMODEL
• LIKE
• REFDD © Infosys Technologies Ltd.
• RECORG
• KEYOFF
24
DATACLAS parameter
• The DATACLAS parameter is used to define the
following DD parameters
– RECFM
– LRECL
– AVGREC and SPACE
– RETPD
– EXPDT
– DSNTYPE for extended©sequential and
Infosys Technologies Ltd. partitioned
datasets
– KEYLEN for direct data sets
– RECORG, KEYOFF, IMBED, REPLICATE, CISIZE,
FREESPACE and SHAROPTIONS for VSAM
We enable you to leverage knowledge
© 2010 - 2011, Infosys Ltd. Confidential 25
anytime, anywhere!
25
DATACLAS - example
• Assume a data class named COBDS is established for
Cobol source program libraries with following
parameters:
– RECFM=VB
– LRECL=255
– AVRGREC=U
– SPACE=(0,(150,50,10))© Infosys Technologies Ltd.
• The following can be coded:
//DATA1 DD
DSN=ERXXXXX.COBOL.LIB,DISP=(NEW,CATLG),
// DATACLAS=COBDS
We enable you to leverage knowledge
© 2010 - 2011, Infosys Ltd. Confidential 26
anytime, anywhere!
DATACLAS – example
In the above example, COBDS is the assumed data class with specified data set allocation
parameters. The new data set with name ERXXXXX.COBOL.LIB is allocated with the
characteristics defined in the data class COBDS.
If you want to override the values in DATACLAS then you can code those parameters in
JCL. Suppose it is required to allocate 60 directory blocks in the above example, the
following can be coded:
//DATA1 DD DSN=ERXXXXX.COBOL.LIB,DISP=(NEW,CATLG),
// DATACLAS=COBDS,SPACE=(,(,,60))
Note:
AVGREC parameter is coded to specify the units of allocation requested for storage space
are records.
AVGREC=U/K/M
U - Units
K - Thousands
M – Millions
The primary and secondary space quantities represents these units or thousands or millions
of records as coded.
26
STORCLAS parameter
27
STORCLAS - Example
//DATA1 DD DSN=ERXXXXX.COBOL.LIB,DISP-(NEW,CATLG),
// STORCLAS=PUBLIC
28
MGMTCLAS parameter
• This parameter does not replace any DD parameters
• The following are the usage of management class
– Migration of inactive data sets to archival storage
– To determine how often to backup the data set
– To determine how often to compress partitioned data
sets
– To do cost accounting on data sets
© Infosys Technologies Ltd.
29
MGMTCLAS - example
//DATA1 DD DSN=ERXXXXX.COBOL.LIB,DISP=(NEW,CATLG),
//STORCLAS=PUBLIC,DATACLAS=COBDS,MGMTCLAS=AVLBLE
© Infosys Technologies Ltd.
30
SECMODEL parameter
• SECMODEL=profile
© Infosys Technologies Ltd.
Note: PROTECT DD parameter is coded to request the RACF to protect the data set.
PROTECT=YES|Y
31
LIKE parameter
• LIKE parameter is coded to copy the DD information
from an existing cataloged data set on disk.
• This also copies any SMS attributes for the data set
referred.
• LIKE=dataset name
• The system copies the following information if it is not
supplied in the DD statement.
– RECFM, RECORG for VSAM data sets, LRECL
© Infosys Technologies Ltd.
– SPACE, AVGREC
– DSNTYPE
– KEYLEN for normal direct data sets
– KEYOFF for VSAM KSDS data sets
We enable you to leverage knowledge
© 2010 - 2011, Infosys Ltd. Confidential 32
anytime, anywhere!
32
LIKE parameter - Example
33
REFDD parameter
• REFDD=*.referback
34
REFDD parameter - Example
35
RECORG and KEYOFF parameters
• RECORG and KEYOFF parameters are used to create
VSAM data sets through JCL.
• RECORG is coded to specify the VSAM data set
organization. RECORG=type. The following are the valid
types.
– KS (for KSDS)
– ES (for ESDS)
© Infosys Technologies Ltd.
– RR (for RRDS)
– LS (for LDS)
• KEYOFF is coded to specify the offset of the keys in a
KSDS data set. KEYOFF=bytes.
We enable you to leverage knowledge
© 2010 - 2011, Infosys Ltd. Confidential 36
anytime, anywhere!
36
RECORG and KEYOFF - Example
37
DSNTYPE parameter
38
DSNTYPE parameter – Examples (1/4)
39
DSNTYPE parameter – Example (2/4)
//
40
DSNTYPE parameter – Example (3/4)
41
DSNTYPE parameter – Example (4/5)
42
JES2 and JES3 Subsystems
subsystems
43
JES2 Subsystem
• JES2 is a decentralized system.
• Output of the job are redirected to specific computer or
peripheral connected to the computer.
44
JES3 Subsystem
• JES3 is highly centralized network with one computer
and one group of operators controlling all the other
computers.
• Global Processor
• Local Processors
• Main Processors
45
JES2 Control Statements (1/3)
• Coding rules
– You cannot place JES2 statements in a cataloged
procedure.
– Code /* in columns 1 to 2 rather than //.
– You cannot code comments on JES2 statements. Use
a JCL statement instead.
– Except for the /*OUTPUT statement, no JES2
statements may be © Infosys
continued.
Technologies Ltd.Write multiple
statements instead.
– If you write the same parameter more than once on a
JES2 statement, JES2 uses the last instance.
Two statements, the JES command and /*PRIORITY are placed in front of the JOB
statement. Place the remaining statements following the JOB statement.
46
JES2 Control Statements (2/3)
JES2 Statement Syntax Description
47
JES2 Control Statements (3/3)
JES2 Statement Syntax Description
48
JES3 Control Statements (1/3)
• Coding rules
– JES3 statements begin with //* in columns 1 to 3 and
the commands begin in column 4.
– You cannot place JES3 statements in a cataloged
procedure.
– To continue a JES3 statement, end the statement
after a comma, code a //* on the
© Infosys nextLtd.line, and
Technologies
continue in column 4.
– All JES3 statements except the command statement
are placed following the JOB statement.
49
JES3 Control Statements (2/3)
JES3 Statement Syntax Description
50
JES3 Control Statements (3/3)
JES3 Statement Syntax Description
51
System Display and Search Facility (SDSF)
• SDSF is the utility to monitor, control and view the output
of the jobs in the system
• Following can be done using SDSF
– Viewing the system log
– Entering system commands
– Controlling job processing by hold, release, purge,
cancel
– Displaying job output before
© Infosysprint
Technologies Ltd.
52
SDSF primary option menu
53
JES spool data sets
• I – Input queue
• DA – Execution queue
• O – output queue
• H – Held queue
• ST – status queue
54
Status (ST) panel
55
Columns on the ST panel (1/3)
Column Name Title Width Description
JNAME JOBNAME 8 This is the fixed field for Job name
JOBID JobID 8 Job ID assigned by JES
OWNERID Owner 8 User ID of job owner, or default values
of ++++++++ or ????????, if user ID
not defined to RACF
JPRIO Prty 4 Priority of the job in the JES job queue
QUEUE Queue 10 Name of the JES queue for job
© Infosys Technologies Ltd.
JCLASS C 1 Input class for JES
POS Pos 5 Position in JES queue
SYSAFF SAff 5 JES execution system affinity (if any)
56
Columns on the ST panel (2/3)
Column Title Width Description
Name
ACTSYS ASys 4 JES active system ID (if job active)
STATUS Status 17 Status of job
PRTDEST PrtDest 18 JES print destination name
SECLABEL SecLabel 8 Security label of job
TGNUM TGNum 5 Track groups used by a job
TGPCT TGPct 6 Percentage of total track group usage
© Infosys Technologies Ltd.
ORIGNODE OrigNode 8 Origin node name
EXECNODE ExecNode 8 Execution node name
DEVID Device 18 JES device name
RETCODE Max-RC 10 Return code information for the job
57
Columns on ST panel (3/3)
Column Name Title Width Description
SRVCLS SrvClass 8 Service class
WLMPOS WPos 5 Position on the WLM queue
SCHENV Scheduling 16 Scheduling environment for the job
-Env
DELAY Dly 3 Indicator that job processing is delayed
SSMODE Mode 4 Subsystem managing the job (JES or
WLM)
SPIN Spin 4 Indicator
© Infosys of whether
Technologies Ltd. the job is eligible to
be spun
58
Submitting Jobs using COBOL
//ddname DD SYSOUT=(class,INTRDR)
If the generated JCL has no MSGCLASS parameter then default is SYSOUT class.
59
COBOL program which generates JCL (1/2)
Continuation of Cobol program which prepares JCL to be submitted through internal reader.
JCL used to submit COBOL load module
JCL which is used to execute the load module of the COBOL program.
Job submission - response
This is the job generated by COBOL program and submitted by internal reader.
Submitting jobs through REXX
/* REXX */
"SUBMIT (‘pds_name(jcl_name)')"
EXIT
This is the REXX program which is used to submit JCL program JCL2.
JCL submitted through REXX program
ISP.SISHELP(ISPF) provides function that inovkes the ISPF command to start the ISPF
PDF facility.
SYS1.BRODCAST provides broadcast information that is available
JCL behind CICS Subsystem (1 of 2)
• To execute CICS job, invoke procedure CICS which
executes DFHSIP program.
• DFHSIP contains System Initialization parameters for
CICS region.
• If Language Environment is required, the
SCEECICS,SCEERUN2 and SCEERUN datasets are
needed in DFHRPL. © Infosys Technologies Ltd.
Note: The above mentioned data sets are specific to the installation.
JCL behind CICS Subsystem (2 of 2)
The Parameters passed are Size of Address space, DB2 Subsystem Name,
Number of TCBs to processes User Request.
The LINKAGE Editor and LOADER
• It requires inputs as
– Object module
– Load modules
The linkage editor, used IBM supplied Program IEWL which resides in SYS1.LINKLIB.
Normally the linkage editor step is named as LKED. The PARM options can be in any order.
LIST : Lists the linkage editor control statements and is usually specified
MAP : Produces a storage map showing the length and relative locations of all control
sections. It helps to estimate the region size needed for the program. It also helps to identify
the point of failure when a program abends. NOMAP is default.
XREF: includes MAP plus a cross-reference table of the load module. Map and XREF are
mutually exclusive.
CALL: To request automatic library lookup, which is default.
JCL for the Linkage Editor (2 of 3)
– CALL: to request automatic library lookup
– LET: marks load modules as executable even if minor
errors occur
– PRINT: allows the messages to be written to a
SYSLOUT DD statement
– AMODE: specifies whether the program uses 24 or 31
bit addressing
– RMODE: indicates whether the program can reside in
© Infosys Technologies Ltd.
virtual storage
– TERM : allows linkage editor diagnostic messages to
be written to a SYSTERM DD statement.
– SYSLIB DD statement
– Additional DD statement for additional input
• ENTRY Statement
• INCLUDE Statement
• LIBRARY Statement
• NAME Statement
• REPLACE Statement
© Infosys Technologies Ltd.
• PAGE Statement
• ORDER Statement
//SYSIN DD *
INCLUDE CSQSTUB(CSQBSTUB)
NAME GETFRDB1(R)
/*
REPLACE statement replaces one control section wit another or deletes a control section.
• A restart can be
– Automatic (system restarts automatically)
– Deferred ( make changes before resubmitting)
• A Job can be restarted by two methods
– Restarting from a step
– Restarting from a Checkpoint
© Infosys Technologies Ltd.
Checkpoint/Restart – Notes
MVS allow programs that abnormally terminate, or even those that run to completion, to be
restarted so that the entire job does not need to be rerun in the event of an error.
There are two methods of restarting a job Restarting from a step and restarting from a
checkpoint.
errors.
• Checkpoint makes restarting difficult.
Checkpoint (1 of 2) – Notes
Checkpoints consist of a snapshot of a program’s status at selected points during execution.
Check pointing is done because of the potential cost or time limitations of restarting a large
job. Checkpoints are expensive, complex and require careful planning. Checkpoints are
used for protection against hardware, OS and operator errors and not for Application
Program errors.
When a checkpoint is taken, the system notes the position of each data set that is open, but
does not copy it. This can make restarting from a checkpoint difficult. If a dataset is
updated in place after the checpoint is taken, it will not be returned to its original status for
the restart.
Checkpoint (2 of 2)
• A DD statement is included in the step to specify the data
set to contain the checkpoints.
• In PS dataset , DISP=OLD rewrites the checkpoint where
as DISP=MOD writes each new checkpoint beyond the
previous.
• In PDS dataset, each checkpoint is added as a member.
Checkpoint (2 of 2) – Notes
Several check points can be taken during the execution of the job step. A DD statement is
included in the step to specify the data set to contain the checkpoints. For sequential data
sets DISP=OLD rewrites the previous checkpoints. DISP=MOD writes each new checkpoint
beyond previous. In case of PDS each checkpoint is added as a member.
Coding CHKPT=EOV on DD statement specifies that checkpoint is taken when the end of
volume is reached.
Automatic Restart Definition (1 of 3)
• The RD parameter on the JOB or EXEC statement controls
automatic restart and suppress checkpoint restart.
• The syntax for the parameter is
RD=R/NC/NR/RNC
NR- No Automatic No No
Restart
RNC-Restart and No Yes Yes
Checkpoint
• Example
© Infosys Technologies Ltd.
// STEP2 EXEC COB2,RD=RNC
RD on EXEC statement
Example
STEP1 may be automatically restarted.
Example
Automatic restart is permitted in each step of the procedure COB2.
Automatic Restart Definition (3 of 3)
• RD on JOB statement
• Example
RD on JOB statement
All steps within the job may be automatically restarted.
Deferred Restart – STEP Restart
• A deferred restart form a job step begins execution at a
specific step within the job, bypassing all preceding
steps.
• Things to be noted for STEP Restart
– Datasets are not passed from previous steps.
– Refer backs cannot be used except in DCB, DSN and
VOL parameters.
– New datasets created in© the previous run are still in
Infosys Technologies Ltd.
existence.
– Temporary data sets passed from a previous step is
deleted, so restart from the step that created the
dataset.
• Example
© Infosys Technologies Ltd.
//INFY01J JOB
,,CLASS=ANOTIFY=&SYSUID,RESTART=STEP1.COB2
– Execution resumes at the STEP1 step in COB2
Cataloged procedure.
//INFBANGJ JOB
,,NOTIFY=&SYSUID,CLASS=B,MSGLEVEL=(1,1
//JOBPROC JCLLIB
ORDER=CICSTS23.CICS.SDFHPROC
//MAPASM EXEC DFHMAPT,
// MAPLIB='OPERN.CICS1.BMSLIB',
// DSCTLIB='OPERN.CICS1.COPYLIB',
// TEMPLIB='INFBANG.CICS.TEMPLIB',
© Infosys Technologies Ltd.
// MAPNAME=WMAP1
//COPY.SYSUT1 DD
DSN=INFBANG.WEB.APPL(WMAP1),DISP=SHR
/*
TEST.PARMCARD1:
This parmcard will have details about to and from email id .
HELLO MP
© Infosys Technologies Ltd.
MAIL FROM XXX@INFOSYS.COM
RCPT TO: YYY@INFOSYS.COM
DATA
SUBJECT: THIS IS THE NOTIFICATION EMAIL
FROM : EMAIL TEAM
TO : EMPLOYEES OF INFOSYS
96
JCL Utilities
– IEBUPDTE
– IEBDG
– IEBPTPCH
IEBUPDTE
IEBDG
IEBPTPCH
IEBUPDTE Program (1 of 2)
IEBUPDATE is designed to edit and maintain partitioned data sets. It was developed before
online terminals and TSO/ISPF were in use.
ADD statement instructs IEBUPDATE to create a new member using the data that follows.
CHANGE statement tells that data records that follow are to replace existing records in the
specified member
REPLACE statement directs to replace the specified member with the data records that
follow in the input stream.
IEBUPDATE Program (2 of 2)
– NUMBER statement
./ NUMBER [SEQ1={number/ALL}]
[,SEQ2=number]
[,NEW1=number]
[,INCR=number]
[,INSERT=YES]
– ENDUP statement
DELETE statement lets IEBUPDATE to delete specific lines from a member. It is used
following a CHANGE statement that specifies the member it applies to.
All these statements are coded with a period in column1 and a slash in column2. this
distinguishes the control statements from any data in the control file.
IEBDG Program (1 of 3)
IEBDG is a data generator to create a sequential file that contains data extracted from other
files. The generated data can be created for each output record according to a pattern
provided. For example if a three-digit number field is given an initial value of zero and is
increased by one for each output record, the same procedure is followed.
In DSD statement, the OUTPUT parameter names the data set used.
FD statement is used to define the data that will appear in each output record.
In the DSD statement, the OUTPUT parameter names the data set used; in this case, the
output file is defined by the OUTDD dd statement. IF data were copied from one or more
input files, the DSD statement would include an INPUT parameter as well.
A FD statement consist of
PICTURE specifies a user-supplied picture. Length is the number of characters between the
quotes.
ACTION specifies what action is to be applied to the field for each record.
INDEX specifies a number that is added to the field for each record.
FILL specifies a single-character alphanumeric literal to fill this field in each output record.
IEBDG Program (3 of 3)
• CREATE Statement
CREATE QUANTITY=number,
[ , INPUT=ddname]
[, FILL=character]
[,NAME=name]
INPUT specifies an input file from which records are read and used as the basis for
modification by fields selected with the NAME parameter. IF omitted, records are created by
IEBDG and filled with the character specified in FILL.
NAME Names one or more fields defined in FD statements that are used to build the output
record.
IEBPTPCH Program
• Purpose: To produce a formatted listing of a data set.
• IEBPTPCH requires four DD statements
– SYSPRINT – defines output message file
– SYSUT1 – defines the input file
– SYSUT2 – defines the output file
– SYSIN – control statement with at least PRINT or
PUNCH statement.
© Infosys Technologies Ltd.
• PRINT statement prints input file in groups of eight
characters.
• PUNCH statement prints without the annoying eight-
character groupings used by the PRINT statement.
We enable you to leverage knowledge
© 2010 - 2011, Infosys Ltd. Confidential 103
anytime, anywhere!
IEBGENER program copies a file to a SYSOUT data set, the resulting output is completely
unformatted. To produce a formatted listing of a data set, IEBPTPCH with Print/punch utility
is used.
Unlike IEBGEBNE, IEBPTPCH requires at least one control statement via SYSIN DD
statement. At the minimum, the SYSIN input stream should contain either a PRINT or
PUNCH statement.
The PRINT statement is the primary control statement for IEBPTPCH. It must be the first
statement in the SYSIN file. It is coded like PRINT.
When PRINT is used without parameters, data from the input file is printed in groups of eight
character with each group separated by two blanks. Up to 112 characters can be printed on
one line. If the input record contains more than 112 characters, the data is wrapped to
additional lines.
PUNCH statement is still useful for printing files without the annoying eight-character
groupings used by the PRINT statement.
Summary
• DD statement parameter
• Storage Management Subsystem
• JES2 and JES3 subsystems and System Display and
Search Facility
• Other ways of submitting jobs
• JCL behind Z/OS sub systems
© Infosys Technologies Ltd.
Summary – Notes
These are the points that we discussed in the presentation.
References
• Gary DeWard Brown, JCL Programming Bible (with
z/OS) fifth edition, Wiley India Dream Tech, 2002.
• Doug Lowe, MVS JCL, Mike Murach and Associates,
1994.
• IBM Manual, z/OS V1R4.0 MVS JCL Reference, SA22-
7597-06.
• IBM Manual, z/OS V1R4.0 MVS JCL User Guide, SA22-
7598-04.
© Infosys Technologies Ltd.
• IBM Manual, z/OS Basic Skills Information Center: z/OS
Concepts.
References – Notes
For additional information and further reading please refer to the artifacts / links listed here.
Thank You
106