打印机文件设计和翻译
程序描述的打印机文件和外部描述的打印机文件是两种类型的打印机文件。 设计要转换为本地语言版本的打印机文件时,应遵循一些特定准则。
- 程序描述的打印机文件
程序描述的文件依赖于高级语言程序来定义要打印的记录和字段。
- 外部描述的打印机文件
外部描述的打印机文件使用 DDS 而不是高级语言来定义要打印的记录和字段。
下图显示了如何使用外部描述的打印机文件为不同的本地语言版本创建报告。

打印机文件转换
设计要转换为本地语言版本的打印机文件时,请考虑以下准则:
- 使用外部描述的打印机文件来定义要打印的记录和字段。 避免使用程序描述的打印机文件。 在高级语言程序中描述了程序描述的打印机文件。 尝试翻译嵌入在程序中的文本的转换程序可能会错误地翻译程序中的文字。
- 在支持相应字符集和代码页的设备上打印一个国家图形字符集中的数据。 并非所有打印机都支持所有 CHRID 参数。
- 使用 MSGCON 关键字来访问消息文件中描述的常量文本。 打印机文件没有 MSGID 关键字。 但是,直接编码为未命名输出字段 (字面值) 并将文本存储在数据库文件中的技术可用于指定打印机文件中的常量文本。
- 在打印机文件中描述条形码时,请考虑文化约定。 不同国家对条码有不同的标准。
- 当输入数据时,在 "创建打印机文件" (CRTPRTF) 命令上考虑这些参数。
- PAGESIZE (页大小)
不同的国家有不同的页面大小标准。
- OVRFLW (溢出行号)
溢出行号必须小于或等于页面长度。
- CHRID (字符集和代码页)
如果打印机文件的 CHRID 参数设置为 *DEVD ,那么打印机使用在控制面板上设置的或在设备描述中指定的字符标识。
如果打印机文件的 CHRID 参数设置为特定值,那么此值确定用于打印数据的代码页和字符集。 对于外部描述的打印机文件, CHRID 参数仅用于同时指定了 CHRID DDS 关键字的字段。 对于所有其他字段,使用的代码页和字符集与指定的 *DEVD 相同。
如果打印机文件的 CHRID 参数设置为 *JOBCCSID ,那么来自外部描述的打印机文件的常量文本将转换为作业的 CCSID。 使用从作业 CCSID 获取的 CHRID 来标记打印机数据流,使用此 CHRID 值来打印数据。 当在 CHRID 参数上使用 *JOBCCSID 值时,将忽略 CHRID DDS 关键字。
注: 所有代码页和字符集都不能由所有打印机处理。
- PAGESIZE (页大小)