大型机 Cobol Mainframe jcl.docx
- 文档编号:20119323
- 上传时间:2023-04-25
- 格式:DOCX
- 页数:114
- 大小:149.95KB
大型机 Cobol Mainframe jcl.docx
《大型机 Cobol Mainframe jcl.docx》由会员分享,可在线阅读,更多相关《大型机 Cobol Mainframe jcl.docx(114页珍藏版)》请在冰豆网上搜索。
大型机CobolMainframejcl
1将文件内容在系统中输出
//CN001000JOBMSGLEVEL=(1,1),NOTIFY=&SYSUID
//STEP1EXECPGM=IEBGENER
//SYSPRINTDDSYSOUT=*
//SYSUT1DDDSN=CN0010.XCY.JCL3,DISP=SHR
//SYSUT2DDSYSOUT=*
//SYSINDDDUMMY
2cond的用法,设置判断返回参数以决定是否执行本作业步
//CN001000JOBMSGLEVEL=(1,1),NOTIFY=&SYSUID
//STEP1EXECPGM=IDCAMS
//SYSPRINTDDSYSOUT=*
//SYSINDD*
SETMAXCC=8
/*
//**************************************************************
//STEP2EXECPGM=IEBGENER,COND=(8,NE,STEP1)
//SYSPRINTDDSYSOUT=*
//SYSUT1DD*
XCYISAGOODBOY!
/*
//SYSUT2DDSYSOUT=*
//SYSINDDDUMMY
//*******************************************************************
//STEP3EXECPGM=IEBGENER,COND=(8,EQ,STEP1)
//SYSPRINTDDSYSOUT=*
//SYSUT1DD*
YESHEIS.
/*
//SYSUT2DDSYSOUT=*
//SYSINDDDUMMY
3将两个sds文件复制到一个已有的文件当中
//CN001009JOBMSGLEVEL=(1,1),NOTIFY=&SYSUID
//STEP1EXECPGM=IEBGENER
//SYSPRINTDDSYSOUT=*
//SYSUT1DDDSN=CN0010.XCY.JCL1,DISP=SHR
//DDDSN=CN0010.XCY.JCL2,DISP=SHR
//SYSUT2DDDSN=CN0010.XCY.JCL3,DISP=SHR
//SYSINDDDUMMY
4将一个sds中的数据一部分复制到一个新建立的sds当中,record选择范围
//CN001000JOBMSGLEVEL=(1,1),NOTIFY=&SYSUID
//COPYEXECPGM=IEBGENER
//SYSPRINTDDSYSOUT=*
//SYSUT1DDDSN=CN0010.XCY.JCL1,DISP=SHR
//SYSUT2DDDSN=CN0010.XCY.JCL5,DISP=(NEW,CATLG),
//UNIT=SYSDA,SPACE=(CYL,(1,1)),
//DCB=(RECFM=FB,LRECL=40,BLKSIZE=800)
//SYSINDD*
GENERATEMAXFLDS=5,MAXLITS=4
RECORDFIELD=(5,1,,1),FIELD=(20,21,,6),FIELD=(9,61,ZP,26),X
FIELD=(9,70,ZP,31),FIELD=(4,'TEST',,36)
/*
5临时数据集的应用
//CN001000JOBNOTIFY=&SYSUID,MSGLEVEL=(1,1)
//BUILDEXECPGM=IEBGENER
//SYSPRINTDDSYSOUT=*
//SYSUT1DD*
XCYISAGOODBOY
//SYSUT2DDDSN=&&TEMP1,DISP=(,PASS),
//SPACE=(TRK,(1,1)),DCB=(LRECL=80,RECFM=FB),
//UNIT=SYSDA
//SYSINDDDUMMY
//****************************************************************
//BUILD2EXECPGM=IEBGENER
//SYSPRINTDDSYSOUT=*
//SYSUT1DDDSN=&&TEMP1,DISP=(OLD,DELETE)
//SYSUT2DDDSN=CN0010.XCY.DATA,DISP=(,CATLG,DELETE),
//SPACE=(TRK,(1,1)),DCB=(LRECL=80,RECFM=FB),
//UNIT=SYSDA
//SYSINDDDUMMY
6将一个sds内容复制到新建立的pds的一个member中
//CN001027JOBNOTIFY=&SYSUID,MSGLEVEL=(1,1)
//STEP1EXECPGM=IEBGENER
//SYSPRINTDDSYSOUT=*
//SYSUT1DDDSN=CN0010.XCY727.SDS,DISP=SHR
//SYSUT2DDDSN=CN0010.XCY727.XCC(XCY1),DISP=(NEW,CATLG),
//SPACE=(TRK,(1,1,1)),VOL=SER=SUER01,UNIT=SYSDA
//SYSINDDDUMMY
7将sds排序输出到另一个sds中,sortfield选择排序范围
//CN001027JOBNOTIFY=&SYSUID,MSGLEVEL=(1,1)
//STEP1EXECPGM=SORT
//SYSOUTDDSYSOUT=*
//SORTINDDDSN=CN0010.XCY727.SDS,DISP=SHR
//SORTOUTDDDSN=CN0010.XCY727.SDS2,DISP=SHR
//SYSINDD*
SORTFIELDS=(1,2,CH,A,9,3,CH,A)
/*
8将sds排序并去除重复项,输出到另一个sds中
//CN001027JOBMSGLEVEL=(1,1),NOTIFY=&SYSUID
//STEP1EXECPGM=SORT
//SYSOUTDDSYSOUT=*
//SORTINDDDSN=CN0010.XCY727.SDS,DISP=SHR
//SORTOUTDDDSN=CN0010.XCY727.SDS2,DISP=SHR
//SYSINDD*
SORTFIELDS=(1,3,CH,A)
SUMFIELDS=NONE
/*
8根据排序情况将sds内容分为三个sds,去除重复
//CN001027JOBMSGLEVEL=(1,1),NOTIFY=&SYSUID
//STEP1EXECPGM=SORT
//SYSOUTDDSYSOUT=*
//SORTINDDDSN=CN0010.XCY727.SDS,DISP=SHR
//SORTOF01DDDSN=CN0010.XCY727.SDS3,DISP=(NEW,CATLG),
//SPACE=(CYL,(1,4),RLSE),DCB=(LRECL=80,RECFM=FB,BLKSIZE=80)
//SORTOF02DDDSN=CN0010.XCY727.SDS4,DISP=(NEW,CATLG),
//SPACE=(CYL,(1,4),RLSE),DCB=(LRECL=80,RECFM=FB,BLKSIZE=80)
//SORTOF03DDDSN=CN0010.XCY727.SDS5,DISP=(NEW,CATLG),
//SPACE=(CYL,(1,4),RLSE),DCB=(LRECL=80,RECFM=FB,BLKSIZE=80)
//SYSINDD*
SORTFIELDS=COPY
OUTFILFILES=01,INCLUDE=(1,6,CH,EQ,C'MOHANK')
OUTFILFILES=02,INCLUDE=(1,6,CH,EQ,C'SURESH')
OUTFILFILES=03,INCLUDE=(1,6,CH,EQ,C'KRISHN')
/*
9创建gdg
//CN001027JOBNOTIFY=CN0010
//********************************
//*CREATEAGDG*
//********************************
//GDGCREATEXECPGM=IDCAMS
//GDGMODELDDDSN=CN0010.XCY27.GDGMDL,DISP=(NEW,CATLG,DELETE),
//SPACE=(TRK,(0)),DCB=(RECFM=FB,LRECL=80,BLKSIZE=8000,DSORG=PS)
//SYSPRINTDDSYSOUT=*
//SYSINDD*
DEFINEGDG(NAME(CN0010.XCY27.GDG)LIMIT(100)
/*
10在gdg中创建两个数据集
//CN001027JOBNOTIFY=CN0010
//**********************************
//*CREATE2DATASETSINAGDG*
//**********************************
//CDS1EXECPGM=IEBGENER
//SYSPRINTDDSYSOUT=*
//SYSUT1DD*
THISLINEISWRITTENINTODATASETINGDG.
//SYSUT2DDDSN=CN0010.XCY27.GDG(+1),DISP=(NEW,CATLG,DELETE),
//SPACE=(TRK,(1,1)),DCB=CN0010.XCY27.GDGMDL
//SYSINDDDUMMY
//CDS2EXECPGM=IEFBR14
//GDGDDDSN=CN0010.XCY27.GDG(+2),DISP=(NEW,CATLG,DELETE),
//SPACE=(TRK,(5,5)),DCB=CN0010.XCY27.GDGMDL
11删除gdg
//CN001027JOBNOTIFY=CN0010
//************************************
//*BEFOREDELETINGAGDG,WEMUST*
//*DELETEALLDATASETINIT.*
//************************************
//DELDSEXECPGM=IDCAMS
//SYSPRINTDDSYSOUT=*
//SYSINDD*
DELETECN0010.XCY27.GDG.*
DELETECN0010.XCY27.GDGMDL
//**************************************
//DELGDGEXECPGM=IDCAMS,COND=(0,NE)
//SYSPRINTDDSYSOUT=*
//SYSINDD*
DELETECN0010.XCY27.GDGGDG
/*
12将两组数据排序进两个sds,再用merge合并排序
//CN001000JOBNOTIFY=CN0010
//STEP1EXECPGM=SORT
//SYSOUTDDSYSOUT=*
//SORTINDD*
MOHANK23423423434534344KIRAN
MOHANK13342345345345345RAJEEV
ARAMES34535345325354324SURESH
SURESH98347385385933987PULI
//SORTOUTDDDSN=CN0010.XCY727.SDS,DISP=SHR
//SYSINDD*
SORTFIELDS=(1,5,CH,A)
//STEP2EXECPGM=SORT
//SYSOUTDDSYSOUT=*
//SORTINDD*
RAMESH67575789769876785MADHU
KRISHN50830948530859340OIIED
KRISHN30495849572938495MADHU
SURESH98347385385933987PULI
//SORTOUTDDDSN=CN0010.XCY727.SDS3,DISP=SHR
//SYSINDD*
SORTFIELDS=(1,5,CH,A)
//STEP3EXECPGM=ICEMAN,COND=(0,NE)
//SYSOUTDDSYSOUT=*
//SORTIN01DDDSN=CN0010.XCY727.SDS,DISP=SHR
//SORTIN02DDDSN=CN0010.XCY727.SDS3,DISP=SHR
//SORTOUTDDDSN=CN0010.XCY727.SDS4,DISP=SHR
//SYSINDD*
MERGEFIELDS=(1,5,CH,A)
/*
13根据局部数据条件(大于400)对数据排序存储
//CN001027JOBNOTIFY=CN0010
//STEP1EXECPGM=SORT
//SYSOUTDDSYSOUT=*
//SORTINDDDSN=CN0010.XCY727.SDS,DISP=SHR
//SORTOUTDDDSN=CN0010.XCY727.SDS2,DISP=SHR
//SYSINDD*
SORTFIELDS=COPY
INCLUDECOND=(9,3,CH,GT,C'400')
/*
14定义一个vsamesds
//CN000928JOBNOTIFY=CN0001,MSGLEVEL=(1,1)
//DELDEFEXECPGM=IDCAMS
//SYSPRINTDDSYSOUT=H
//SYSINDD*
DELETECN0009.EXAMPLE.ESDS1
SETMAXCC=0
DEFINECLUSTER(NAME(CN0009.EXAMPLE.ESDS1)
RECORDS(100500)
RECORDSIZE(7070)
NONINDEXED)
DATA(NAME(CN0009.EXAMPLE.ESDS1.DATA)
CONTROLINETERVALSIZE(32760))
/*
//REPROT1EXECPGM=IDCAMS
//SYSPRINTDDSYSOUT=*
//IN1DDDSN=INVMASTS.DATBIN,DISP=SHR
//SYSINDD*
REPROINFILE(IN1)OUTFILE(OUT1)
PRINTINFILE(OUT1)CHARACTER
/*
15定义一个vsamksds
//CN000928JOBNOTIFY=CN0009
//STEP1EXECPGM=IDCAMS
//SYSPRINTDDSYSOUT=*
//SYSINDD*
DELETECN0009.VSAM.KSDS1
SETMAXCC=0
DEFINECLUSTER-
(NAME(CN0009.VSAM.KSDS1)-
VOLUME(USER02)-
RECORDS(100,10)-
RECORDSIZE(1020)-
CONTROLINTERVALSIZE(4096)-
KEYS(1,1))
//
16定义一个rrds
//CN000928JOBNOTIFY=CN0009
//SETP1EXECPGM=IDCAMS
//SYSPRINTDDSYSOUT=*
//SYSINDD*
DELETECN0009.VSAM.RRDS1
SETMAXCC=0
DEFINECLUSTER(NAME(CN0009.VSAM.RRDS1)-
NUMBERED-
VOLUME(USER02)-
RECORDS(50000,1000)-
RECORDSIZE(2020)-
CONTROLINTERVALSIZE(4096))
//
17copy一个pds所有members,到另一个pds
//CN000929JOBNOTIFY=&SYSUID
//STEP1EXECPGM=IEBCOPY
//SYSPRINTDDSYSOUT=*
//SYSUT1DDDSN=CN0009.XCY28.XCY,DISP=SHR
//SYSUT2DDDSN=CN0009.XCY.XCY,DISP=(NEW,CATLG),SPACE=(TRK,(5,1,2))
18调用流内过程copy
//CN000929JOBNOTIFY=CN0009
//MYPROCPROCINDD=,OUTDD=
//CPYEXECPGM=IEBGENER
//SYSPRINTDDSYSOUT=*
//SYSUT1DDDSN=&INDD.,DISP=SHR
//SYSUT2DDDSN=&OUTDD.,DISP=(NEW,CATLG),SPACE=(TRK,(1,1)),
//DCB=(LRECL=80,RECFM=FB,BLKSIZE=8000)
//SYSINDDDUMMY
//MYENDPEND
//CPYLOADEXECMYPROC,INDD=CN0009.XCY.XCY(XCY),
//OUTDD=CN0009.XCY.XCY4
19创建一个过程(pds的number)
//MYPROCPROCINDD=,OUTDD=
//CPYEXECPGM=IEBGENER
//SYSPRINTDDSYSOUT=*
//SYSUT1DDDSN=&INDD.,DISP=SHR
//SYSUT2DDDSN=&OUTDD.,DISP=(NEW,CATLG,DELETE),
//SPACE=(TRK,(2,1)),DCB=(RECFM=FB,LRECL=80,BLKSIZE=240)
//SYSINDDDUMMY
20cobol显示helloworld
IDENTIFICATIONDIVISION.
PROGRAM-ID.XCY1
ENVIRONMENTDIVISION.
DATADIVISION.
PROCEDUREDIVISION.
DISPLAY"HELLOWORLD!
"
STOPRUN.
21cobol实现简单运算(两数相加)
IDENTIFICATIONDIVISION.
PROGRAM-ID.XCY3.
ENVIRONMENTDIVISION.
DATADIVISION.
WORKING-STORAGESECTION.
77CPIC9(3).
77DPIC9(3).
PROCEDUREDIVISION.
ACCEPTC.
ACCEPTD.
ADDCTOD.
DISPLAYD.
STOPRUN.
22cobol的混合运算(变量有点混乱)
IDENTIFICATIONDIVISION.
PROGRAM-ID.XCY5.
ENVIRONMENTDIVISION.
DATADIVISION.
WORKING-STORAGESECTION.
01APIC999VALUE100.
01BPIC999VALUE100.
01CPIC999VALUE400.
01DPIC999VALUE100.
01EPIC999VALUE200.
01YPIC999VALUE100.
01FPIC999VALUE500.
01ZPIC999VALUE000.
01XPIC999VALUE300.
01TPIC999VALUE500.
PROCEDUREDIVISION.
A1.
ACCEPTA.
ACCEPTB.
ACCEPTC.
ACCEPTD.
ACCEPTE.
ACCEPTY.
ACCEPTF.
ACCEPTT.
ACCEPTX.
ACCEPTZ.
A2.
ADD3TOA.
ADD101,ATOB.
ADD9,6,7GIVINGY.
SUBTRACTBFROMF.
SUBTRACTYFROMXGIVINGZ.
SUBTRACTD,EFROMC.
SUBTRACTD,EFROMT.
A3.
DISPLAY"PRIMARYVALUES:
".
DISPLAY"A=100",",B=100",",C=400",",D=100",",E=200".
DISPLAY"Y=100",",F=500",",Z=000",",X=300",",T=500".
*
DISPLAY"**********************************************".
DISPLAY"THEREASULTS:
".
DISPLAY"A=3+A=",A.
DISPLAY"B=101+A+B=",B.
DISPLAY"Y=9+6+7=",Y.
DISPLAY"F=F-B=",F.
DISPLAY"Z=X-Y=",Z.
DISPLAY"C=C-D-E=",C.
DISPLAY"T=T-D-E=",T.
STOPRUN.
2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大型机 Cobol Mainframe jcl