DFHREST 通信区域

CICS®提供的缺省事务重新启动程序是用汇编程序编写的,包含用于执行以下操作的逻辑:
  • 对 CICS 传递给它的通信区域进行寻址
  • 决定是否请求事务重新启动
  • 如果请求重新启动,请向 CSMT 发送消息
  • 使用 EXEC CICS RETURN 命令向 CICS 返回控制。

通信区域由 XMRS_COMMAREA DSECT 映射,它包含在 DFHXMRSD 副本中。 C®、 COBOL 和 PL/I 的等效结构分别包含在副本 DFHXMRSH、DFHXMRSO 和 DFHXMRSP 中。

在通信区传递的信息如下:

XMRS_FUNCTION
在 1 字节字段中,指示此重新启动程序调用的函数代码。 这始终设置为 1 ,这等同于 XMRS_TRANSACTION_RESTART,这意味着将调用 DFHREST 来处理事务重新启动。
xmrs_component_code
在 2 字节字段中指示调用者的组件代码。 此值始终设置为 XM ,这等同于 XMRS_TRANSACTION_MANAGER。 事务管理器是 CICS 组件,用于协调是否重新启动事务的决策。
XMRS_READ
在 1 字节字段中,指示事务是否发出了除初始输入以外的任何终端读请求。
此参数的等同值为:
XMRS_READ_YES
表示事务已执行终端读取。
XMRS_READ_NO
表示未执行终端读取。
XMRS_WRITE
在 1 字节字段中,指示事务是否已发出任何终端写请求。
此参数的等同值为:
XMRS_WRITE_YES
表示事务已执行终端写操作。
XMRS_WRITE_NO
表示事务尚未执行终端写操作。
XMRS_同步点
在 1 字节字段中指示事务是否已执行任何同步点。
此参数的等同值为:
xmrs_syncpoint_yes
表示已执行一个或多个同步点。
xmrs_syncpoint_no
表示未执行任何同步点。
xmrs_restart_count
这指示作为无符号半字二进制值的事务已重新启动的次数。

如果尚未重新启动事务,那么为零。 它 不是 事务定义的重新启动总数。 相反,它是正在尝试 (例如) 处理单个操作程序输入的事务的重新启动总数。

xmrs_original_abend_code
提供事务记录的第一个异常终止代码。
xmrs_current_abend_code
提供当前异常终止代码。 例如,如果事务处理异常终止并在稍后异常终止,那么原始异常终止代码和当前异常终止代码的值可能不同。
XMRS_RESTART
这是事务重新启动程序设置的 1 字节输出字段,用于指示它是否希望 CICS 重新启动事务。
此字段的等同值为:
xmrs_restart_yes
请求重新启动。
xmrs_restart_no
请求不重新启动。