实验目的
掌握过程的格式,内部和外部的过程定义方式
实验要求
完成题目要求,完成流内过程定义
实验过程
实例1
1. 源程序
****** ***************************** Top of Data ******************************
000100 //UR644PRC JOB ,MARTIN,CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1),NOTIFY=&SYSUID
000200 //TESTPOC PROC
000300 //IEBGENER EXEC PGM=IEBGENER
000400 //SYSPRINT DD SYSOUT=*
000500 //SYSUT1 DD DUMMY
000600 //SYSUT2 DD SYSOUT=*
000700 //SYSIN DD DUMMY
000800 // PEND
000900 //CPINSTRM EXEC TESTPOC
001000 //SYSUT1 DD *
001100 JONES FRED 53AF 87 5701 NINE MILE ROAD
001200 ANDERSONDON 78AF 34 320 WESTHERIMAR, #219
001300 /*
001400 //SYSUT2 DD DSN=UR644.PROCLAB1.OUT2(JCLLAB1),DISP=(NEW,CATLG,DELETE),
001500 // SPACE=(TRK,(1,1,10)),RECFM=FB,LRECL=80,DSORG=PS
001600 //CPFILE EXEC TESTPOC
001700 //SYSUT2 DD DSN=UR644.PROCLAB1.OUT1,DISP=(NEW,CATLG,DELETE),
001800 // SPACE=(TRK,(1,1)),RECFM=FB,LRECL=80
001900 //SYSUT1 DD DSN=UR644.PROCLAB1.OUT2(JCLLAB1),DISP=SHR
002000 //CPFIED EXEC TESTPOC
002100 //SYSUT1 DD DSN=UR644.PROCLAB1.OUT1,DISP=SHR
002200 //SYSUT2 DD SYSOUT=*
002300 //SYSIN DD *
002400 GENERATE MAXFLDS=3
002500 RECORD FIELD=(10,20,,1),FIELD=(10,1,,15),FIELD=(6,5,,30)
002600 /*
002700 //
****** **************************** Bottom of Data ****************************
2. 输出
********************************* TOP OF DATA **********************************
J E S 2 J O B L O G -- S Y S T E M S Y S 1 -- N
20.35.26 JOB06296 ---- SUNDAY, 11 MAR 2012 ----
20.35.26 JOB06296 IRR010I USERID UR644 IS ASSIGNED TO THIS JOB.
20.35.26 JOB06296 ICH70001I UR644 LAST ACCESS AT 20:34:30 ON SUNDAY, MARCH 1
20.35.26 JOB06296 $HASP373 UR644PRC STARTED - INIT 1 - CLASS A - SYS SYS1
20.35.26 JOB06296 $HASP395 UR644PRC ENDED
------ JES2 JOB STATISTICS ------
11 MAR 2012 JOB EXECUTION DATE
26 CARDS READ
115 SYSOUT PRINT RECORDS
0 SYSOUT PUNCH RECORDS
8 SYSOUT SPOOL KBYTES
0.00 MINUTES EXECUTION TIME
1 //UR644PRC JOB ,MARTIN,CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1),NOTIFY=&SYSUI
IEFC653I SUBSTITUTION JCL - ,MARTIN,CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1),
2 //TESTPOC PROC
//IEBGENER EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DUMMY
//SYSUT2 DD SYSOUT=*
//SYSIN DD DUMMY
// PEND
3 //CPINSTRM EXEC TESTPOC
4 ++TESTPOC PROC
5 ++IEBGENER EXEC PGM=IEBGENER
6 ++SYSPRINT DD SYSOUT=*
7 //SYSUT1 DD *
+/SYSUT1 DD DUMMY
8 //SYSUT2 DD DSN=UR644.PROCLAB1.OUT2(JCLLAB1),DISP=(NEW,CATLG,DELETE),
// SPACE=(TRK,(1,1,10)),RECFM=FB,LRECL=80,DSORG=PS
+/SYSUT2 DD SYSOUT=*
9 ++SYSIN DD DUMMY
10 //CPFILE EXEC TESTPOC
11 ++TESTPOC PROC
12 ++IEBGENER EXEC PGM=IEBGENER
13 ++SYSPRINT DD SYSOUT=*
14 //SYSUT1 DD DSN=UR644.PROCLAB1.OUT2(JCLLAB1),DISP=SHR
+/SYSUT1 DD DUMMY
15 //SYSUT2 DD DSN=UR644.PROCLAB1.OUT1,DISP=(NEW,CATLG,DELETE),
// SPACE=(TRK,(1,1)),RECFM=FB,LRECL=80
+/SYSUT2 DD SYSOUT=*
16 ++SYSIN DD DUMMY
17 //CPFIED EXEC TESTPOC
18 ++TESTPOC PROC
19 ++IEBGENER EXEC PGM=IEBGENER
20 ++SYSPRINT DD SYSOUT=*
21 //SYSUT1 DD DSN=UR644.PROCLAB1.OUT1,DISP=SHR
+/SYSUT1 DD DUMMY
22 //SYSUT2 DD SYSOUT=*
+/SYSUT2 DD SYSOUT=*
23 //SYSIN DD *
+/SYSIN DD DUMMY
STMT NO. MESSAGE
3 IEFC001I PROCEDURE TESTPOC WAS EXPANDED USING INSTREAM PROCEDURE DEFIN
10 IEFC001I PROCEDURE TESTPOC WAS EXPANDED USING INSTREAM PROCEDURE DEFIN
17 IEFC001I PROCEDURE TESTPOC WAS EXPANDED USING INSTREAM PROCEDURE DEFIN
ICH70001I UR644 LAST ACCESS AT 20:34:30 ON SUNDAY, MARCH 11, 2012
IEF236I ALLOC. FOR UR644PRC IEBGENER CPINSTRM
IEF237I JES2 ALLOCATED TO SYSPRINT
IEF237I JES2 ALLOCATED TO SYSUT1
IGD101I SMS ALLOCATED TO DDNAME (SYSUT2 )
DSN (UR644.PROCLAB1.OUT2 )
STORCLAS (SRCLIB) MGMTCLAS ( ) DATACLAS ( )
VOL SER NOS= URVOL4
IEF237I DMY ALLOCATED TO SYSIN
IEF142I UR644PRC IEBGENER CPINSTRM - STEP WAS EXECUTED - COND CODE 0000
IEF285I UR644.UR644PRC.JOB06296.D0000103.? SYSOUT
IEF285I UR644.UR644PRC.JOB06296.D0000101.? SYSIN
IGD104I UR644.PROCLAB1.OUT2 RETAINED, DDNAME=SYSUT2
IEF373I STEP/IEBGENER/START 2012071.2035
IEF374I STEP/IEBGENER/STOP 2012071.2035 CPU 0MIN 00.01SEC SRB 0MIN 00.00S
IEF236I ALLOC. FOR UR644PRC IEBGENER CPFILE
IEF237I JES2 ALLOCATED TO SYSPRINT
IGD103I SMS ALLOCATED TO DDNAME SYSUT1
SDSF OUTPUT DISPLAY UR644PRC JOB06296 DSID 104 LINE 23 COLUMNS 02- 81
COMMAND INPUT ===> SCROLL ===> CSR
IGD101I SMS ALLOCATED TO DDNAME (SYSUT2 )
DSN (UR644.PROCLAB1.OUT1 )
STORCLAS (SRCLIB) MGMTCLAS ( ) DATACLAS ( )
VOL SER NOS= URVOL2
IEF237I DMY ALLOCATED TO SYSIN
IEF142I UR644PRC IEBGENER CPFILE - STEP WAS EXECUTED - COND CODE 0000
IEF285I UR644.UR644PRC.JOB06296.D0000104.? SYSOUT
IGD104I UR644.PROCLAB1.OUT2 RETAINED, DDNAME=SYSUT1
IGD104I UR644.PROCLAB1.OUT1 RETAINED, DDNAME=SYSUT2
IEF373I STEP/IEBGENER/START 2012071.2035
IEF374I STEP/IEBGENER/STOP 2012071.2035 CPU 0MIN 00.01SEC SRB 0MIN 00.00S
IEF236I ALLOC. FOR UR644PRC IEBGENER CPFIED
IEF237I JES2 ALLOCATED TO SYSPRINT
IGD103I SMS ALLOCATED TO DDNAME SYSUT1
IEF237I JES2 ALLOCATED TO SYSUT2
IEF237I JES2 ALLOCATED TO SYSIN
IEF142I UR644PRC IEBGENER CPFIED - STEP WAS EXECUTED - COND CODE 0000
IEF285I UR644.UR644PRC.JOB06296.D0000105.? SYSOUT
IGD104I UR644.PROCLAB1.OUT1 RETAINED, DDNAME=SYSUT1
IEF285I UR644.UR644PRC.JOB06296.D0000106.? SYSOUT
IEF285I UR644.UR644PRC.JOB06296.D0000102.? SYSIN
IEF373I STEP/IEBGENER/START 2012071.2035
IEF374I STEP/IEBGENER/STOP 2012071.2035 CPU 0MIN 00.01SEC SRB 0MIN 00.00S
IEF375I JOB/UR644PRC/START 2012071.2035
IEF376I JOB/UR644PRC/STOP 2012071.2035 CPU 0MIN 00.03SEC SRB 0MIN 00.00S
DATA SET UTILITY - GENERATE
PROCESSING ENDED AT EOD
DATA SET UTILITY - GENERATE
IEB368I SYSTEM DETERMINED BLKSIZE USED FOR OUTPUT
PROCESSING ENDED AT EOD
DATA SET UTILITY - GENERATE
GENERATE MAXFLDS=3 00250009
RECORD FIELD=(10,20,,1),FIELD=(10,1,,15),FIELD=(6,5,,30) 00260005
IEB352I WARNING: ONE OR MORE OF THE OUTPUT DCB PARMS COPIED FROM INPUT
PROCESSING ENDED AT EOD
5701 NINE JONES FRED S FRED
320 WESTH ANDERSONDO RSONDO
******************************** BOTTOM OF DATA *******************************
3. 分析
注意,分区数据集创建的时候一定要指定direcotry block的大小,那个是系统区分分区数据集和顺序数据集的关键!
注意referback的具体使用方法特别是指定proc时!!
实例2
1. 源程序
****** ***************************** Top of Data ******************************
000100 //UR644PRC JOB ,MARTIN,CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1),NOTIFY=&SYSUID
000110 //LIB JCLLIB ORDER=UR644.JCL
000200 //CPINSTRM EXEC TESTPOC
000300 //SYSUT1 DD *
000400 JONES FRED 53AF 87 5701 NINE MILE ROAD
000500 ANDERSONDON 78AF 34 320 WESTHERIMAR, #219
000600 /*
000700 //SYSUT2 DD DSN=UR644.PROCLAB1.OUT3,DISP=(NEW,CATLG,DELETE),
000800 // SPACE=(TRK,(1,1)),RECFM=FB,LRECL=80,DSORG=PS
000900 //CPFILE EXEC TESTPOC
001000 //SYSUT2 DD DSN=UR644.PROCLAB1.OUT2,DISP=(NEW,CATLG,DELETE),
001100 // SPACE=(TRK,(1,1)),RECFM=FB,LRECL=80
001200 //SYSUT1 DD DSN=UR644.PROCLAB1.OUT3,DISP=SHR
001300 //CPFIED EXEC TESTPOC
001400 //SYSUT1 DD DSN=UR644.PROCLAB1.OUT2,DISP=SHR
001500 //SYSUT2 DD SYSOUT=8
001600 //SYSIN DD *
001700 GENERATE MAXFLDS=3
001800 RECORD FIELD=(10,20,,1),FIELD=(10,1,,15),FIELD=(6,5,,30)
001900 /*
002000 //
****** **************************** Bottom of Data ****************************
2. 输出
********************************* TOP OF DATA **********************************
J E S 2 J O B L O G -- S Y S T E M S Y S 1 -- N
21.14.51 JOB06346 ---- SUNDAY, 11 MAR 2012 ----
21.14.51 JOB06346 IRR010I USERID UR644 IS ASSIGNED TO THIS JOB.
21.14.52 JOB06346 ICH70001I UR644 LAST ACCESS AT 21:14:29 ON SUNDAY, MARCH 1
21.14.52 JOB06346 $HASP373 UR644PRC STARTED - INIT 1 - CLASS A - SYS SYS1
21.14.52 JOB06346 $HASP395 UR644PRC ENDED
------ JES2 JOB STATISTICS ------
11 MAR 2012 JOB EXECUTION DATE
20 CARDS READ
112 SYSOUT PRINT RECORDS
0 SYSOUT PUNCH RECORDS
8 SYSOUT SPOOL KBYTES
0.00 MINUTES EXECUTION TIME
1 //UR644PRC JOB ,MARTIN,CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1),NOTIFY=&SYSUI
IEFC653I SUBSTITUTION JCL - ,MARTIN,CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1),
2 //LIB JCLLIB ORDER=UR644.JCL
3 //CPINSTRM EXEC TESTPOC
4 XXTESTPOC PROC
5 XXIEBGENER EXEC PGM=IEBGENER
6 XXSYSPRINT DD SYSOUT=*
7 //SYSUT1 DD *
X/SYSUT1 DD DUMMY
8 //SYSUT2 DD DSN=UR644.PROCLAB1.OUT3,DISP=(NEW,CATLG,DELETE),
// SPACE=(TRK,(1,1)),RECFM=FB,LRECL=80,DSORG=PS
X/SYSUT2 DD SYSOUT=*
9 XXSYSIN DD DUMMY
10 XX PEND
11 //CPFILE EXEC TESTPOC
12 XXTESTPOC PROC
13 XXIEBGENER EXEC PGM=IEBGENER
14 XXSYSPRINT DD SYSOUT=*
15 //SYSUT1 DD DSN=UR644.PROCLAB1.OUT3,DISP=SHR
X/SYSUT1 DD DUMMY
16 //SYSUT2 DD DSN=UR644.PROCLAB1.OUT2,DISP=(NEW,CATLG,DELETE),
// SPACE=(TRK,(1,1)),RECFM=FB,LRECL=80
X/SYSUT2 DD SYSOUT=*
17 XXSYSIN DD DUMMY
18 XX PEND
19 //CPFIED EXEC TESTPOC
20 XXTESTPOC PROC
21 XXIEBGENER EXEC PGM=IEBGENER
22 XXSYSPRINT DD SYSOUT=*
23 //SYSUT1 DD DSN=UR644.PROCLAB1.OUT2,DISP=SHR
X/SYSUT1 DD DUMMY
24 //SYSUT2 DD SYSOUT=8
X/SYSUT2 DD SYSOUT=*
25 //SYSIN DD *
X/SYSIN DD DUMMY
26 XX PEND
STMT NO. MESSAGE
3 IEFC001I PROCEDURE TESTPOC WAS EXPANDED USING PRIVATE LIBRARY UR644.JC
11 IEFC001I PROCEDURE TESTPOC WAS EXPANDED USING PRIVATE LIBRARY UR644.JC
19 IEFC001I PROCEDURE TESTPOC WAS EXPANDED USING PRIVATE LIBRARY UR644.JC
ICH70001I UR644 LAST ACCESS AT 21:14:29 ON SUNDAY, MARCH 11, 2012
IEF236I ALLOC. FOR UR644PRC IEBGENER CPINSTRM
IEF237I JES2 ALLOCATED TO SYSPRINT
IEF237I JES2 ALLOCATED TO SYSUT1
IGD101I SMS ALLOCATED TO DDNAME (SYSUT2 )
DSN (UR644.PROCLAB1.OUT3 )
STORCLAS (SRCLIB) MGMTCLAS ( ) DATACLAS ( )
VOL SER NOS= URVOL2
IEF237I DMY ALLOCATED TO SYSIN
IEF142I UR644PRC IEBGENER CPINSTRM - STEP WAS EXECUTED - COND CODE 0000
IEF285I UR644.UR644PRC.JOB06346.D0000103.? SYSOUT
IEF285I UR644.UR644PRC.JOB06346.D0000101.? SYSIN
IGD104I UR644.PROCLAB1.OUT3 RETAINED, DDNAME=SYSUT2
IEF373I STEP/IEBGENER/START 2012071.2114
IEF374I STEP/IEBGENER/STOP 2012071.2114 CPU 0MIN 00.01SEC SRB 0MIN 00.00S
IEF236I ALLOC. FOR UR644PRC IEBGENER CPFILE
IEF237I JES2 ALLOCATED TO SYSPRINT
IGD103I SMS ALLOCATED TO DDNAME SYSUT1
IGD101I SMS ALLOCATED TO DDNAME (SYSUT2 )
DSN (UR644.PROCLAB1.OUT2 )
STORCLAS (SRCLIB) MGMTCLAS ( ) DATACLAS ( )
VOL SER NOS= URVOL1
IEF237I DMY ALLOCATED TO SYSIN
IEF142I UR644PRC IEBGENER CPFILE - STEP WAS EXECUTED - COND CODE 0000
IEF285I UR644.UR644PRC.JOB06346.D0000104.? SYSOUT
IGD104I UR644.PROCLAB1.OUT3 RETAINED, DDNAME=SYSUT1
IGD104I UR644.PROCLAB1.OUT2 RETAINED, DDNAME=SYSUT2
IEF373I STEP/IEBGENER/START 2012071.2114
IEF374I STEP/IEBGENER/STOP 2012071.2114 CPU 0MIN 00.01SEC SRB 0MIN 00.00S
IEF236I ALLOC. FOR UR644PRC IEBGENER CPFIED
IEF237I JES2 ALLOCATED TO SYSPRINT
IGD103I SMS ALLOCATED TO DDNAME SYSUT1
IEF237I JES2 ALLOCATED TO SYSUT2
IEF237I JES2 ALLOCATED TO SYSIN
IEF142I UR644PRC IEBGENER CPFIED - STEP WAS EXECUTED - COND CODE 0000
IEF285I UR644.UR644PRC.JOB06346.D0000105.? SYSOUT
IGD104I UR644.PROCLAB1.OUT2 RETAINED, DDNAME=SYSUT1
IEF285I UR644.UR644PRC.JOB06346.D0000106.? SYSOUT
IEF285I UR644.UR644PRC.JOB06346.D0000102.? SYSIN
IEF373I STEP/IEBGENER/START 2012071.2114
IEF374I STEP/IEBGENER/STOP 2012071.2114 CPU 0MIN 00.01SEC SRB 0MIN 00.00S
IEF375I JOB/UR644PRC/START 2012071.2114
IEF376I JOB/UR644PRC/STOP 2012071.2114 CPU 0MIN 00.03SEC SRB 0MIN 00.00S
DATA SET UTILITY - GENERATE
PROCESSING ENDED AT EOD
DATA SET UTILITY - GENERATE
IEB368I SYSTEM DETERMINED BLKSIZE USED FOR OUTPUT
PROCESSING ENDED AT EOD
DATA SET UTILITY - GENERATE
GENERATE MAXFLDS=3 00170004
RECORD FIELD=(10,20,,1),FIELD=(10,1,,15),FIELD=(6,5,,30) 00180004
IEB352I WARNING: ONE OR MORE OF THE OUTPUT DCB PARMS COPIED FROM INPUT
PROCESSING ENDED AT EOD
5701 NINE JONES FRED S FRED
320 WESTH ANDERSONDO RSONDO
******************************** BOTTOM OF DATA ********************************
3. 分析
注意jcllib那个引用,参数为order