CICS LU6.2 链接
CICS LU 6.2 链接编程模型是一种可用于实现 TI 功能的最简单的模型。
下图汇总了客户端、默认 CICS 镜像事务和大型机事务程序之间进行的工作流。 括号中的数字指示事件发生的大致顺序。 数字后跟对事件的更详细的描述。
事务集成器使用 DPL 的信息从 CICS 镜像事务发送和接收参数
CICS LU6.2 链接编程模型的汇总工作流关系图
CICS LU6.2 链接编程模型的工作原理如下:
应用程序在 TI 中调用方法。
TI 运行时调用 TI 代理。
TI 代理执行以下操作:
读取以前由 TI 设计器创建的程序集和元数据。
将 .NET Framework 数据类型映射到 COBOL 数据类型。
然后,TI 代理将:
调用转换例程,将应用程序数据转换为大型机 COBOL 类型。
生成表示 COBOL 声明或 copybook 的平展数据流缓冲区。
将消息传递给 SNA 传输组件。
TI 使用 DPL 信息和 LU 6.2 协议将 TI 组件方法指定的 TP 名称 CSMI 请求发送到 CICS 镜像事务。 (IBM 在 TI 先决条件系统上为 CSMI 提供 CICS。)
CICS 镜像事务是一种特殊的 CICS TP,充当在不同 CICS 区域运行的 TP 之间的网关,从而允许它们通过 COMMAREA 交换数据。 TI 利用 CICS TP 之间的这种标准通信方法访问大型机 TP。 CSMI 处理通信上所需的所有 APPC 和事务属性。 此 TP 的 TRANID 为 CSMI。
分布式程序联接 (DPL) 是使用 CSMI 通信时使用的协议。 TI 使用 DPL 与 CSMI 通信。
CICS 镜像事务 (CSMI) 拥有控制权,向 CICS 中请求的服务器 TP 发出 EXEC CICS Link 命令。 (此程序的名称可以将远程环境 RE 与 TI 设计中的方法名称相关联。)
CICS 镜像事务将包含输入字段的 COMMAREA 传递给服务器 TP。
COMMAREA 是一个最多 32 KB 的通信区域,包含传入和传入大型机程序的所有数据。 许多用 COBOL 编写的 CICS TP 都使用这一区域的大型机事务代码来交换数据。 使用 CICS LU6.2 链接编程模型,TI 在大型机 TP 中显示为通过 COMMAREA 交换数据的另一个 CICS TP。
服务器 TP 是 TI 代表客户端应用程序调用的 TP。 它包含正在执行的业务逻辑,由客户端应用程序的方法调用中的 TRANID 标识。
注意
术语“服务器 TP”用于标识 TI 正在访问的 TP。 此说明是必需的,因为访问大型机应用程序可能且通常涉及许多 TP。
服务器 TP 完成处理后,它将发出 EXEC CICS RETURN 命令,该命令将 COMMAREA 中的数据返回到 CICS 镜像事务,并更新所有输出字段。
CICS 镜像事务将输出数据(如果需要)返回到 TI。
TI 代理接收回复数据并处理回复。 TI 自动化代理将:
接收来自 SNA 传输组件的消息。
读取消息缓冲区
TI 自动化代理将:
将 COBOL 数据类型映射到 .NET Framework 数据类型
调用转换例程,将大型机 COBOL 类型转换为应用程序数据
TI 运行时将转换后的数据发送回调用方法的 COM 或 .NET Framework 应用程序。
CICS 链接仅支持流模型,因此此类 TP 不支持未绑定的记录集。 支持固定大小的记录集(即绑定的记录集)。
CSMI 还处理与 TI 的任何同步级别 2 交互,从而以透明方式为此类中的程序提供 2PC 功能。
现有的 CICS 程序可能已经以这种方式进行结构化。 其他 CICS TP 可能已经发出了 EXEC CICS 链接来运行上图中所示的 CICS 程序,而不是发出 LU 6.2 请求。 在这种情况下,现有的 CICS TP 和 TI 组件可以共存并运行相同的 CICS 程序。
注意
CSMI 是默认的镜像事务名称,但您可以指定其他名称。
Host Integration Server 包含演示如何实现 CICS LU6.2 Link 编程模型的示例代码。 该示例代码位于 \安装目录\SDK\Samples\AppInt。 启动 Microsoft Visual Studio,打开所需的教程,并按照“自述文件”中的说明进行操作。
另请参阅
事务集成器组件
将数据类型从自动化转换为 z/OS COBOL]
将数据类型从 z/OS COBOL 转换为自动化
CICS 组件
TI 运行时
选择适当的编程模型
编程模型