时间间隔控制 EXEC 接口程序出口(XICEREQ、XICERES 和 XICEREQC)
当与时间间隔控制程序进行交互时,将调用这些出口。
- XICEREQ
- 在 CICS® 处理时间间隔控制请求之前,将在进入时间间隔控制程序时调用 XICEREQ。 通过使用 XICEREQ ,您可以:
- 分析请求以确定其类型,指定的关键字及其值。
- 在执行命令之前修改请求指定的任何值。
- 设置返回码以指定:
- CICS 应继续处理已修改或未修改的请求。
- CICS 应绕过请求。 (请注意,如果设置此返回码,那么还必须设置 EXEC 接口块 (EIB) 的返回码,就像您自己处理了请求一样。)
注: XICEREQ 出口由 CICS 代码发出的内部请求以及应用程序发出的请求调用。 - 第 XICERES 条
- 在 CICS 处理已动态路由到此区域的非终端相关 EXEC CICS START 请求之前,时间间隔控制程序将调用 XICERES。请注意,将调用 XICERES:
- 在出口 XICEREQ 之后和 XICEREQC 之前 (如果启用了这些出口)。 这意味着:
- 如果 XICEREQ 出口程序选择绕过请求,那么不会调用 XICERES ,即使它已启用也是如此。
- 如果 XICEREQ 出口程序修改请求,那么 XICERES 必须处理修改后的请求。
- 在 目标 区域上-即, START 请求已路由到的区域。
- 仅当路由区域 (运行路由程序的区域) 支持 "资源不可用" 条件 (RESUNAVAIL) 时。 要支持 "资源不可用" 条件,路由区域必须是受支持的 CICS TS 发行版。
- 仅当已启用时。 强烈建议您仅在非终端相关 EXEC CICS START 请求可动态路由到的应用程序拥有区域中启用此出口。
- 通过 CICS 代码发出的内部请求以及应用程序发出的请求。
未 调用 XICERES 出口:- 对于静态路由的请求。
- 对于与终端相关的 EXEC CICS START 请求。 (这些始终在终端拥有区域中执行,并且无法路由。)
- 对于动态路由的 事务 -仅动态路由 (非终端相关) START 请求会导致调用出口。 因此,由与终端相关的 EXEC CICS START 命令启动的动态路由事务不会导致调用出口。
- 如果已禁用。
- 如果 XICEREQ 出口程序选择绕过请求。
您可以使用 XICERES 来检查要启动的事务所需的所有资源在目标区域上都可用。 例如,如果事务已禁用,或者缺少必需的文件,那么出口程序可以使分布式路由程序有机会将请求路由到其他区域。 为此,请设置返回码 UERCRESU。 这将导致 CICS :- 将分布式路由程序的通信区域的 DYRERROR 字段设置为 "F"-资源不可用。
- 在路由区域上因路由选择失败而重新调用路由程序。
- 在目标区域上的镜像执行的 EXEC CICS START 命令上返回 RESUNAVAIL 条件。 (此条件不会返回到应用程序。)
CICS 将忽略出口程序对任何出口参数的值所作的任何更改。 出口程序可以设置返回码,但不能更改任何参数。
有关动态路由与非终端相关的 EXEC CICS START 请求的指导信息,请参阅 与非终端相关的 START 命令。 有关编写分布式路由程序以路由非终端相关的 EXEC CICS START 请求的信息,请参阅 路由非终端相关的 START 请求。
- 在出口 XICEREQ 之后和 XICEREQC 之前 (如果启用了这些出口)。 这意味着:
- XICEREQC
- 在时间间隔控制程序请求完成后调用 XICEREQC。 通过使用 XICEREQC ,您可以:
- 分析请求以确定其类型,指定的关键字及其值。
- 设置 EIB 的返回码。 检查返回码时,请参阅 EIBRCODE 值。
注: XICEREQC 出口由 CICS 代码发出的内部请求以及应用程序发出的请求调用。