- CICS 教程
- CICS - 首页
- CICS - 概述
- CICS - 环境
- CICS - 基本术语
- CICS - 内核
- CICS - 事务
- CICS - COBOL 基础
- CICS - BMS
- CICS - MAP
- CICS - 接口块
- CICS - 伪代码编程
- CICS - 辅助键
- CICS - 文件处理
- CICS - 错误处理
- CICS - 控制操作
- CICS - 临时存储
- CICS - 互连通信
- CICS - 状态码
- CICS - 面试问题
- CICS 有用资源
- CICS - 快速指南
- CICS - 有用资源
- CICS - 讨论
CICS - 辅助键
正如我们在之前的模块中讨论的那样,AID 键被称为注意力识别键。CICS 只能检测 AID 键。在输入所有内容后,只有当用户按下其中一个 AID 键时,CICS 才会接管控制权。AID 键包括 ENTER、PF1 到 PF24、PA1 到 PA3 和 CLEAR。
验证 AID 键
用户按下的键通过使用 EIBAID 进行检查。
EIBAID 长度为一个字节,并保存 3270 输入流中使用的实际注意力识别值。
CICS 为我们提供了一组预编码的变量,这些变量可以通过编写以下语句在应用程序程序中使用:
COPY DFHAID
DFHAID
DFHAID 是一个用于在应用程序程序中包含 CICS 预编码变量集的复制文件。DFHAID 复制文件中包含以下内容:
01 DFHAID. 02 DFHNULL PIC X VALUE IS ' '. 02 DFHENTER PIC X VALUE IS ''''. 02 DFHCLEAR PIC X VALUE IS '_'. 02 DFHCLRP PIC X VALUE IS '¦'. 02 DFHPEN PIC X VALUE IS '='. 02 DFHOPID PIC X VALUE IS 'W'. 02 DFHMSRE PIC X VALUE IS 'X'. 02 DFHSTRF PIC X VALUE IS 'h'. 02 DFHTRIG PIC X VALUE IS '"'. 02 DFHPA1 PIC X VALUE IS '%'. 02 DFHPA2 PIC X VALUE IS '>'. 02 DFHPA3 PIC X VALUE IS ','. 02 DFHPF1 PIC X VALUE IS '1'. 02 DFHPF2 PIC X VALUE IS '2'. 02 DFHPF3 PIC X VALUE IS '3'. 02 DFHPF4 PIC X VALUE IS '4'. 02 DFHPF5 PIC X VALUE IS '5'. 02 DFHPF6 PIC X VALUE IS '6'. 02 DFHPF7 PIC X VALUE IS '7'. 02 DFHPF8 PIC X VALUE IS '8'. 02 DFHPF9 PIC X VALUE IS '9'. 02 DFHPF10 PIC X VALUE IS ':'. 02 DFHPF11 PIC X VALUE IS '#'. 02 DFHPF12 PIC X VALUE IS '@'. 02 DFHPF13 PIC X VALUE IS 'A'. 02 DFHPF14 PIC X VALUE IS 'B'. 02 DFHPF15 PIC X VALUE IS 'C'. 02 DFHPF16 PIC X VALUE IS 'D'. 02 DFHPF17 PIC X VALUE IS 'E'. 02 DFHPF18 PIC X VALUE IS 'F'. 02 DFHPF19 PIC X VALUE IS 'G'. 02 DFHPF20 PIC X VALUE IS 'H'. 02 DFHPF21 PIC X VALUE IS 'I'. 02 DFHPF22 PIC X VALUE IS '¢'. 02 DFHPF23 PIC X VALUE IS '.'. 02 DFHPF24 PIC X VALUE IS '<'.
示例
以下示例显示了如何在应用程序程序中使用 DFHAID 复制文件:
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. DATA DIVISION. WORKING-STORAGE SECTION. COPY DFHAID. PROCEDURE DIVISION. A000-AIDKEY-PARA. EVALUATE EIBAID WHEN DFHAID PERFORM A000-PROCES-PARA WHEN DFHPF1 PERFORM A001-HELP-PARA WHEN DFHPF3 PERFORM A001-EXIT-PARA END-EVALUATE.
光标定位
有两种方法可以覆盖映射定义中指定的定位。
一种方法是在发送映射命令的 CURSOR 选项中指定相对于行号和列号的屏幕位置。
另一种方法是将 -1 移动到以 L 为后缀的符号映射变量。然后,使用 SEND MAP 中的 CURSOR 选项发送映射。
示例
以下示例显示了如何覆盖 NAME 字段的光标位置:
MOVE -1 TO NAMEL EXEC CICS SEND MAP ('map-name') MAPSET ('name-field') ERASE FREEKB CURSOR END-EXEC.
动态修改属性
在发送映射时,如果我们希望某个字段具有与映射中指定的不同的属性,那么我们可以通过在程序中设置该字段来覆盖它。以下是覆盖字段属性的说明:
要覆盖字段的属性,我们必须在应用程序程序中包含 DFHATTR。它由 CICS 提供。
所需的属性可以从列表中选择,并移动到以 'A' 为后缀的符号字段变量。
DFHATTR 包含以下内容:
01 CICS-ATTRIBUTES. 05 ATTR-UXN PIC X(01) VALUE SPACE. 05 ATTR-UXMN PIC X(01) VALUE 'A'. 05 ATTR-UXNL PIC X(01) VALUE 'D'. 05 ATTR-UXMNL PIC X(01) VALUE 'E'. 05 ATTR-UXBL PIC X(01) VALUE 'H'. 05 ATTR-UXMBL PIC X(01) VALUE 'I'. 05 ATTR-UXD PIC X(01) VALUE '<'. 05 ATTR-UXMD PIC X(01) VALUE '('. 05 ATTR-U9N PIC X(01) VALUE '&'. 05 ATTR-U9MN PIC X(01) VALUE 'J'. 05 ATTR-U9NL PIC X(01) VALUE 'M'. 05 ATTR-U9MNL PIC X(01) VALUE 'N'. 05 ATTR-U9BL PIC X(01) VALUE 'Q'. 05 ATTR-U9MBL PIC X(01) VALUE 'R'. 05 ATTR-U9D PIC X(01) VALUE '*'. 05 ATTR-U9MD PIC X(01) VALUE ')'. 05 ATTR-PXN PIC X(01) VALUE '-'. 05 ATTR-PXMN PIC X(01) VALUE '/'. 05 ATTR-PXNL PIC X(01) VALUE 'U'. 05 ATTR-PXMNL PIC X(01) VALUE 'V'. 05 ATTR-PXBL PIC X(01) VALUE 'Y'. 05 ATTR-PXMBL PIC X(01) VALUE 'Z'. 05 ATTR-PXD PIC X(01) VALUE '%'. 05 ATTR-PSN PIC X(01) VALUE '0'. 05 ATTR-PSMN PIC X(01) VALUE '1'. 05 ATTR-PSNL PIC X(01) VALUE '4'. 05 ATTR-PSMNL PIC X(01) VALUE '5'. 05 ATTR-PSBL PIC X(01) VALUE '8'. 05 ATTR-PSMBL PIC X(01) VALUE '9'. 05 ATTR-PSD PIC X(01) VALUE '@'. 05 ATTR-PSMD PIC X(01) VALUE "'".
广告