欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    mf培训课件——jcl课件.ppt

    • 资源ID:6206645       资源大小:1.31MB        全文页数:69页
    • 资源格式: PPT        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    mf培训课件——jcl课件.ppt

    JCL语言,课程内容,1.JCL基本概念2.JCL语法规则3.JCL语句介绍4.JOB提交方法5.部分实用程序,课程内容,1.JCL基本概念2.JCL语法规则3.JCL语句介绍4.JOB提交方法5.部分实用程序,JCL基本概念,JCL(Job Control Language)定义:用户与操作系统的接口,用户通过JCL语句按照自己的意图来控制作业的执行。作业(JOB)的概念把程序要实现的每一项任务,称之为:作业或JOB。作业步(JOB STEP)的概念执行一个作业所要经历的步骤同一个JOB中的JOB STEP数目不能超过255,JCL基本概念,JCL基本概念,JCL的三大功能控制作业的执行。管理系统资源和数据集。(类似TSO交互式菜单对数据集的管理)对COBOL程序编译和执行。(COBOL代码JCL编译机器码JCL执行)JCL的重要性编译作业流和执行作业流都是JCL编写合格的TEAM LEADER的前提,课程内容,1.JCL基本概念2.JCL语法规则3.JCL语句介绍4.JOB提交方法5.部分实用程序,JCL语法规则,JCL允许使用的字符字母字符(alphameric character):AZ数字字符(numeric character):09通配字符(national character):$#特殊字符(special character):,./()*&+-=空格EBCDIC可打印字符集,JCL语法规则,每一个JCL语句可包含五个区域:标识区(identifier field)告知系统所包含的语句类型,用以语言的种类。以/为起始。名字区(name field)必须从第三列开始编写最多八个字符,可用字母、数字、通配字符(#,$)组合第一个字符不能是数字,必须是字母或通配字符(#,$)操作区(operation field)表示语句形态,如:EXEC 语句,其操作项目即为EXEC参数区或运算区(operand field)几乎每一个操作符都需要有参数配合使用。可包含一个或一个以上的参数,参数之间以“,”分隔备注区或说明区(comments field)注释。不参与语句的执行,JCL语法规则,一条JCL语句的例子:,需注意:除了标识区与名字区,各区域之间至少要间隔一个以上的空格,标识区 操作符区 注释区/FILE1 JOB(SMD),DEVXMG,MSGLEVEL=(1,1)XXXXXXXXXXX 名字区 参数区,JCL语法规则,参数区参数的四种类型:位置参数(Positional Parameter)关键字参数(Keyword Parameter)列示参数(List of sub-parameter)符号参数(Symbolic Parameter),JCL语法规则,位置参数(Positional Parameter)定义:用它的位置来描述其特性的一种参数两大特点:1,如果一个操作符含有多种参数,那么位置参数必须位于所有参数之前。2,位置参数,相互之间不允许调换前后顺序。,例1:/A1234567 JOB account-information,programer-name,other-parm,JCL语法规则,位置参数的子参数至少由一个或一个以上的子参数组合而成每个子参数都有其固定的位置,顺序不可调换若前面或中间的子参数空缺,需以“,”留位若其后子参数都空缺时,则无需任何符号留位,例2:/FILE1 JOB(D548-8686,12/8/85,PGMBIN),ZY,例3:/FILE1 JOB(12/8/85,D548-8686,PGMBIN),ZY,例4:/FILE1 JOB(,12/8/85,PGMBIN),ZY例5:/FILE1 JOB(D548-8686,PGMBIN),ZY,例6:/FILE1 JOB(D548-8686),ZY,JCL语法规则,参数区参数的四种形态:位置参数(Positional Parameter)关键字参数(Keyword Parameter)列示参数(List of sub-parameter)符号参数(Symbolic Parameter),JCL语法规则,关键字参数(Keyword Parameter)简称键字参数,以关键字来描述其特性特点:一般地,帶=号的参数都是关键字参数两个例外:“PGM=”,“PROC=”是EXEC语句的位置参数关键字参数之间的顺序可以任意调换,例1:/A1234567 JOB T335840,WANGLI,CLASS=A,MSGLEVEL=(1,1)例2:/A1234567 JOB T335840,WANGLI,MSGLEVEL=(1,1),CLASS=A,JCL语法规则,参数区参数的四种形态:位置参数(Positional Parameter)关键字参数(Keyword Parameter)列示参数(List of sub-parameter)符号参数(Symbolic Parameter),JCL语法规则,列示参数(List of sub-parameter)定义:是关键字参数的一种延伸。所有含有子参数的关键字参数都可以称为列示参数有位置子参数和关键字子参数两种表现形式:以位置子参数的形式表现:例1:DISP=(NEW,KEEP,DELETE),其中NEW KEEP DELETE具有位置参数的特性,所以三者位置不可任意调换以关键字子参数的形式表现:例2:DCB=(RECFM=FB,LRCEL=80),其中RECFM=FB 和LRCEL=80的順序可调换,括号的用法:必须用括号将全部子参数都包含起来,除非只有一个子参数。子参数最多有2级,也就是括号最多2层。例1:DISP=OLD 省略了后边两个位置子参数例2:DCB=RECFM=FB 或 DCB=LRECL=80,JCL语法规则,参数区参数的四种形态:位置参数(Positional Parameter)关键字参数(Keyword Parameter)列示参数(List of sub-parameter)符号参数(Symbolic Parameter),JCL语法规则,符号参数(Symbolic Parameter)与其他语言里“变量”的概念类似,并非系统指定的,而是程序员自定义(对变量赋值,然后调用变量)在参数之前加一个“”符号的参数,即为调用符号参数符号参数的三种指定、赋值的方式:SET:权限最大,可以在过程和JOB里指定符号参数PROC:只在过程里定义符号参数并赋值EXEC:在调用过程时,对符号参数赋值(伪覆盖式的),JCL语法规则,JCL语法规则,JCL语法规则,JCL语法规则,JCL语句的续行规范只有JOB、EXEC、DD、PROC语句允许续行除COMMENT语句可写至第72列外,其它语句只能写到第71列(相对的列)若语句长度超过它所能允许的列数,则必须延续到下一行,JCL语法规则,JCL语句的续行方式在一完整参数后紧接着,(必须在第72列之前)下一行的第一、二列必须为“/”欲延续的参数必须在第4列及第16列之间开始,例:72/AIJSUB JOB(SMD),DEVXMG,MSGLEVEL=(1,1),/MSGCLASS=X,CLASS=A,NOTIFY=&SYSUID,REGION=8M 4-16,JCL例子,JCL例子,课程内容,1.JCL基本概念2.JCL语法规则3.JCL语句介绍4.JOB提交方法5.部分实用程序,常用语句,JOB DD EXEC JCLLIB PROC PEND COMMENT INCLUDE SET NULL IF-THEN-ELSE-ENDIF DELIMITER,JCL语句介绍,JOB statement,JOB 语句用途:定义作业的名称,表示作业的开始格式:/jobname JOB operands comments规则:每一个作业的第一个语句必须是JOB语句 每一个作业必须有且只能有一个JOB语句 JOB语句中的jobname必须编写,并要符合名称域的编写规则,尽量起有意义的名字,/jobname JOB positionals,keywords/DEFFILE JOB(SMD),WANGLI,MSGLEVEL=(1,1),CLASS=A,JOB statement,常见的JOB语句的参数列表和格式:/Jobname JOB accounting-information,programmer-name,/CLASS=job-class,/MSGCLASS=message-class,/MSGLEVEL=(statements,messages),/NOTIFY=user id,/REGION=region-size,/TIME=(minutes,seconds),/COND=(code,operator),),/TYPRUN=typerun,/LINES=(nnnnnn,action),/RESTART=stepname,JOB statement,JOB 语句的参数说明accounting-information1-143个字符,可省略programmer-name1-20个字符,可省略与accounting-information的位置不可调换CLASS=job-class设定本作业处理的队列(分类)A to Z or 0 to 9相同类别的作业会处于同一个输入队列里等待执行,并没有优先级的概念。CLASS=A,JOB statement,MSGCLASS=message-class规定了作业日志的输出类别A to Z or 0 to 9在输出时DD语句的 SYSOUT相当于触发器,所以本参数值与DD语句的 SYSOUT参数值相同 DD SYSOUT=A简便写法:设SYSOUT=*,表示跟随本参数值JCL语句的输出必须打印时设 SYSOUT=DMSGCLASS=A,JOB statement,MSGLEVEL=(statements,messages)控制JCL作业输出清单的内容和输出的条件,由两个位置子参数构成,不可调换。statements 控制输出的内容。0=只印出JOB 语句(即第一行)1=所有JCL和过程内容都输出 2=只输出JCL语句messages 控制输出的条件。0=系统信息不印出,除非作业异常才输出 1=系统信息正常与否都输出MSGLEVEL=(1,1),JOB statement,NOTIFY=user identificationJOB处理后的反馈信息送到那个USER-ID的MSG LOG(简言之:是否显示作业返回码)User ID的值须与当前登陆TSO 的 user ID 相同 NOTIFY=USERID例:NOTIFY=&SYSUID(系统指定的符号参数)若接收信息的使用者已经 logoff,信息会保存直至该 user ID logon 为止,JOB statement,JOB statement,PROC statement,PROC语句定义一段处理过程,可由多个JOB STEP 组成过程类似于其它语言里的子程序,它用JCL的语句进行编写,能够完成某种功能但不能被(SUB)执行,只能被作业调用分为 流内过程 和 编目过程流内过程写在一个作业内部,只能被本作业调用。一个JOB里,流内过程最多能建15个;而编目过程只能以某个PDS或PDSE的member形式存在,可被多个作业调用。格式:/procname PROC symbolic parametersymbolic parameter参数传递,要求:参数名称不可超过 8 位字符参数名称不可重复过程中不允许含如下语句:JOB、Delimiter(/*)、Null(/)statements DD*、DD DATA statementsJOBLIB DD statements,PEND statement,PEND语句(与流内PROC语句搭配使用)只针对流内过程,作为流内过程的结束语句以 PROC开始,以 PEND 语句结束编目过程无需PEND语句编目过程放在以PDS或PDSE的 member 形式存在以 PROC开始,无需 PEND 语句结束格式:/PEND,流内过程例子,/COPYDATA JOB CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1),NOTIFY=&SYSUID/XYZ PROC OUTDD=,INDD=流内过程开始,定义符号参数/CPY EXEC PGM=IEBGENER/SYSPRINT DD SYSOUT=*/SYSUT1 DD DSN=&INDD.,DISP=(SHR,KEEP,KEEP)/SYSUT2 DD DSN=&OUTDD.,DISP=(NEW,CATLG,DELETE),/SPACE=(TRK,(2,1),/DCB=(RECFM=FB,LRECL=80,BLKSIZE=3200,DSORG=PS)/SYSIN DD DUMMY/XYZEND PEND 流内过程结束/CPYLOAD EXEC PROC=XYZ,OUTDD=USERID.PSOUT,INDD=USERID.PSIN 调用流内过程XYZ,同时对符号参数赋值,JCLLIB statement,JCLLIB语句指定私有的过程库及查找顺序的语句,以备调用编目过程格式:/JCLLIB ORDER=(library,.)例:/SEARCH JCLLIB ORDER=(USERID.LIB1,USERID.LIB2)/STEP3 EXEC PROC=FILE1过程库查找的顺序:USERID.LIB1 USERID.LIB2 SYS1.PROCLIB,EXEC statement,EXEC语句用途:每一个 JOB STEP 的第一个语句,用以指定所要执行的程序或过程格式:/stepname EXEC PGM=|PROC=|procedure name,PARM=parameter(只针对PGM),REGION=region-size,COND=(code,operator),),TIME=(minutes,seconds),EXEC statement,参数说明PGM=program name PROC=procedure name 流内过程或编目过程都可以PARM=parameter需要传送的参数值,只针对PGM,最多100个字符。向过程传递参数值不用PARM,而是用符号参数。,SET statement,SET 语句用途:定义符号参数并且赋值格式:/SET parameters=value必须写于JOB语句之后和使用该符号参数之前PROC 和 JOB 中皆可使用 SET,例:/SET LVL=USERID,PBBAT=AAPP03,M=1,N=2,J=1/SEARCH JCLLIB ORDER=(&LVL.CBC.PROCLIB,&LVL.BAT.PROCLIB),NULL statement,NULL语句用途:表示JOB的结束,作业的结束符格式:/非必须的语句,例:/EXCPGM1 JOB P048-1357,MSGCLASS=N,MSGLEVEL=(1,1),/CLASS=A,REGION=8M/PGM1 EXEC PGM=PGM1/,COMMENT statement,COMMENT语句用途:注释格式:/*注释的内容,/*/*PROC:AIPEOD10*/*FUNCTION:SPLIT VOUCHER FILES*/*VERSION:5.0*/*AUTHOR:LIN MING*/*,DELEMITER statement,DELIMITER语句用途:流内数据的结束符,与 DD*或 DD DATA配合使用格式:/*流内数据的作用:1,向数据集(一般是PS)或COBOL程序传递数据内容 2,配合实用程序,书写流内控制语句,/STEP1 EXEC PGM=IEBGENER/SYSUT1 DD*20121221ABC00120121201UVW00220120921XYZ003/*/SYSUT2 DD DSN=USERID.PS,DISP=(OLD,KEEP,KEEP),DD statement,DD语句定义JOB STEP中所使用的文件(数据集)和属性在JOB STEP中使用的每一个文件(数据集)都要有相应的 DD 语句在同一个JOB STEP中,不可有重复的外部文件名=DD语句的名字区的名字/BKTRAN DD DSN=USERID.TEST1,DISP=SHR避免自定义SYS,JOB,STEP,JCL打头的文件名DD 语句中的外部文件名须与COBOL程序中ASSIGN子句指向的外部文件名一致一个DD语句只能跟一个数据集一个DD语句可以跟多个文件DD语句位置可以调换,DD statement,DD语句的格式和参数/ddname DD positional,DSN=data-set-name,DISP=(status,normal,abnormal),SPACE=(unit-of-measure,(primary,secondary),RLSE),DCB=(LRECL=logical-record-length,BLKSIZE=block-size,RECFM=record-format)UNIT=device-name or group-name,VOL=SER=volume-serial-number,DD statement,DD语句的位置参数*号:标志流内数据的开始DATA:标志流内数据的开始DUMMY:标志没有输入输出,不对文件进行处理注意:DD语句的位置参数互不相容。,/SYSIN DD*data-输入的数据,数据不允许/开始/*,/SYSIN DD DATA data-输入的数据,数据含有/开始/*,/SYSIN DD DUMMY表示不对SYSIN这个系统保留文件名进行输入输出的处理,DD statement,DD语句的关键字参数DSN参数(必写参数):定义物理文件(数据集)的名称永久数据集(经过编目,生命周期较长)Sequential:DSN=USERID.ABC.AIFMST每一段的名称不能超过 8 个字符含 period符号时,整体不能超过 44 个字符(含period)PDS:DSN=USERID.BAT.PARMLIB(AIPSRT01)Member name 1-8 字符临时数据集(仅作用于本作业步,作业步结束则删除)DSN=&SORTOUTDSN=&TEMP(MEMBER1),DD statement,DISP参数(必写参数)描述数据集被执行前的状况及执行后如何处理DISP 由三个位置子参数组成格式:DISP=(NEW,DELETE,DELETE)(OLD,KEEP,KEEP)(SHR,PASS,CATLG)(MOD,CATLG,UNCATLG)(,UNCATLG,),DD statement,DISP参数第一个子参数表示作业步执行前数据集的状况NEW:分配新的数据集,一般均为output时 SHR:job step 执行前已存在,共享该数据集OLD:job step 执行前已存在,独占该数据集MOD:当数据集不存在时,视为“NEW”;当数据集存在时独占该数据集,并且记录 追加在该数据集的末尾(与SHR/OLD不同),DD statement,DISP参数第二个子参数表示JOB STEP 正常结束时的文件处理DELETE:删除该数据集,释放所占空间KEEP:仍然保留该数据集PASS:保留该数据集,并传递给后续作业步使用,一般对临时数据集使用CATLG:保留该数据集,并将其进行编目UNCATLG:删除该数据集的编目所谓编目:即写入系统VTOC数据集中,VTOC就像书籍的“目录”一样,里边存放磁盘中各数据集的名字、结构、格式等概括性信息,DD statement,DISP参数第三个子参数表示JOB STEP 异常结束时的处理DELETE:删除该数据集,释放所占空间KEEP:仍然保留该数据集CATLG:保留该数据集,并将其进行编目UNCATLG:删除该数据集的编目,DD statement,DISP参数默认值NO DISP DISP=(NEW,DELETE,DELETE)DISP=NEW DISP=(NEW,DELETE,DELETE)DISP=OLD DISP=(OLD,KEEP,KEEP)DISP=SHR DISP=(SHR,KEEP,KEEP)DISP=MOD DISP=(MOD,KEEP,KEEP)DISP=(,CATLG)DISP=(NEW,CATLG,CATLG)新建数据集常用的方式:DISP=(NEW,CATLG,DELETE),DD statement,SPACE参数(在新建数据集的时候使用)定义在直接存储设备上分配的空间大小格式:SPACE=(TRK,CYL,BLKS,(primary,secondary,directory)TRK:表示空间分配以 track 为单位CYL:表示空间分配以 cylinder为单位BLKS:表示文件记录的 block length 有多大,就以block 为单位分配空间primary:表示首次分配的空间大小secondary:表示二次再分配空间大小directory:控制member分配数量(PDS需要,PS不写)例:SPACE=(TRK,(5,2)分配PS,DD statement,DCB参数(一般是在新建数据集的时候使用)提供数据集的结构、组织形态以及其他特性格式:DCB=(RECFM=,LRECL=,BLKSIZE=,DSORG=)RECFM:表示记录格式RECFM=U:表示记录长度未定义,由系统决定RECFM=VB:表示记录长度为变长RECFM=FB:表示记录长度为固定长度 B:没有B则表示一个块就存放一个记录LRECL:表示记录长度定长记录时为记录长度,以 bytes 为单位变长记录时为最大记录长度+4 bytes BLKSIZE:一个block的大小,18-32760 间DSORG:表示数据集结构(与ISFP的3.2分配数据集有区别)DSORG=PS,表示顺序数据集DSORG=PO,表示分区数据集,DD statement,UNIT参数(非必写参数)表明数据集使用的设备类型及编号格式:UNIT=(unit address or device type or group name,count)unit address:某一特定设备,如磁带机130,则UNIT=130device type:某一种设备类型,如disk pack,则UNIT=3390group name:某类存储租设备,如:UNIT=SYSDACount:同时要使用的设备个数,最多 59个,DD statement,VOLUME参数(非必写参数)用以表示数据集所在媒体编号(卷)WORK01 WORK04常用的格式:VOL=SER=serial numberSER:用以表示 volume 的编号参数serial number:SER参数的值,表示volume编号,DD statement,SPECIAL DDNAMESJOBLIB:指定私有程序库(PDS或PDSE)名称的语句作用范围:整个作业必须紧跟JOB语句,两者之间不允许有其他语句若程序不在定义的私有库中,再自动到系统库找格式:详细的使用说明:教材P49,/PAYROLL JOB 12345,IAN,MSGLEVE=(1,1)/JOBLIB DD DSN=USERID.BAT.LOADLIB1,DISP=SHR/STEP1 EXEC PGM=UPDATE,DD statement,SPECIAL DDNAMESSTEPLIB:指定私有程序库(PDS或PDSE)名称的语句作用范围:仅适用于当前 JOB STEP若程序不在定义的私有库中,再自动到系统库找权限:若既定义了JOBLIB,又为某个作业步定义了STEPLIB,则该作业步会先在STEPLIB中指定的私有库去查找,若找不到则到系统库查找,JOBLIB被忽略STEPLIB一般放在当前作业步的下面格式:,/STEP2 EXEC PGM=PAYROLL/STEPLIB DD DSN=USERID.BAT.LOADLIB2,DISP=SHR,DD statement,三个LIB的区别,课程内容,1.JCL基本概念2.JCL语法规则3.JCL语句介绍4.JOB提交方法5.部分实用程序,JOB提交方法,编辑状态下提交(ISPF/PDF的3.4)在编辑命令行发SUBMIT(SUB)命令在数据集前的命令区发SUB命令命令状态下提交(ISPF/PDF的6)TSO SUBMIT USERID.XXXX(JOB1),课程内容,1.JCL基本概念2.JCL语法规则3.JCL语句介绍4.JOB提交方法5.部分实用程序,实用程序 UTILITY,由系统提供的能够完成某种功能的程序(PGM),无需JOBLIB或STEPLIB去指定私有程序库IDCAMS:定义VSAM数据集、删除所有数据集、其他管理功能IEBCOPY:处理PDS的拷贝、压缩、合并、重组IEBGENER:拷贝PS、或将PS转换成PDS的memberIEFBR14:空程序,只是返回返回码0,创建、删除数据集SORT:对数据集内的记录进行排序、拷贝和合并(一般PS数据集)教材P66页 一些实用程序的介绍需注意:每个实用程序在DD名字区几乎都有自己的保留字;即便存在不同实用程序实现相同功能的情况,但写法和形式也不一定完全相同,复习重点,JCL的语法规则各种参数的应用三个必写语句及其用法:JOB、EXEC、DD语句常用实用程序的用法先看课件和教材,理解意思再去做练习;不要照搬教材的代码,有些代码不适合我们的环境!,SORT合并、排序,对两个PS数据集的记录进行合并排序/EXAMP JOB CLASS=A,MSGCLASS=A,/MSGLEVEL=(1,1),NOTIFY=&SYSUID/SORT EXEC PGM=SORT/SYSOUT DD SYSOUT=*/SORTIN DD DSN=,DISP=/DD DSN=,DISP=/SORTOUT DD DSN=,DISP=/SYSIN DD*SORT FIELDS=(),FORMAT=CH SUM FIELDS=NONE 合并相同的数据/*,JCL内容介绍,

    注意事项

    本文(mf培训课件——jcl课件.ppt)为本站会员(sccc)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开