The ccsid_part2.tbl file
From IBM MQ Version 9.0, the ccsid_part2.tbl file replaces the existing ccsid.tbl file, used in previous versions of the product, to supply additional CCSID information. Note that the ccsid.tbl file continues to be parsed by IBM MQ and should not be deleted, and that entries in ccsid_part2.tbl take precedence over other entries in ccsid.tbl.
The ccsid_part2.tbl is located in the MQDataRoot/conv/table directory on:and the MQDataRoot\conv\table directory on Windows Note that the ccsid_part2.tbl file is not available on any other platforms. The file is used to perform the following actions:
- Linux - all versions
- Solaris
You should use ccsid_part2.tbl, as this file:
- Add or modify existing CCSID entries for use in IBM MQ data conversion
- Specifying default data conversion
- Contains support for the new Unicode encoding values.
- Allows you to specify the version of CCSID entries, so that the entries are only applicable to selected command levels.
Add or modifying CCSID entries
An entry in the ccsid_part2.tbl file has the following format:<CCSID number> <Base CCSID> <DBCS CodePage> <SBCS CodePage> <Type> <Encoding> <ACRI> <Name>An example entry for CCSID 1200 (UTF-16) is:1200 1200 1200 1200 3 8 0 UTF-16Note: For more details on the value for ACRI see the comment in the ccsid_part2.tbl file. In the ccsid_part2.tbl format:
- Type can equal:
- 1=SBCS
- Encoding can equal:
- 1=EBCDIC
When editing the file you:
- Can specify a comment by using the # symbol at the start of a line. This prevents IBM MQ from attempting to parse the line.
- Cannot supply in-line comments.
- Must ensure that we do not create blank lines.
- Must not add new entries at the end of the file.
New CCSID entries should be added before the ACRI table information.
Specifying default data conversion
We can define default conversion CCSIDs, which are used to convert between ASCII or similar and EBCDIC CCSIDs, if no conversion is supported between two CCSIDs.
If you enable this function, the default conversion is used for transmission and message headers, and can also be used in user data conversion.
Default conversions are enabled by creating two lines similar to the following:default 0 500 1 1 0 default 0 850 1 2 0The first line sets the default for EBCDIC CCSIDs to 500 and the second line sets the default for ASCII and similar CCSIDs to 850.
Specifying data for different command levels
To specify CCSID entries for different command levels of IBM MQ we use a colon symbol followed by the command level (or command levels) of IBM MQ that you want the next section to be applicable to.
The number represents the minimum command level that the queue manager or client must be running in. For example, if the current queue manager is command level 900, and it encounters an 800 or 900 command level flag, the CCSIDs are read.
However, a queue manager at level 800 ignores any CCSIDs in the 900 section.
The command level specified is applicable to all CCSID entries encountered after a command level flag, until a new command level flag is found.
If you require to set the command level to all command levels, specify the number zero.
When first parsing ccsid_part2.tbl, IBM MQ treats all CCSIDs encountered as valid for all command levels of IBM MQ.
Versioning starts to be used only when IBM MQ encounters the first command level flag.
The following code snippet shows an example of using Versioning:# Comment Block # End of Comment Block # Because no command level flag is specified and we're at the start of the file # the following CCSIDs will be read on all versions 819 819 0 819 1 3 0 ISO8859-1 923 923 0 923 1 3 0 ISO8859-15 1051 1051 0 1051 1 3 0 IBM-1051 # The colon :900 below shows that the CCSIDs after will only be for MQ cmd level 900 and above :900 8629 437 0 437 1 2 0 IBM-437 12725 437 0 437 1 2 0 IBM-437 16821 437 0 437 1 2 0 IBM-437 20917 437 0 437 1 2 0 IBM-437 # The colon :0 below shows that the CCSIDs after will be for all version of MQ :0 4946 850 0 850 1 2 0 IBM-850 33618 850 0 850 1 2 0 IBM-850 61697 850 0 850 1 2 0 IBM-850 61698 850 0 850 1 2 0 IBM-850