EXEC CICS LINK 命令 (EXCI)
从 z/OS® 客户机程序链接到服务器 CICS® 区域中的指定服务器程序。
格式
错误条件: CCSIDERR , CHANNELERR , CODEPAGEERR , CONTAINERERR , ENGERR , LINKERR , NOTAUTH , PGMIDERR , RESUNAVAIL , ROLLEDBACK , SYSIDERR , TERMERR 和 WARNING
备注
除 APPLID 和 RETCODE 参数外, EXEC CICS LINK 命令的外部 CICS 接口参数与 CICS-CICS DPL 命令的接口参数相同。
此信息仅描述可用于外部 CICS 接口的参数。 有关 EXEC CICS LINK PROGRAM 命令的编程信息,请参阅 LINK。
请注意, LENGTH 和 DATALENGTH 参数指定半字二进制值,与 EXCI CALL 接口的相应 COMMAREA_len 和 data_len 参数指定全字值不同。
外部 CICS 接口 EXEC CICS LINK 命令始终使用通用连接。
参数
- APPLID ( name )
- 指定目标 CICS 服务器区域的 APPLID。
虽然外部 CICS 接口命令需要 applid ,但此参数在 LINK 命令本身是可选的,因为您还可以在用户可替换模块 DFHXCURM 中指定该参数。 如果从 LINK 命令中省略通用 APPLID ,那么必须确保由用户可替换模块 DFHXCURM 在 URMCICS 参数上指定该标识。 您还可以使用 DFHXCURM 中的 URMCICS 参数来覆盖在 LINK 命令上指定的 applid。 请参阅 EXCI 用户可更换模块 ,以获取有关 URMCICS 参数的信息。
- CHANNEL ( 名称 )
- 指定要提供给被调用程序的通道的名称 (1-16 个字符)。 可接受的字符为 A - Z a - z 0 - 9 $ @ # / % &?!:| " = ¬,; < >. - 和 _。不允许使用前导字符和内嵌空白字符。 如果提供的名称少于 16 个字符,那么将使用最多 16 个字符的尾部空格来填充该名称。 如果该通道不存在,那么将创建该通道。 由于 EXCI 客户机只有一个 LINK 级别,因此此通道仍在作用域内。 有关通道作用域的更多信息,请参阅 通道作用域。
通道名称始终采用 EBCDIC。 前面列出的通道名称所允许的字符集包含在所有 EBCDIC 代码页中不具有相同表示法的一些字符。 因此,如果要在不同地区之间运输通道,最好将通道名称的字符限制为 A-Z a-z 0-9 & : =,; < >.- 和 _。
可以指定通道名称 DFHTRANSACTION 以使用事务通道。 在 CICS中,当链路级别发生更改时,事务通道不会超出作用域: 它在事务中始终可访问。 有关更多信息,请参阅 通道和容器。
发出 LINK 命令的程序可以在命令上指定通道的名称。 指定的通道可能已存在,由程序使用一个或多个 PUT CONTAINER 命令创建。 或者,程序可以指定当前不存在的通道的名称,在这种情况下将创建新的空通道。
- COMMAREA ( data-area )
- 指定要提供给所调用程序的通信区域。 在此选项中,将传递指向数据区的指针。
请参阅 将数据传递到其他程序 ,以获取有关将数据传递到 CICS 应用程序的更多信息。
- DATALENGTH ( data-value )
- 指定半字二进制值,该值是从 COMMAREA 开始的连续存储区域的长度。 如果 COMMAREA 中的数据量很小,但 COMMAREA 本身很大,请指定 DATALENGTH 以提高性能。
- LENGTH ( data-value )
- 指定半字二进制值,该值是 COMMAREA 的长度 (以字节为单位)。
如果要在任何两个 CICS 服务器之间传递 COMMAREA (对于产品/版本/发行版的任何组合) ,那么此值不应超过 24 KB ,否则,如果您确信将不会在进一步的 LINK 请求中传递 COMMAREA ,那么可以使用最大长度为 32763 的 COMMAREA。
- 程序 ( name )
- 指定要向其无条件传递控制权的 CICS 服务器应用程序的程序名 (1-8 个字符)。 指定的名称必须已定义为 CICS 的程序,或者 CICS 服务器区域必须能够自动安装指定程序的定义。请注意使用引号:
EXEC CICS LINK PROGRAM('PROGX')PROGX 在引号中,因为它是程序名。EXEC CICS LINK PROGRAM(DAREA)DAREA 未包含在引号中,因为它是包含 8 字符程序名的数据区的名称。
- RETCODE ( data-area )
- 指定外部 CICS 接口将返回码信息放入的 20 字节区域。 此区域格式化为五个 1–word 字段,如下所示:
- RESP
- 指示外部 CICS 接口 LINK 命令在执行期间是否导致异常情况的主响应代码。
- RESP2
- 辅助响应代码,必要时进一步限定 RESP 参数中提出的某些条件。
- ABCODE
- 如果服务器程序在服务器区域中异常终止,那么包含有效的 CICS 异常终止代码。
- MSGLEN
- 指示执行服务器程序期间 CICS 服务器区域发出的消息 (如果有) 的长度。 请注意,该长度仅是消息文本的实际长度,并且不包含此 1—word 长度字段。
- MSGPTR
- 这是 CICS 服务器区域返回的消息文本的地址。
注: MSGLEN 和 MSGPTR 仅在具有 RESP2 值 414 的 LINKERR 条件下有效。 - SYNCONRETURN
- 指定在 APPLID 参数上指定的 CICS 服务器区域将在服务器程序成功完成时采用同步点。
- TRANSID ( 名称 )
- 指定远程区域要连接的镜像事务的名称,并在该镜像事务下运行服务器程序。 如果省略 TRANSID 选项,那么 CICS 服务器区域将连接 CSMI。注: LINK 命令上指定的 TRANSID 选项将覆盖安装在 CICS 服务器区域中的程序资源定义上指定的任何 TRANSID 选项。
虽然您可以为 DPL 请求启动的镜像事务指定自己的名称,但事务 必须 在服务器区域中定义,并且事务定义必须指定镜像程序 DFHMIRS。 通过定义您自己的事务以调用镜像程序,您可以自由地为事务资源定义上的某些其他选项指定相应的值。
另请参阅 DPL_Request 中有关用 DPL_Request 指定 transid 的重要规则。.
错误代码
- LENGERR
- 22
- PGMIDERR
- 27
- SYSIDERR
- 53
- NOTAUTH
- 70
- TERMERR
- 81
- ROLLEDBACK
- 82
- CONTAINERERR
- 110
- 重新可用
- 121
- CHANNELERR
- 122
- CCSIDERR
- 123
- 代码页
- 125
这些异常条件代码在 RESP 字段中返回。
- 错误条件 LENGERR 上的 RESP2 值特定于外部 CICS 接口。
- 异常条件 WARNING 和 LINKERR 特定于外部 CICS 接口。
- 警告 (RESP 值 4)
- 当处理 EXEC CICS LINK 请求的 EXCI 模块接收到对代表 EXEC CICS LINK 命令发出的 Close_Pipe 或 Deallocate_Pipe 请求的 USER_ERROR 或 SYSTEM_ERROR 响应时,将返回此消息。 RESP 值设置为 WARNING ,因为针对 CICS 的 DPL 请求已成功完成,但在后续处理中发生错误。
RESP2 字段设置为 EXCI 原因码,这将提供有关错误的更多信息。
- LINKERR (RESP 值 88)
- 当处理 EXEC CICS LINK 请求的 EXCI 模块接收到代表 EXEC CICS LINK 命令发出的 EXCI 调用的 RETRYABLE , USER_ERROR 或 SYSTEM_ERROR 响应时,将返回此消息。 DPL 请求失败。 RESP2 字段设置为 EXCI 原因码,这将提供有关错误的更多信息。
请参阅 EXCI 调用时返回的响应和原因码 ,以获取 EXCI 原因码的描述。
