DFHTPR (终端页面检索程序)
终端页面检索程序 (DFHTPR) 处理由 BMS 构建并放置在临时存储器中的消息。
图 1 显示了页面检索组件之间的关系。图 1。 页面检索程序接口
- DFHTPR 可以作为独立事务 (CSPG) 启动,也可以由用户定义的调页命令 (例如, P/ 或 3270 PA/PF 键) 启动,或者从 BMS 会话式操作 (带有 CTRL=RETAIN 或 RELEASE 的 SEND PAGE 请求) 链接到。DFHTPR 执行以下功能:
- 显示路由消息的第一页
- 在指定了带有 CTRL=AUTOPAGE 的 SEND PAGE 请求的终端上显示消息的后续页面
- 处理来自终端的页面调度命令
- 在终端输入 CSPG 事务时处理该事务
- 如果终端处于显示状态并且在终端上输入了除寻呼命令以外的其他命令,那么清除在终端上显示的消息。
- 如果在 BMS 请求中指定了 CTRL=RETAIN ,那么将从 BMS 映射控制程序 (DFHMCP) 输入 DFHTPR 以显示源自终端的消息的第一页。 DFHTPR 从终端读取并处理调页命令,直到输入非调页命令为止。
- DFHTPR 使用存储器控制来:
- 获取和释放消息控制块 (MCB)
- 可用消息控制记录 (MCR) 存储器
- 获取要发送到目标终端和主终端的信息和错误消息的存储器
- 释放从 AID 链中取出的自动启动描述符 (AID)
- 为响应在终端处输入的 COPY 命令而构造的路由列表获取和释放存储器
- 获取 TIOA ,在执行 COPY 功能时将独立于设备的页面放入该 TIOA 中。
- 临时存储器控制用于检索和替换 MCR 以及检索和清除页面。
- 基本映射支持用于在请求终端上显示错误和信息消息,并在 COPY 函数中向目标终端发送页面。
- 任务控制用于在更新 MCR 时保留其独占控制。
- 当尝试检索 MCR 时返回临时存储器标识错误时, DFHTPR 在错误处理期间与时间间隔控制通信。 最多执行四次重试 (每次由一秒等待,然后再尝试读取 MCR)。 (错误可能是由于由于另一个任务正在更新 MCR 而临时释放该 MCR。 如果是这样,那么情境可能自行更正,并且重试成功。)
- 当指定了带有 CTRL=RETAIN 的 SEND PAGE 请求时,终端控制用于在向终端发送页面或信息消息之后在终端输入的下一部分中读取。
- 瞬时数据控制用于向主终端发送错误或信息消息。
- 发出终端输出宏 (DFHTOM) 以提供一个打开子例程,该子例程将已完成的页面输出到终端。