IMS 连接
IMS Connect 编程模型通过 TCP/IP 提供对信息管理系统 (IMS) 事务的访问。 此模型使用 IMS 消息队列来处理数据。
下图汇总了客户端、默认 IMS 侦听器、并发服务器和大型机事务程序之间发生的工作流。 括号中的数字指示事件发生的大致顺序。 数字后跟对事件的更详细的描述。
在此过程中,客户端将输入数据传递到 ITOC 侦听器,HWSIMSO0 提供对 IMS 程序的访问,然后 IMS 程序将响应数据传递给客户端
IMS Connect 编程模型的汇总工作流关系图
IMS Connect 编程模型的工作方式如下:
应用程序在组件服务或 .NET Framework 中配置的 TI 组件中调用方法。
TI 运行时调用 TI 自动化代理。
如果应用程序是 .NET Framework 程序集,则 TI 自动化代理将:
读取以前由 TI 设计器创建的程序集和元数据。
将 .NET 数据类型映射到 COBOL 数据类型。
然后,TI 自动化代理将:
调用转换例程,将应用程序数据转换为大型机 COBOL 类型。
生成表示 COBOL 声明或 copybook 的平展数据流缓冲区。
将消息传递给 TCP 传输组件。
TI 运行时使用大型机计算机的 Internet 协议 (IP) 地址和存储在 IBM 提供的 TCP/IP 配置文件数据集 (hlq.PROFILE.TCPIP) 中的 IMS Connect 的端口地址,将初始请求消息 (IRM) 发送到 IMS Connect(HWSIMSO0 或 HWSIMSO1)。
HWSIMSO0 和 HWSIMSO1 是 IBM 提供的主机 Web 服务器 (HWS) 退出例程,用于定义 TI 自动化服务器(TI .NET Framework 应用程序)与 ITOC 之间的请求和回复协议。 HWS 在独立于 IMS 区域的 z/OS 地址空间中运行,并为 IMS 连接执行侦听器服务。
IMS Connect 退出例程控制 IMS 应用程序(称为 IMS TCP/IP 开放事务管理体系结构 (OTMA) 连接 (ITOC))。
TI 运行时环境将 ITOC 请求头发送到 ITOC 和 HWSIMSO0。
HWSIMSO0 退出例程:
验证 ITOC 请求头
从 TI 运行时环境接收所有请求数据
与安全例程通信
驱动 OTMA 过程以连接到 IMS 数据存储
通过 OTMA 将消息段置于 IMS 消息队列并从中检索消息段
将所有回复数据段发送到 TI 运行时环境
控制 IMS 中的恢复操作
ITOC 读取 ITOC 标头信息,查找正确的 IMS 区域,并计划该 IMS 区域 IMS 事务的执行。 ITOC 标头必须包含以下信息:
ITOC HWS 退出例程标识符 (默认“*IRMREQ*”)
IMS 数据存储标识符
事务标识符
流控制信息
IBM 的资源访问控制设施 (RACF) 安全凭据
协议控制标志
HWSIMSO0 计划正确的 IMS 消息队列
TI 运行时将请求数据段发送到 ITOC
TI 运行时发送 EOM
IMS 控制区域将消息发送到消息处理区域 (MPR)
将所有请求数据置于 IMS 消息队列中后,将计划执行事务
IMS 服务器应用程序使用标准的 CBLTDLI Get Unique (GU)、Get Next (GN) 和 Insert (INSRT) 调用接口命令来检索请求数据,并将回复数据放置在 IMS 消息队列中。
MPR 向 TI 返回数据。 ITOC 发送 EOM-CSMOKY ITOC 将以下信息返回到 TI 运行时环境:
请求 mod 消息
回复数据段
消息尾段
CSMOKY 段
然后,ITOC 和 ITOC 退出例程将从消息队列中删除回复数据,并将其发送回 TI 运行时环境。
TI 自动化代理接收回复数据并处理回复。 TI 自动化代理将:
接收来自 TCP 传输组件的消息。
读取消息缓冲区
如果应用程序是 .NET Framework 程序集,则 TI 自动化代理会:
将 COBOL 数据类型映射到 .NET Framework 数据类型
调用转换例程,将 COBOL 数据类型转换为应用程序数据
TI 运行时将转换后的数据发送回调用方法的 .NET Framework 应用程序。
有关为 TCP/IP 配置大型机和编写服务器应用程序的信息,请参阅适用于 z/OS 的 TCP/IP V3R2:IMS TCP/IP 应用程序开发人员指南 (IBM 文档 #SC31-7186) 和 IMS Connect 指南和参考 V1R2 (IBM 文档 #SC27-0946) 。
Host Integration Server 包含演示如何实现 IMS Connect 编程模型的示例代码。 示例代码位于 \install directory\SDK\Samples\AppInt。 启动 Visual Studio,打开要使用的教程,并按照“自述文件”中的说明进行操作。
另请参阅
事务集成器组件
将数据类型从自动化转换为 z/OS COBOL]
将数据类型从 z/OS COBOL 转换为自动化
IMS 组件
TI 运行时
选择适当的编程模型
编程模型