终端和逻辑单元的命令和选项
本节描述适用于终端和逻辑单元的命令和选项。
全字长度
Option Alternative
LENGTH FLENGTH
TOLENGTH TOFLENGTH
FROMLENGTH FROMFLENGTH
MAXLENGTH MAXFLENGTH
应用程序在终端控制命令上使用全字和半字选项时必须一致。 可以在任何长度关键字上指定为参数的最大值为 32 767。
从终端或逻辑单元读取 (RECEIVE)
RECEIVE 命令用于从终端或逻辑单元读取数据。 INTO 选项用于指定要将数据放入其中的区域。 或者,可以在 SET 选项中指定指针引用。 CICS® 获取足以存放数据的区域,并将指针引用设置为该数据的地址。
此区域的内容可供任务使用,直到下一个终端 I/O 命令为止。 但是,该区域不属于该任务,由 CICS 在处理下一个请求时发布。 因此,无法将此区域传递回 CICS 以进行进一步处理。
应用程序可以使用 MAXLENGTH 来指定程序接受的数据的最大长度。 如果在指定了 INTO 选项的 RECEIVE 命令上省略了 MAXLENGTH 选项,那么可以在 LENGTH 选项中指定程序接受的最大数据长度。 如果在指定了 SET 选项的 RECEIVE 命令上省略了 MAXLENGTH 选项,那么 CICS 将获取足够的存储空间来保存所有可用数据。
如果数据超过指定的最大长度,并且指定了 NOTRUNCATE 选项,那么剩余的数据将可用于满足后续 RECEIVE 命令。 如果未指定 NOTRUNCATE ,那么将截断数据并出现 LENGERR 条件。 在此事件中,如果指定了 LENGTH 选项,那么当接收到数据时,指定的数据区将设置为实际数据长度 (在发生截断之前)。 由终端启动的任务中的第一个 RECEIVE 命令不会发出终端控制读取,但会复制输入缓冲区,即使数据长度为零也是如此。 必须发出第二个 RECEIVE 命令以导致终端控制读取。
当系统初始化参数 PRINT 将 PA 键定义为打印键,并且该键被按下以响应 RECEIVE 命令时,它对应用程序没有影响。 当在键盘上发出另一个注意 (即,另一个 PA 键,任何一个 PF 键, ENTER 键或光笔) 时,满足 RECEIVE 命令并允许应用程序继续。
写入终端或逻辑单元 (SEND)
SND 命令用于将数据写入终端或逻辑单元。 选项 FROM 和 LENGTH 指定要从中获取数据的数据区以及数据的长度 (以字节计)。 对于由自动事务启动 (ATI) 启动的事务, SEND 命令应始终在事务中的第一个 RECEIVE 之前。
除非还指定了 SEND 命令的 WAIT 选项,否则将延迟传输与 SEND 命令关联的数据,直到发生后续事件 (例如同步点) 为止。 这种延迟传输通过允许数据流控制与数据一起传输来减少数据流。
当区域间通信 (IRC) 正在使用时,不会延迟传输以进行分布式事务处理。
同步事务的终端 I/O (WAIT TERMINAL)
此命令用于确保在执行多个终端或逻辑单元操作的任务中执行进一步处理之前,终端操作已完成。 或者,可以在 SEND 命令中指定 WAIT 选项。 (始终对 RECEIVE 命令执行等待。) 任一方法都可能导致任务的执行被暂挂。 如果需要暂挂,那么控制权将返回给 CICS。 当操作完成时,将恢复执行任务。
即使未在 SEND 命令中指定 WAIT 选项, EXEC 接口程序也会确保在发出后续 RECEIVE 或 SEND 命令之前完成该操作。
使用终端或逻辑单元 (CONVERSE) 进行转换
对于大多数终端或逻辑单元类型,可以使用会话式通信方式。 CONVERSE 命令用于此目的,意味着 3650 应用程序与主机处理器通信。 如果未指定此选项,那么 3650 应用程序无法与主机处理器通信。 通常,可以将 CONVERSE 命令视为 SEND 命令的组合,紧接着是 WAIT TERMINAL 命令,然后是 RECEIVE 命令。 但是,并非 SEND 和 RECEIVE 命令的所有选项都对 CONVERSE 命令有效; 在不同设备的语法描述中给出了特定规则。 TOLLENGTH 选项与 RECEIVE 命令的 LENGTH 选项等效, FROMLENGTH 选项与 SEND 命令的 LENGTH 选项等效。
发送异步中断 (ISSUE SIGNAL)
在处于接收方式的事务中,此命令用于向发送事务发出需要更改方式的信号。 该命令的执行在发送事务中执行的下一个 SEND 或 RECEIVE 命令上引发 SIGNAL 条件,先前为此条件执行的 HANDLE CONDITION 命令可用于操作请求或将其忽略。
断开交换线路的连接 (ISSUE DISCONNECT)
此命令用于在事务完成时中断终端与处理器之间的线路连接,或中断 SNA 逻辑单元 (LU) 之间的会话。 如果终端是缓冲设备,那么缓冲区中的数据将丢失。
当与 SNA LU 一起使用时, ISSUE DISCONNECT (直到任务完成后才生效) 会注销终端,释放 COMMAREA ,清除下一个 TRANID ,停止任何 BMS 页面调度,如果自动安装生效,那么会删除终端定义。