RECEIVE (3600-3614)

从 3600 (3614) 逻辑单元接收数据。

语法

RECEIVE (3600-3614)

读取语法图跳过可视语法图RECEIVEINTO( data-area)SET( ptr-引用)LENGTH( data-area)FLENGTH( data-area)MAXLENGTH( data-value)MAXFLENGTH( data-value)NOTRUNCATE

条件: INVREQ , LENGERR 和 TERMERR

NOHANDLERESPRESP2是常用选项,可添加到所有 EXEC CICS 命令中以处理错误条件。 命令语法图和选项说明中没有明确包含这些选项。 有关这些常用选项和 EXEC CICS 命令语法的信息,请参阅 EXEC CICS 命令格式和编程注意事项.

描述

RECEIVE 从终端接收数据。

CICS® 应用程序与 3614 之间使用的数据流和通信格式由 3614 确定。 因此,在处理 3614 通信时,应用程序依赖于设备。

有关为 CICS设计 3614 应用程序的更多信息,请参阅 IBM® 4700/3600/3630 指南

如果要接收数据,那么必须指定 INTO 或 SET 选项。 如果发出 RECEIVE 纯粹是为了检测注意标识 (AID) ,那么可以同时省略 INTO 和 SET 选项。

选项

FLENGTH (数据区)
LENGTH 的替代方法。 出于体系结构原因,对于所有与终端相关的 RECEIVE 命令,此选项限制为最大 32K 。
INTO (data-area)
指定从逻辑单元或终端读取的数据的接收字段,或从连接到当前会话的另一端的应用程序接收数据的应用程序目标数据区。
LENGTH (数据区)
指定接收到的数据的长度 (作为半字二进制值)。

如果指定 INTO 选项,但省略 MAXLENGTH 选项,那么自变量必须是指定程序接受的最大长度的数据区。 如果指定的值小于零,那么假定为零。

如果指定 SET 选项,那么自变量必须是数据区。 当接收到数据时,数据区将设置为数据的长度。

MAXFLENGTH (data-value)
替代 MAXLENGTH 的全字。
MAXLENGTH (data-value)
指定 CICS 要恢复的最大数据量 (半字二进制值)。 如果指定了 INTO ,那么 MAXLENGTH 将覆盖使用 LENGTH 作为 CICS的输入。 如果指定了 SET ,那么 MAXLENGTH 为程序提供了一种方法来限制它一次接收的数据量。

如果数据长度超过指定的值,并且 NOTRUNCATE 选项不存在,那么会将数据截断为该值,并且会出现 LENGERR 条件。 LENGTH 选项中指定的数据区设置为数据的原始长度。

如果数据长度超过指定的值,并且存在 NOTRUNCATE 选项,那么 CICS 将保留其余数据并使用它来满足后续 RECEIVE 命令。 LENGTH 选项中指定的数据区设置为返回的数据长度。

如果省略此选项,那么将采用 LENGTH 选项中指示的值。

NOTRUNCATE
指定当可用数据超过所请求的长度时,将不废弃其余数据,而是保留这些数据以供后续 RECEIVE 命令检索。
SET (ptr-ref)
指定要设置为从逻辑单元或终端或伙伴事务中读取的数据的地址的指针引用。 在下一个接收命令或任务结束之前,指针引用有效。

如果 DATALOCATION (ANY) 与应用程序相关联,那么数据的地址可以高于或低于 16MB 行。

如果 DATALOCATION (BELOW) 与应用程序相关联,并且数据位于 $TAG1 16MB $TAG2 行上方,那么数据将复制到 $TAG3 16MB $TAG4 行下方,并返回此副本的地址。

如果为正在运行的任务指定了 TASKDATAKEY (USER) ,并且存储器保护处于活动状态,那么返回的数据在用户密钥中。 如果指定了 TASKDATAKEY (CICS) 并且存储器保护处于活动状态,那么返回的数据位于 CICS-key 中。

条件

16 INVREQ
RESP2 值:
200
分布式程序链接服务器应用程序在 CONVID 选项上指定了函数输送会话 (其主体设施)。
在下列任何情况下也会发生 (未设置RESP2 ):
  • 该命令用于未使用 EXEC CICS 接口或不是映射对话的 APPC 对话。

缺省操作: 异常终止任务。

22 LENGERR
当 CICS 废弃数据时发生,因为其长度超过程序接受的最大长度,并且未指定 NOTRUNCATE 选项。

缺省操作: 异常终止任务。

81 个 TERMERR

发生与会话相关或与终端相关的错误。 对该对话执行的除 FREE 以外的任何操作都将导致另一个 TERMERR 条件。

如果用户节点错误程序 (NEP) 的 CANCEL TASK 请求在节点异常条件程序处理会话错误时有未完成的终端控制请求处于活动状态,那么可能会导致此情况。

缺省操作: 异常终止任务,异常终止代码为 ATNI。