-2

Which language can I use in z/OS to create a job in DB2 Z/OS V10?

In Z/OS Mainframe, please provide example script to create or SUBMIT a JOB which executes stored procedures.

4

1 回答 1

2

虽然我同意 Bill W.(上图)的观点,但我想我会在这里提供一些细节,以防有人真的想编写一个可以提交大型机作业的应用程序。

在核心,z/OS 中的“工作”只是定义工作单元的一系列 JCL 语句。好消息是作业可以通过多种方式流入 z/OS:

  • TSO、ISPF 或 OMVS“提交”命令(或其他子系统中的等效命令)
  • FTP,通过使用 QUOTE SITE FILETYPE=JES 和 FTP PUT
  • 通过 JCL,例如使用 IEBGENR 将 JCL 复制到 INTRDR SYSUT2
  • 在使用 EXEC CICS SPOOL API 的 CICS 应用程序中
  • 从操作员控制台使用 START 命令
  • 从使用 NJE 协议的远程系统
  • 来自各种供应商产品,例如作业调度软件

如果您想做一些简单的事情,通常可以编写各种“SUBMIT”命令的脚本而不会有太多麻烦。

如果您需要在脚本或其他软件中提交作业,要记住的一件很酷的事情是,只需打开一个称为内部阅读器的特殊文件即可提交作业。您需要做的就是分配并打开内部阅读器,然后编写您的 JCL(通常是固定的,80 字节记录),然后关闭内部阅读器 - viola,您的工作已提交。

您可以通过多种不同的方式分配内部阅读器。在 JCL 中,它就像//ddname DD SYSOUT=(,INTRDR). 您还可以使用 TSO ALLOC 命令等等——在 LE 运行时中甚至有很好的支持,使 C、Java、COBOL 等可以访问内部阅读器。对于位级(汇编程序)人员,SVC 99 提供了分配内部读取器所需的一切。

一旦分配了内部阅读器文件,您只需打开并写入它,就好像它是任何其他文件一样。在幕后,内部阅读器只是 JES 的“管道”,即“作业输入子系统”……正如您可能猜到的,JES 处理(除其他外)处理作业提交。随着通往 JES 的管道打开,您编写的应该是代表您要提交的作业的 JCL。

如果您在其他平台上运行并希望将工作提交给 z/OS,那么 FTP 可能是最简单的路径。正常连接并输入上面的 SITE 命令,然后您可以“PUT”包含一组 JCL 记录的文件。FTP 接口的一件很酷的事情是,它为您提供了一个作业标识符,您可以使用该标识符来跟踪作业并获取其输出。

请记住,有各种选项和安全控制来限制谁可以在 z/OS 上做什么,因此如果您的站点保护了提交作业的特权,您可能还有其他障碍需要克服。

在 z/OS 上提交作业值得我花两分钱... :)

于 2017-03-08T15:50:48.430 回答