If you do not properly indicate that a file is a DBCS file, one of the following happens:
If the replace-unprintable-character option is selected, printer data management interprets shift-control characters as unprintable characters and replaces them with blanks. The double-byte data itself is interpreted as alphanumeric data, and the printer attempts to print it as such. The printed double-byte data does not make sense.
If the replace-unprintable-character option is not selected and the printer is an alphanumeric printer, the double-byte data, including the control characters, is sent as is to the printer. On most alphanumeric printers, the shift-control characters are not supported, and an error will occur at the printer.
If the replace-unprintable-character option is not selected and the printer is a DBCS printer, the double-byte data is printed with the exception of extended characters. Because the file was not indicated as a DBCS file, the system will not perform extended character processing. The extended characters are printed with the symbol for undefined double-byte characters.
If the display is an alphanumeric display, the double-byte data is interpreted as alphanumeric data. The shift-control characters appear as anks. The displayed double-byte data does not make sense.
If the display is a DBCS display, the double-byte data is displayed with the exception of extended characters. The system does not perform extended character processing on the data. Therefore, extended characters are displayed with the symbol for undefined double-byte characters.
In many cases, printer files are used by the system to produce data that will eventually be printed or displayed. In these cases, the data is first placed into a spooled file using one of the IBM-supplied printer files. The data is then taken from the spooled file and is displayed or printed based on the request of the user.
When the data involved contains double-byte characters, the printer file that is used to place the data into the spooled file must be capable of processing double-byte data. A printer file is capable of processing double-byte data when *YES is specified on the IGCDTA parameter for the file. In most cases, the system recognizes the occurrence of double-byte data and takes appropriate measures to ensure the printer file that is used is capable of processing double-byte data.
In some cases, however, the system cannot recognize the occurrence of double-byte data and may attempt to use a printer file that is not capable of processing double-byte data. If this occurs, the output at the display or printer may not be readable. This can happen when object descriptions containing double-byte characters are to be displayed or printed on an alphanumeric device.
To ensure that you receive correct results when you display or print double-byte characters, some recommendations should be followed. Action is required on your part if you have a single-byte national language installed as a secondary language. Printer files that are received as part of the DBCS version of a product are always capable of processing DBCS data.
The following recommended actions should be performed after the product or feature has been installed:
CHGPRTF FILE(*ALL/*ALL) IGCDTA(*YES)
After this command has been completed, all printer files in all libraries will be enabled for double-byte data. The change will be a permanent change.
Instead, use the library search capabilities of the system to control which printer files will be used for any particular job. When the potential exists that double-byte data will be encountered, the library list for the job should be such that the printer files that are DBCS-enabled will be found first in the library list. Conversely, if only single-byte data is expected to be encountered, the library list should be set up so the printer files that are not enabled for DBCS will be found first. In this way, the printer file capabilities will match the type of data that will be processed. The decision as to what type of printer file to use is made on the basis of what type of data will be processed. The device that will be used to actually display or print the data may also influence this decision.
In some cases it may be desirable to make the printer file only temporarily DBCS-capable instead of making a permanent change. For a specific job, you can make this temporary change by using the OVRPRTF command.
To temporarily enable a specific printer file, you can use the following command:
OVRPRTF FILE(filename) IGCDTA(*YES)
Where filename is the name of the printer file you want to enable.