输入的差异
缺少字段结构对输入操作的影响大于对输出操作的影响,因为 BMS 的许多功能取决于仅按字段读取已修改的那些字段的能力。 如果硬件未提供输入字段及其在屏幕上的位置,那么您必须提供等效信息。
您可以通过两种方法中的任意一种来执行此操作。 首先是在映射定义的 FLDSEP 选项中定义一个长度为 1 到 4 个字符的字段分隔符序列。 将此序列放在输入的每个字段之间,并按输入字段在屏幕或页面上的显示顺序提供这些输入字段。 您必须提供屏幕上的每个字段,直至包含任何数据的最后一个字段。 如果字段中没有输入,那么它只能由终止字段分隔符序列组成。 在硬拷贝设备上,由于纸张移动,输入无法覆盖输出。 在仿真此类终端的显示器上,通常使用相同的技术。 输入字段在为此目的保留的区域中按顺序由字段分隔符序列分隔。
第二种方法是在输入中包含控制字符。 如果从映射中省略 FLDSEP 选项,那么 BMS 将使用控制字符来计算数据在 "页面" 上的位置,并相应地对其进行映射。 BMS 识别的控制字符为:
当您使用 RECEIVE MAP 命令读取此类数据时,与真正的 3270 输入存在一些差异:
| NL | 换行 | X'15' |
| IRS | 交换记录分隔符 | X'1E' |
| LF | 换行 | X'25 ' |
| FF | 换页,进纸 | X'0C' |
| HT | 水平选项卡 | X'05' |
| VT | 垂直选项卡 | X'0B' |
| CR | 回车 | X'0D' |
| RET | 在 TWX 上返回 | X'26 ' |
| ETB | 结束文本块 | X'26 ' |
| ESC | 转义, 2780 | X'27 ' |
- 未设置标志字节 (F 子字段); 它包含空值。 您无法确定操作员是否擦除了该字段或光标是否保留在该字段中。
- 不能在输出上预设修改后的数据标记,以确保在输入时返回字段。