ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum IndexIBM MQ API SupportSetting MQMD_CODEDCHARSETID

Post new topicReply to topic
Setting MQMD_CODEDCHARSETID View previous topic :: View next topic
Author Message
cicsprog
PostPosted: Wed May 09, 2007 1:04 pm Post subject: Setting MQMD_CODEDCHARSETID Reply with quote

Partisan

Joined: 27 Jan 2002
Posts: 347

First off I did search the forum (wrong bait maybe) and looked at the MQ Manuals. I don't think the API manuals spell my question out too clearly or I'm misinterpreting them. Also, I do little API coding. Only when I really have to .

That said, here's the issue. It's the “[“ and “]” convert issue when a message comes from UNIX MQ to z/OS MQ. Codepage default is CCSID 500 on z/OS MQ. So “[“ and “]” are not interpreted probably on the MQGET with CONVERT. If the application program move 037 into MQMD_CODEDCHARSETID before the MQGET, will the 037 codepage be used instead of the 500?

This clip from the MQ Application Programming Reference leads me to believe it does:

The MQGET call is issued directly by the application. Set the CodedCharSetId and Encoding fields in the MQMD to the character set and encoding required. If your application is using the same character set and encoding as the queue manager, you can set CodedCharSetId to MQCCSI_Q_MGR, and Encoding to MQENC_NATIVE. After the MQGET call completes, these fields have the values appropriate to the message data returned. These may differ from the values required if the conversion was not successful. Your application should reset these fields to the values required prior to each MQGET call.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Wed May 09, 2007 2:06 pm Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

Quote:
If the application program move 037 into MQMD_CODEDCHARSETID before the MQGET, will the 037 codepage be used instead of the 500?


What you want the application to do is leave the message alone but enter 037 as the CCSID in the qmgr object.

Now if your message format is MQFMT_STRING all you need to do is a GET with Convert.

Enjoy
[edit] added the word "format" in message format for clarification[/edit]
_________________
MQ & Broker admin


Last edited by fjb_saper on Wed May 09, 2007 2:35 pm; edited 1 time in total
Back to top
View user's profile Send private message Send e-mail
cicsprog
PostPosted: Wed May 09, 2007 2:21 pm Post subject: Reply with quote

Partisan

Joined: 27 Jan 2002
Posts: 347

Could you elaborate just a bit more....tanks!
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Wed May 09, 2007 2:33 pm Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

cicsprog wrote:
Could you elaborate just a bit more....tanks!

not an MF person... Check with your friendly MF support they should be able to point you in the right direction.
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
Nigelg
PostPosted: Wed May 09, 2007 11:22 pm Post subject: Reply with quote

Grand Master

Joined: 02 Aug 2004
Posts: 1046

Quote:
If the application program move 037 into MQMD_CODEDCHARSETID before the MQGET, will the 037 codepage be used instead of the 500?

Yes. The default value for CodedCharSetId is MQCCSI_Q_MGR, i.e. the code page that the data will be converted to is the CCSID of the qmgr. You can request that conversion be done to any other code page by doing as you propose.
_________________
MQSeries.net helps those who help themselves..
Back to top
View user's profile Send private message
cicsprog
PostPosted: Thu May 10, 2007 5:57 am Post subject: Reply with quote

Partisan

Joined: 27 Jan 2002
Posts: 347

fjb_saper said:

“Check with your friendly MF support they should be able to point you in the right direction.”

That would be me - I'm the MQ Admin!

What I think you are telling me fjb_saper is to change the Queue Managers CCSID to 037. Unfortunately I can’t. There are 50+ other applications using that MQM. Some of those apps have compensated for the bracket issue in their code.


Thanks Nigelg, that is what I thought. I’ll do a test of my own today. Now where are my COBOL coding sheets?
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Thu May 10, 2007 12:03 pm Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

cicsprog wrote:

What I think you are telling me fjb_saper is to change the Queue Managers CCSID to 037.


There seems to be a big confusion here.
What I said was to set CCSID to 037 on the qmgr object i.e. when you declare the qmgr in the program...

This is completely different from changing the CCSID of the qmgr.

Have your programmer take a look at their code and find if there is a way to do that. Then check out the results.

Enjoy
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
cicsprog
PostPosted: Thu May 10, 2007 12:05 pm Post subject: Reply with quote

Partisan

Joined: 27 Jan 2002
Posts: 347

GREAT! I'll tell them...thanks for the input!
Back to top
View user's profile Send private message
Display posts from previous:
Post new topicReply to topic Page 1 of 1

MQSeries.net Forum IndexIBM MQ API SupportSetting MQMD_CODEDCHARSETID
Jump to:



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP


Theme by Dustin Baccetti
Powered by phpBB 2001, 2002 phpBB Group

Copyright MQSeries.net. All rights reserved.