cancel
Showing results for 
Search instead for 
Did you mean: 

Character Encoding for IDOC to JMS scenario with foreign characters

Former Member
0 Kudos

Dear Experts,

The scenario is desribed as follows:

Issue Description:

There is an IDOC which is created after extracting data from different countries (but only one country at a time). So, for instance first time the data is picked in Greek and Latin and corresponding IDOC is created and sent to PI, the next time plain English and sent to PI and next Chinese and so on. As of now every time this IDOC reaches PI ,it comes with UTF-8 character encoding as seen in the IDOC XML.

I am converting this IDOC XML into single string flat file (currently taking the default encoding UTF-8) and sending it to receiver JMS Queue (MQ Series). Now when this data is picked up from the end recepient from the corresponding queue in MQ Series, they see ? wherever there is a Greek/latin characters (may be because that should be having a different encoding like ISO-8859_7). This is causing issues at their end.

My Understanding

SAP system should trigger the IDOC with the right code page i.e if the IDOC is sent with Greek/Latin code page should be ISO-8859_7, if this same IDOC is sent with Chinese characters the corresponding code page else UTF-8 or default code page.

Once this is sent correctly from SAP, Java Mapping should have to use the correct code page when righting the bytes to outputstream and then we would also need to set the right code page as JMS Header before putting the message in the JMS queue so that receiver can interpret it.

Queries:

1. Is my approach for the scenario correct, if not please guide me to the right approach.

2. Does SAP support different code page being picked for the same IDOC based on different data set. If so how is it achieved.

3. What is the JMS Header property to set the right code page. I think there should be some JMS Header defined by MQ Series for Character Encoding which I should be setting correctly) I find that there is a property to set the CCSID in JMS Receiver Adapter but that only refers to Non-ASCII names and doesn't refer to the payload content.

I would appreciate if anybody can give me pointers on how to resolve this issue.

Thanks,

Pratik

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Dear Experts,

Any suggestions...

with regards,

Pratik

Edited by: pratik_du on Oct 17, 2011 3:05 PM

Former Member
0 Kudos

Hi Pratik,

litle question: have you check the RFC destination defined in ECC in order to send Idoc to PI ? is it a Unicode connexion ?

See tcode WE20 (partner profile) to know which port is used, and so which RFC destination. else use directly tcode SM59 if you know it. Inside the RFC destination, check if the radio-button "unicode" is well used. If not, that could explain why encoding is not good.

regards;

Mickael

Former Member
0 Kudos

Hi Mickael,

The configuration is unicode at the SAP Side RFC Destination, I have already checked the same.

Best Regards,

Pratik

anupam_ghosh2
Active Contributor
0 Kudos