FETCH ANY

父任务使用 EXEC CICS FETCH ANY 命令来查询任何子任务的状态,并返回尚未访存的任何已完成子任务的状态。

语法

FETCH ANY

读取语法图跳过可视语法图FETCHANY( data-area)CHANNEL( data-area)COMPSTATUS( CVDA)ABCODE( data-area)NOSUSPENDTIMEOUT( data-value)

条件: INVREQ , NOTFND 和NOT成品

此命令是线程安全的。

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

描述

EXEC CICS FETCH ANY 由父任务用于查询任何子任务的状态。 当任何符合条件的子任务完成时,或者当没有任何未访存的子任务剩余时, FETCH ANY 将返回。

选项

ABCODE (数据区)
如果子任务异常终止,那么返回 4 字符异常终止代码。 如果未发生异常终止,那么该变量将设置为空白。
ANY (数据区)
指定 16 个字符的二进制数据区, CICS®® 将在其中放置访存的子令牌。 这将与 EXEC CICS RUN TRANSID 命令返回的令牌匹配。

CICS® 将仅返回尚未访存的子任务的令牌。

CHANNEL (数据区)
返回由 CHILD 标识的子任务的应答通道的 16 个字符的名称。 该名称由 CICS 生成,并且在当前链接级别的作用域内是唯一的。 如果子任务没有返回响应的通道,那么此字段将包含空白。

子通道只能访存一次,并且访存的通道将保留在作用域中,直到链接级别发生更改为止。 有关通道作用域的更多信息,请参阅 通道作用域

COMPSTATUS (cvda)
返回一个 CVDA 值,指示子任务的完成状态。 CVDA 值包括:
ABEND
子任务异常终止。
NORMAL
子任务正常完成。
SECERROR
由于安全错误,子任务未能连接。 ABCODE 为空。
无暂挂
指定命令将立即返回,而不等待任何剩余的子任务完成。 如果至少一个未访存的子代已完成,那么该命令将返回正常响应。
超时 (data-value)
指定全字二进制数据值,该值是命令在返回之前将等待任何剩余子任务完成的最大时间 (以毫秒计)。 最大值为 40800000 毫秒。 如果未指定 TIMEOUT ,或者指定的值为零,那么命令不会超时。

条件

113 未完成
RESP2 值:
52
指定了 NOSUSPEND ,但运行该命令时没有要访存的已完成子代。
53
TIMEOUT 选项指定的时间间隔内未完成任何子代。
13 NOTFND
RESP2 值:
1
找不到未访存的子代。
16 INVREQ
RESP2 值:
52
父代没有子代。
241
TIMEOUT 值无效。