Author |
Message
|
saurabh867 |
Posted: Thu Sep 08, 2011 12:27 am Post subject: Character conversion after mapping in ESQL |
|
|
Voyager
Joined: 13 Jun 2010 Posts: 78
|
Hi,
I have a message flow which creates a new message (IDOC XML for SAP Adapter) from the input message.
Now if the input has some finnish character 'ä'. After mapping this to the output, the value changes to other character '„'.
I have tried hard-coding the value 'ä' in the output message set but still at the output side the value gets changed.
To make sure that the message set does not cause any issue, I have created a sample flow to pass a message with these characters and parse this message with same message set. The characters come correct in this way.
Should something be done while assigning the values in ESQL for these characters.
And yes I have some minimum knowledge about encoding by reading this article which was recommended in this forum: http://www.joelonsoftware.com/printerFriendly/articles/Unicode.html
I have tried doing CAST('Golderä Associates' AS CHARACTER CCSID 1208);
Toolkit - 6.1.0.8 , Broker - 6.1.0.8 |
|
Back to top |
|
 |
rekarm01 |
Posted: Thu Sep 08, 2011 1:48 am Post subject: Re: Character conversion after mapping in ESQL |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 1415
|
saurabh867 wrote: |
Now if the input has some finnish character 'ä'. After mapping this to the output, the value changes to other character '„'. |
No, the display changes from one character to another, but that could just as easily be a limitation of the display tool. The value (bytes) has yet to be determined.
Use the available debugging tools (such as rfhutil, amqsbcg0, M071, usertrace, Trace node, etc.) to display the headers and hex dump of both the input message and the output message. Confirm that the input ccsid matches the input bytes, and that the output ccsid matches the output bytes.
saurabh867 wrote: |
I have tried doing CAST('Golderä Associates' AS CHARACTER CCSID 1208); |
CASTing CHARACTER AS CHARACTER seldom does anything interesting. |
|
Back to top |
|
 |
saurabh867 |
Posted: Thu Sep 08, 2011 1:58 am Post subject: |
|
|
Voyager
Joined: 13 Jun 2010 Posts: 78
|
Quote: |
No, the display changes from one character to another, but that could just as easily be a limitation of the display tool |
Right. But when I dont perform any mapping(I pass the message having these character to input queue and get at the o/p queue), I see the correct data. But When I map these, I get these characters.
I m using RfhUtil to send and receive the data .
Code page is 1208 while sending the message. |
|
Back to top |
|
 |
Vitor |
Posted: Thu Sep 08, 2011 4:08 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
saurabh867 wrote: |
Code page is 1208 while sending the message. |
So for absolute clarity:
What is the CCSID in the MQMD of the input message?
What is the CCSID used to write the output message?
What is the hex value of the character in question on input?
What is the hex value of the character in question on output? _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
fjb_saper |
Posted: Thu Sep 08, 2011 5:09 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Are you doing a hard map of
Code: |
OutputRoot.Properties.CodedCharSetId = 1208; |
If not you might want to try it.
Have fun  _________________ MQ & Broker admin |
|
Back to top |
|
 |
saurabh867 |
Posted: Tue Sep 13, 2011 2:33 am Post subject: |
|
|
Voyager
Joined: 13 Jun 2010 Posts: 78
|
Thnx,
The issue got resolved now. The issue was with the set of tools used in editing/viewing the UTF-8 characters.
Even though I copied the correct character but I used notepad to save that character and run it through the broker.
I realized the problem and used notepad++ with UTF-8 encoding to change the file and then a UTF-8 viewer to view the output. |
|
Back to top |
|
 |
|