编程入门菜鸟教程
  • 首页
  • 菜鸟自学教程
  • 在线工具
  • 编程实例
  • 代码片段
  • 开发速查
  • 技能测验
  • 搜索
JCL - 概述 JCL - 概述 JCL - 环境设置 JCL - JOB声明 JCL - EXEC声明 JCL - DD声明 JCL - 基础库 JCL - 程序 JCL - 条件处理 JCL - 定义数据集 输入输出方法 使用JCL运行COBOL程序 JCL - 实用程序 JCL - 基本排序技巧 JCL - 有用的资源
  1. IT宝库
  2. 菜鸟教程
  3. 计算机编程语言教程
  4. JCL - 概述
Hostwinds建站/上外网首选4刀/月起
最新ChatGPT超详细图文注册教程
无视版权/抗投诉VPS服务器首选
程序员月入过万副业-TikTok视频搬运
外贸/TikTok/油管运营等科学上外网
建站/找图/谷歌检索/翻译/娱乐必备
2022-07-17 17:11:08
jcl
教 程 目 录
下一篇:JCL - 环境设置 

JCL - 概述


何时使用JCL

JCL在大型机环境中用作程序(例如:COBOL,Assembler或PL/I)与操作系统之间的通信.在大型机环境中,程序可以批量和在线模式执行.批处理系统的示例可以是通过VSAM(虚拟存储访问方法)文件处理银行交易并将其应用于相应的帐户.在线系统的示例可以是银行中的员工用来开立账户的后台屏幕.在批处理模式下,程序通过JCL作为作业提交给操作系统.

批处理和在线处理在输入,输出和程序执行请求方面有所不同.在批处理中,这些方面被输入到JCL中,而JCL又由操作系统接收.

作业处理

作业是一个单元可以由许多工作步骤组成的工作.通过一组作业控制语句在作业控制语言(JCL)中指定每个作业步骤.

操作系统使用作业输入系统(JES)将作业接收到操作系统,安排它们进行处理和控制输出.

作业处理经过以下一系列步骤:

工作处理

  • 工作提交 -  将JCL提交给JES.

  • 工作转换 -  转换JCL和PROC到JES理解的解释文本并存储到数据集中,我们称之为SPOOL.

  • 作业排队 -   JES根据JOB语句中的CLASS和PRTY参数决定作业的优先级(在 JCL  -  JOB Statement 章节中有说明).如果没有错误,则检查JCL错误并将作业安排到作业队列中.

  • 作业执行 -  当作业达到最高优先级,从作业队列中执行.从SPOOL读取JCL,执行程序并将输出重定向到JCL中指定的相应输出目标.

  • 清除 -  作业完成后,将释放分配的资源和JES SPOOL空间.为了存储作业日志,我们需要在将作业日志从SPOOL释放之前将其复制到另一个数据集.

本文地址:https://itbaoku.cn/tutorial/jcl-index.html


下一篇:JCL - 环境设置 

相关教程

JCL 教程
JCL概述 - 从概述,环境设置,JOB语句,Exec语句,DD语句,基本库,过程,条件作业处理,定...
JCL 教程
Ansible教程
初学者的Ansible教程 - 从基本到高级概念的简单简单步骤学习Ansible,其中包括简介,环境...
Ansible教程
COBOL教程
COBOL概述 - 从简单和简单的步骤学习Cobol,从基本到高级概念,包括概述,环境设置,程序结构...
COBOL教程
Highcharts教程
Highcharts初学者教程 - 从简单和简单的步骤学习Highcharts,从基本到高级概念,包...
Highcharts教程
JFreeChart教程
JFreeChart初学者教程 - 从简单和简单的步骤学习JFreeChart,从基本到高级概念,包...
JFreeChart教程
CouchDB教程
CouchDB初学者教程 - 从基本到高级概念的简单简单步骤学习CouchDB,包括简介,安装,卷曲...
CouchDB教程

相关问答

在JCL中为字符串添加零填充
在JCL中,如何将" 0"填充添加到字符串中,以使我的字符串长度始终为 10? 我正在使用tssutil v3工具作为JCl. If input "10541", 5 padding is added = 0000010541 解决方案 如果您无法使用TSSUTIL获得解决方案: //STEP001 EXEC PGM=SORT //SORTIN DD * 24567 1456 47865 24875 1 //SORTOUT DD SYSOUT=* //SYSIN DD * )

40 string padding jcl

需要使用JCL在PDS文件中搜索一个成员
我需要帮助创建JCL来搜索当前年度成员(即rpxxxx,其中XXXX表示2018年).每年使用PDS文件的年度工作创建的新成员.因此,成员名称未固定在PDS文件中,即每年后缀已更改. 我们需要创建一个JCL,该JCL检查当年成员是否在PDS文件中存在.因此,继任工作将成功运行. 如果PDS文件中存在的当年成员,则新作业将使用RC 0000运行,这表明将自动触发后继作业. 如果PDS文件中的Curr年成员不存在,则该作业将在RC 0001失败,这表明下一个后继作业将在成功恢复之前不会触发. 请帮助我创建这样的JCL. 您的帮助非常感谢. 预先感谢. 解决方案 列表,TSO函数,显示数据集属性.您可以使用IKJEFT01实用程序(允许您在批处理中运行TSO功能)并运行此TSO功能.但是,列表发出的返回代码不是您想要的. 所以,我建议使用IKJEFT01实用程序来运行REXX脚本,以评估PDS中成员的存在. /* REXX */ arg dsname address tso "listds ("dsname")" if (rc \= 0) then exit 1 运行jcl看起来像下面. //JOBNAME JOB ('ACCOUNT )

24 mainframe jcl

大型机JCL使用SORT进行记录转换
我想使用stort(Snycsort或dfsort)将记录转换为列后进行.它应该可扩展到任何数量的记录.这可能吗? DE001XYX A CD100000 B CD200000 C DE001KKK A CD100000 B DE003ZZZ A DE001XYX A CD100000 B CD200000 C DE001KKK A CD100000 B ........ transpose DE001XYX CD100000 CD200000 DE001KKK CD100000 DE003ZZZ DE001XYX CD100000 CD200000 DE001KKK CD100000 ..... 解决方案 这是我喜欢并渴望自己解决的一个问题.经过一番研究并尝试,我只是提出了一个解决方案. 更新: 即兴方法如下.它以1通过本身解决了问题,而初始方法进行了3次通过. 即兴方法: 无需3次通过. ***************************** Top of Data ****************************** //JOBNAME JOB ('ACCOUNT INFORMATIO )

50 mainframe jcl syncsort

如何在PARM参数(JCL)中使用周期?
情况如下. 我有Parm参数: CSQ1 - Queue manager name CARD.PAYMENTS - Request queue name CCD3050.REPLY - Reply queue name CCD3050 - Contestant user ID 400.05 - Payment amount "MY PAYMENT" - Payment description 在我的JCL中,我写了这篇文章: //PAYMENT EXEC PGM=PAYMENT,REGION=1024K, // PARM='CSQ1,CARD.PAYMENTS,CCD3050.REPLY,CCD3050, // 400.05,"MY PAYMENT"' 我遇到了麻烦.我写道: // PARM=('CSQ1,CARD.PAYMENTS,CCD3050.REPLY,CCD3050', // '400.05,MY PAYMENT') 也遇到了麻烦. 然后我写道: PARM=(CSQ1,CARD.PAYMEN )

42 mainframe period jcl zos

JCL-获取指定区域内非空格字符的计数(大型机)
我需要准备一些输入数据以通过程序运行,数据应采用以下格式. UID (1-11)|TxtLen (12-16)| Text (17-62) 我可以使用排序来正确定位字段并获取UID和文本字段. " txtlen"应包含从文本字段开始到文本字段中的最后一个字符的字符数量. i.e. “Hello”’s TxtLen is 5, “Hel lo”’s TxtLen is 6, “Hello World”’s TxtLen is 11, etc... 我想知道是否只能通过JCL获得TXTLEN,还是需要一个程序才能执行此操作? Thanks 解决方案 您将需要一个程序. 我在堆栈溢出上看到了许多大型机问题,询问"仅JCL"是否可能发生某些问题.请记住, 我可以使用排序来正确定位字段并获取UID和 文本字段 sort是一个程序.恰好是在大多数系统上找到的一个程序(尽管有不同的供应商的实现,但IBM有一个,Syncsort有一个,CA等.)有许多其他程序通常在Mainframe Systems上找到. 只是为了ped脚,jcl实际上没有做任何事情, jes 在解释jcl. 时进行工作 在您的特定情况下,您可以创建排序出口,也可以在 rexx ,或者您可以使用一些 unix系统服务 命令并通过 bpxbatch 或 cozbatch )

46 mainframe jcl

如何解决SYNCSORT JCL中的 "WER046A SORT CAPACITY EXCEEDED"?
我正在尝试对数据集进行分类并写入新的数据集,每次我执行工作时,它都会依靠(ABEND = U0016). 消息表格sysout. WER276B SYSDIAG= 24646562, 29667262, 29667262, 27500165 WER164B 307,288K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED, WER164B 0 BYTES RESERVE REQUESTED, 307,272K BYTES USED WER036B G=5174,B=1,BIAS=99 WER162B 75 PREALLOCATED SORTWORK TRACKS, 3,750,000 DYNAMICALLY ALLOCATED, WER162B 26,721,480 ACQUIRED IN 2,230 SECONDARY EXTENTS, 0 RELEASED, TOTAL 30,471,555 TRACKS USED WER046A SORT CAPACITY EXCEEDED WER493I ZIIP PR )

36 mainframe jcl syncsort

本站提供 编程入门菜鸟教程 | 在线实用工具 | 编程实例源码下载 | 源代码片段分享 | 编程技术问答 | 菜鸟自学教程 | 在线技能测验 等内容供大家免费学习和使用!

IT宝库 版权所有 京ICP备14011762号 · 站点地图 · 站点标签 · © 2016-2023 · 意见&反馈 SiteMap <免责申明> 本站内容来源互联网,如果侵犯您的权益请联系我们删除.
    • 代码
    • 登录
    • 注册
  • 首页
  • 教程
  • 工具
  • 实例
  • 速查
  • 测验
  • 繁 體
  • 联系站长