Hi Lawrence,
Are they also taking into account that 1208 is a variable width code page (where most common characters are represented as one byte) and 1200 is a fixed width double byte code page?
For example, if I put a 10 byte MQSTR message like "BOB LOBLAW" in 1208 on a Linux x86 server and browse it with amqsbcg (no conversion and leaving it as 1208), the message displays as follows (10 byte length):
Encoding : 546 CodedCharSetId : 1208
**** Message ****
length - 10 of 10 bytes
00000000: 424F 4220 4C4F 424C 4157 'BOB LOBLAW '
However, if I alter ambsbcg to convert the same message with code page 1200, the message now appears as follows (20 byte length):
Encoding : 546 CodedCharSetId : 1200
**** Message ****
length - 20 of 20 bytes
00000000: 4200 4F00 4200 2000 4C00 4F00 4200 4C00 'B.O.B. .L.O.B.L.'
00000010: 4100 5700 'A.W. '
So basically, your typical string message needs twice as many bytes to convert from 1208 (variable width code page where typical characters are represented by one byte) to 1200 (fixed width double byte code page). For example, the letter B above is x'42' in 1208 and x'4200' in 1200. At least that is my understanding.
Thanks,
Tim
From: MQSeries List [mailto:MQSERIES-0lvw86wZMd9k/bWDasg6f+***@public.gmane.org] On Behalf Of Coombs, Lawrence
Sent: Friday, December 20, 2013 9:09 PM
To: MQSERIES-0lvw86wZMd9k/bWDasg6f+***@public.gmane.org
Subject: Re: Data Conversion in C++
Thanks. I will suggest this.
From: MQSeries List [mailto:MQSERIES-0lvw86wZMd9k/bWDasg6f+***@public.gmane.org] On Behalf Of Neil Casey
Sent: Friday, December 20, 2013 9:04 PM
To: MQSERIES-0lvw86wZMd9k/bWDasg6f+***@public.gmane.org
Subject: Re: Data Conversion in C++
Hi Lawrence,
2190 is an interesting reason code. It seems to me like it shouldn't happen for a message with format MQFMT_STRING.
It could certainly occur if you have a user format and a conversion exit, or for a format of MQ_IMS_VAR_STRING.
I suspect that it could also occur for MQFMT_RF_HEADER_2, and given that your source CCSID is 1208, I am going to guess that the message is generated from Java, and possibly via JMS.
If this is the case, then the problem could be with converting the JMS or usr properties.
If this is the case, and the receiving application (being C++) doesn't actually care about the JMS parts of the message, you might be able to resolve the issue by setting the TARGCLIENT(MQ) option in your JMS destination definition.
Regards,
Neil Casey.
On 21 Dec 2013, at 1:47 pm, Coombs, Lawrence <Lawrence.Coombs-***@public.gmane.org<mailto:Lawrence.Coombs-***@public.gmane.org>> wrote:
I am trying to integrate one of our internal application with a vendor. We are passing the messages with a CCSID of 1208 and they want to convert it to 1200 when they get the message.
The issue is that sometimes the conversion works from 1208 to 1200 and sometimes they get a '2190'(MQRC_CONVERTED_STRING_TOO_BIG). Unfortunately I don't know a whole lot about C++.
The receiving message buffer does not appear to be the problem because it is quite large. The message payload can vary in length and the failure occurs on both small and large messages. Out of 25 messages sent, 6 failed to convert.
I did a Google search before this post but could not find anything definitive. Can someone shed any light on this issue?
This message, including any attachments, is the property of Sears Holdings Corporation and/or one of its subsidiaries. It is confidential and may contain proprietary or legally privileged information. If you are not the intended recipient, please delete it without reading the contents. Thank you.
________________________________
List Archive<http://listserv.meduniwien.ac.at/archives/mqser-l.html> - Manage Your List Settings<http://listserv.meduniwien.ac.at/cgi-bin/wa?SUBED1=mqser-l&A=1> - Unsubscribe<mailto:LISTSERV-0lvw86wZMd9k/bWDasg6f+***@public.gmane.org?subject=Unsubscribe&BODY=signoff%20mqseries>
Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com<http://www.lsoft.com/resources/manuals.asp>
________________________________
List Archive<http://listserv.meduniwien.ac.at/archives/mqser-l.html> - Manage Your List Settings<http://listserv.meduniwien.ac.at/cgi-bin/wa?SUBED1=mqser-l&A=1> - Unsubscribe<mailto:LISTSERV-0lvw86wZMd9k/bWDasg6f+***@public.gmane.org?subject=Unsubscribe&BODY=signoff%20mqseries>
Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com<http://www.lsoft.com/resources/manuals.asp>
This message, including any attachments, is the property of Sears Holdings Corporation and/or one of its subsidiaries. It is confidential and may contain proprietary or legally privileged information. If you are not the intended recipient, please delete it without reading the contents. Thank you.
________________________________
List Archive<http://listserv.meduniwien.ac.at/archives/mqser-l.html> - Manage Your List Settings<http://listserv.meduniwien.ac.at/cgi-bin/wa?SUBED1=mqser-l&A=1> - Unsubscribe<mailto:LISTSERV-0lvw86wZMd9k/bWDasg6f+***@public.gmane.org?subject=Unsubscribe&BODY=signoff%20mqseries>
Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com<http://www.lsoft.com/resources/manuals.asp>
To unsubscribe, write to LISTSERV-0lvw86wZMd9k/bWDasg6f+***@public.gmane.org and,
in the message body (not the subject), write: SIGNOFF MQSERIES
Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://listserv.meduniwien.ac.at/archives/mqser-l.html