DL/I批处理作业的输入和输出数据集

DL/I批处理作业需要输入数据集,其DD名称为 DDITV02 ,输出数据集的DD名称为 DDOTV02。

Db2 DL/I 批量输入:

在运行DL/I批处理作业之前,您需要为多个输入参数提供数值。 输入参数是位置参数,以逗号分隔。

您可以使用 DDITV02 数据集或子系统成员为以下参数指定值:
SSN,LIT,ESMT,RTT,REO,CRC
只能在 DDITV02 数据集中为以下参数指定值:
CONNECTION_NAME,PLAN,PROG

如果您使用 DDITV02 数据集并指定子系统成员,则 DDITV02 DD语句中的值将覆盖指定子系统成员中的值。 如果您不提供任何信息, Db2 将以系统异常代码 X'04E' 以及第15项中唯一的理由代码。

DDITV02 是数据集的DD名称,该数据集具有DCB选项 和RECFM=F或FB。 LRECL=80

子系统成员是 IMS 程序库中的成员。 它的名字是由SSM参数值和IMSID参数值组合而成的。 在调用DLIBATCH程序时,需要指定SSM参数和IMSID参数,该程序将启动DL/I批处理环境。

输入参数的含义如下:

社保号
指定 Db2 子系统的名称。 此值为必需。 您必须指定一个名称才能连接到 Db2

SSN值的长度可以为1到4个字符。

如果SSN参数中的值是数据共享组中某个活动子系统的名称,则应用程序将附加到该子系统。 如果SSN参数值不是活动子系统的名称,而是组附件名称,则应用程序将附加到数据共享组中的活动 Db2 子系统。

LIT
指定语言界面令牌。 Db2 在在线 环境中操作时,需要使用语言接口令牌来路由SQL语句。 IMS 由于批处理应用程序只能连接到一个 Db2 系统,因此 Db2 不使用LIT值。

LIT值的长度可以为0到4个字符。

建议 :将LIT值指定为 SYS1。

您可以通过输入 SSN,,ESMT 来省略LIT值。

ESMT
指定 Db2 初始化模块的名称, DSNMIN10。 此值为必需。

ESMT值必须为8个字符。

RTT
指定资源翻译表。 该值为可选项。

RTT的长度可以为0到8个字符。

REO
指定区域误差选项。 该选项用于确定在 Db2 不可用或计划不可用时该如何操作。 有以下三个选项:
  • 默认值R 将SQL返回代码返回给应用程序。 在这种情况下,最常见的SQLCODE是-923(SQLSTATE '57015')。
  • Q 表示批处理环境中的结束;然而,在联机环境中,该值会将输入信息再次放入队列中。
  • 在批处理环境和在线环境中均能获得相同的结果

如果应用程序使用XRST调用,且XRST调用需要协调恢复,则REO将被忽略。 在这种情况下,如果 Db2 无法使用,应用程序将异常终止。

REO值的长度可以为0到1个字符。

CRC
指定命令识别字符。 由于DL/I批处理环境不支持 Db2 命令,因此目前不使用命令识别字符。

CRC值的长度可以为0到1个字符。

CONNECTION_NAME
代表协调 Db2 活动的职位名称。 该值为可选项。 如果您不指定此选项,连接名称的默认值如下:
应用程序类型
默认连接名称
批处理作业
作业名
已启动任务
开始任务名称
TSO用户
TSO授权ID

如果批处理更新作业失败,您必须使用单独的作业来重新启动批处理作业。 重启任务中使用的连接名称必须与失败批处理任务中使用的名称相同。 或者,如果使用默认连接名称,重启作业的名称必须与失败的批处理更新作业的名称相同。

Db2 需要唯一的连接名称。 如果两个应用程序试图使用相同的连接名称进行连接,第二个应用程序将无法连接到 Db2

CONNECTION_NAME 值的长度可以为1到8个字符。

PLAN
指定 Db2 计划名称。 该值为可选项。 如果您没有指定计划名称,应用程序模块名称将根据可选的资源翻译表进行核对。 如果资源翻译表中有匹配项,则使用翻译后的名称作为 Db2 计划名称。 如果资源翻译表中不存在匹配项,则使用应用程序模块名称作为计划名称。

PLAN值的长度可以为0到8个字符。

PROG
指定应用程序名称。 此值为必需。 它识别将要加载并接收控制的应用程序。

PROG值的长度可以为1到8个字符。

示例 :记录中的字段示例如下:
DSN,SYS1,DSNMIN10,,R,-,BATCH001,DB2PLAN,PROGA

Db2 DL/I 批量输出:

在在线 IMS 环境中, Db2 会向主终端操作员(MTO) 发送未经请求的状态消息,并将处理和诊断信息记录在 IMS 日志中。 在批处理环境中, Db2 将此信息发送到 DDOTV02 DD语句中指定的输出数据集。 确保输出数据集具有 RECFM=V 或 VB、 LRECL=4092 的 DCB 选项,且 BLKSIZE 至少为 LRECL + 4。 如果DD语句缺失, Db2 会发送消息 IEC130I ,并继续处理,不输出任何结果。

您可能需要保存并打印数据集,因为这些信息对于诊断很有用。 您可以使用 IMS 模块 DFSERA10 ,以十六进制和字符格式打印可变长度的数据集记录。