Author |
Message
|
bobbee |
Posted: Mon Sep 16, 2019 12:26 pm Post subject: conversion 437 to 1381 |
|
|
 Knight
Joined: 20 Sep 2001 Posts: 545 Location: Tampa
|
Can this conversion be accomplished creating a /conv/table/01bf0565.tbl? It is Windows to Simplified Chinese.
are there any suggestion? Support cam back and suggested a channel exit. But that seems to be Format based. (Ie MQSTR, MQDLQ, etc) |
|
Back to top |
|
 |
gbaddeley |
Posted: Mon Sep 16, 2019 4:27 pm Post subject: |
|
|
 Jedi Knight
Joined: 25 Mar 2003 Posts: 2538 Location: Melbourne, Australia
|
What are the two code page numbers? Is there an accepted mapping from every single-byte windows character code to a simplified chinese character code? If there is a definitive mapping, the conversion would probably already be available. _________________ Glenn |
|
Back to top |
|
 |
hughson |
Posted: Mon Sep 16, 2019 11:06 pm Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
gbaddeley wrote: |
What are the two code page numbers? |
They are in the post subject Glenn. 437 to 1381.
I found the following page in Knowledge Center about Simplified Chinese, with the statement:-
IBM Knowledge Center wrote: |
All platforms support conversion between their native CCSIDs and the native CCSIDs of other platforms, with the following exceptions (only z/OS platform listed with any exceptions). |
But it seems 437 is not a native CCSID for Simplified Chinese.
In order to enhance code page conversion when the pair of CCSIDs you need to use are not able to be converted out of the box, you should read this page and look into the ccsid.tbl and the new ccsid_part2.tbl (V9.0+).
Data conversion
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
bobbee |
Posted: Tue Sep 17, 2019 2:26 am Post subject: |
|
|
 Knight
Joined: 20 Sep 2001 Posts: 545 Location: Tampa
|
The CCSID's were 437 to 1381. The customer, at my and support's suggestion went to 1208 on the QMGR. We originally suggested an additional QMGR @ 1208 for just these interfaces. So now it it working. I was at one point looking for a way to gen a xxxxx.tbl entry in the 'tables' folder'. |
|
Back to top |
|
 |
bobbee |
Posted: Tue Sep 17, 2019 5:28 am Post subject: |
|
|
 Knight
Joined: 20 Sep 2001 Posts: 545 Location: Tampa
|
I see this in CCSID file
Code: |
#
# CCSID Base CodePage CodePage Type Enc ACRI Codeset
# CCSID DBCS SBCS name
# ----- ----- -------- -------- ---- ---- ----- -------
#
# Simplified Chinese
1383 1383 0 1383 3 6 3 eucCN
5479 1383 0 1383 3 6 3 eucCN
1114 1114 0 1114 1 2 0 IBM-1114
1115 1115 0 1115 1 2 0 IBM-1115
5211 1115 0 1115 1 2 0 IBM-1115
1381 1381 1380 1115 3 2 6 IBM-1381
5477 1381 1380 1115 3 2 6 IBM-1381 |
Seems 1381 is defined abd I would assume if it is going to SBCS it wil use 1115(????) I cannot find a representation of 1115 |
|
Back to top |
|
 |
tczielke |
Posted: Tue Sep 17, 2019 7:14 am Post subject: |
|
|
Guardian
Joined: 08 Jul 2010 Posts: 941 Location: Illinois, USA
|
bobbee wrote: |
I see this in CCSID file
Code: |
#
# CCSID Base CodePage CodePage Type Enc ACRI Codeset
# CCSID DBCS SBCS name
# ----- ----- -------- -------- ---- ---- ----- -------
#
# Simplified Chinese
1383 1383 0 1383 3 6 3 eucCN
5479 1383 0 1383 3 6 3 eucCN
1114 1114 0 1114 1 2 0 IBM-1114
1115 1115 0 1115 1 2 0 IBM-1115
5211 1115 0 1115 1 2 0 IBM-1115
1381 1381 1380 1115 3 2 6 IBM-1381
5477 1381 1380 1115 3 2 6 IBM-1381 |
Seems 1381 is defined abd I would assume if it is going to SBCS it wil use 1115(????) I cannot find a representation of 1115 |
You can find the CDRA here that identifies the CPGIDs of 1380 and 1115 -> https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=2ahUKEwjFtqqDiNjkAhUCjq0KHX5nCAcQFjAAegQIABAC&url=https%3A%2F%2Fwww.ibm.com%2Fdownloads%2Fcas%2FG01BQVRV&usg=AOvVaw1GkgkKWg4DwOUpw6EB4T13
That CDRA document (which was recently edited in 2018) talks about reaching out to IBM to get more specifics on those code pages.
It looks like CCSID 1381 contains both a double byte and single byte code page.
The 437 CCSID does not support Chinese characters, so unless you are looking for some type of Latin character based data conversion, it would not make sense to me to try and convert data between 437 and 1381. UTF-8 would be the way to go here, which it sounds like you are already doing. _________________ Working with MQ since 2010. |
|
Back to top |
|
 |
rekarm01 |
Posted: Tue Sep 17, 2019 6:38 pm Post subject: Re: conversion 437 to 1381 |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 1415
|
bobbee wrote: |
The customer, at my and support's suggestion went to 1208 on the QMGR. We originally suggested an additional QMGR @ 1208 for just these interfaces. So now it it working. |
Unicode is the best option here. Just to be clear though, the role of the qmgr ccsid is different from the role of the MQMD ccsid. The qmgr ccsid is primarily for converting character data within the MQMD header itself, when transporting a message from one qmgr to another. The MQMD ccsid is for converting the message data that follows the MQMD header, when getting a message off a queue.
bobbee wrote: |
Can this conversion be accomplished creating a /conv/table/01bf0565.tbl? |
That should probably be "01b50565.tbl". It may be possible to create a table to convert from ccsid=437 to ccsid=1381, but only a subset of characters are common to both ccsids, (mostly just the printable ASCII characters). So the table would have to handle the non-matching characters some other way, such as replacing them with a substitution character. If a table already exists for converting from ccsid=437 to ccsid=367 (US ASCII), then a copy of that table could be used as a starting point, to determine whether this approach is feasible.
bobbee wrote: |
I see this in CCSID file ... |
The ccsid_part2.tbl file doesn't include conversion tables. Adding or modifying ccsids is probably not useful here, because MQ already knows about the ccsids in question. Specifying a default data conversion for ASCII might be useful though, as a fallback for unsupported conversions. But it can also be lossy, when handling non-matching characters, so it is generally better for converting MQ headers than for converting user data. |
|
Back to top |
|
 |
|