Non-3270 CICS 打印机
non-3270 打印机 是不接受 3270 数据流 (例如 SNA 字符集 (SCS) 打印机) 的任何打印机。 non-3270 打印机可以是 3270 系列设备,许多设备 (例如 3287 和 3262) 可以是 3270 打印机或 SCS (non-3270) 打印机,具体取决于它们在控制单元上的定义方式。
Non-3270 打印机没有页缓冲区,因此不了解缓冲区控制顺序。 格式化完全通过打印控制命令完成。 为了与 3270 打印机兼容, BMS 通过在内存中构造一个页面的图像来对它们进行格式化,并且始终一次打印一个完整的页面。 但是,您可以定义任何大小的页面,前提是不超过平台宽度,因为不涉及硬件缓冲区。 与使用 NLEOM 选项的 3270 打印机一样, BMS 传输的次数也是打印页面所需的次数。
具有空白和 NL (换行) 字符的这些打印机的 BMS 格式。 如果终端的定义指示表单订阅源支持,那么它也会使用表单订阅源 (FF) 字符。
如果终端定义具有视野格式选项并且映射包含 HTAB 规范,那么 BMS 还使用水平选项卡进行格式化。 同样,如果终端定义指定 VERTICALFORM 并且映射包含 VTAB ,那么它将使用垂直制表符。 制表符可以大大缩短数据流。 如果使用制表符,那么 BMS 假定当前任务或较早的任务已在打印机上设置制表符。 在 SCS 打印机上,使用终端控制 SEND 命令设置选项卡,如 IBM 3270 数据流程序员参考 中所述。 对于其他 non-3270 打印机,您应该查阅相应的设备指南。
对于 SCS 打印机的 SEND TEXT , BMS 无法识别输入数据流中除换行符 (X'15 ') 和设置属性 (X'28') 以外的任何 non-3270 控制代码。 假定所有其他字符都是显示字符。 尤其是,如果您尝试使用 BMS 下的透明度控制顺序 (X'35 ') ,那么数据流可能会受到影响。 此控制顺序通常会导致忽略跟在它后面的数据 (下一个字节包含要忽略的数据的长度)。 但是,由于 BMS 无法识别 X'35 ' 控制顺序,因此它会处理遵循透明度控制顺序的数据,就像它是数据流的正常部分一样。
如果无法正确处理此数据,那么 BMS 可能会将其从数据流中移除; 例如,如果在透明序列中迂到 X'28 ' 字符,那么会将其误认为是设置属性控制顺序,在这种情况下,会将其后面的两个字节误认为是属性描述,并且可能会将所有三个字节都从数据流中移除。 X'0C' 字符 (formfeed) 也可从数据流中除去。 如果要发送包含透明序列的数据流,其中包含 BMS 可能识别和更改的字符,那么建议的方法是使用终端控制 SEND 命令,而不是 BMS。