Author |
Message
|
jimwarden |
Posted: Thu Mar 30, 2006 5:36 am Post subject: MQ setup between Windows & iSeries |
|
|
Newbie
Joined: 30 Mar 2006 Posts: 1
|
Hello all,
We are trying to set up an MQ channel to send data from a windows application to an iSeries application.
We have managed to send data down the channel, but when it arrives on the iSeries, it's in ASCII format. The iSeries app has a hard time understanding any of this and promptly craps out.
We're not sure where the conversion should take place - the two options being changing the Windows app, or setting up the queue/channel (possibly using ccsid.tbl) to do the conversion
Changing the iSeries app is not possible.
Can anybody offer any help or suggestions?
Apologies for what might be a complete novice question, but I couldn't find anything I understand searching for conversion, EBCDIC or AS400.
Thanks
Jim |
|
Back to top |
|
 |
sandiksk |
Posted: Thu Mar 30, 2006 6:08 am Post subject: |
|
|
Centurion
Joined: 08 Jun 2005 Posts: 133
|
|
Back to top |
|
 |
Vitor |
Posted: Thu Mar 30, 2006 6:15 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Let it be stated upfront my knowledge of iSeries is at about the same level as my knowledge of astronomy, but is it the case that the standard MQ conversion facilities are not available on iSeries? Is it not an ordinary ASCII <-> EBCDIC conversion? The info centre has specific instructions for iSeries exits like it does for z/OS, implying that you're exiting from the standard facilities.
Do I need a different stick to hold by the wrong end? _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Mar 30, 2006 6:20 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
I realize that "changing the iSeries App is not possible" - but in fact the iSeries App is wrong, and is the right thing TO change.
If the iSeries App doesn't change slightly and add MQGMO.CONVERT, then it is forcing all the other apps that want to speak to it to a) know that they are speaking to THAT app as opposed to some other app, b) know that THAT app runs on iSeries and needs data in EBCDIC.
And the whole point of MQ is that senders don't know anything about receivers.
If you really can't get approval to make the very very tiny change of adding MQGMO.CONVERT and then checking an extra return code.... Then your next best bet is to tell the channel to do the conversion.
But here's the thing with the channel conversion. It will always convert everything that passes through it. If the iSeries queue manager is not an endpoint in your network, this can be very very bad - what if you're routing messages through that queue manager from Windows to another unix somewhere? Now your data is in EBCDIC on the unix side - and so you have to implement conversion again. And now you've converted between three character sets (Windows, ebcdic and Unix) and you could have really mangled your data.
The third thing to remember is that data conversion only works if the entire message is character data and can have the MQMD.FORMAT = MQFMT_STRING. If that's not the case, then you're really in trouble. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
Vitor |
Posted: Thu Mar 30, 2006 6:51 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Ah - projection of own experience onto someone else's problem. Just because I routinely code MQGMO_CONVERT (as well as the various FAIL_IF_QUIESCING options) doesn't mean everybody does.
Apologies for any offense caused  _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
fjb_saper |
Posted: Thu Mar 30, 2006 2:44 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
If your windows app is a JMS app there are other possibilities. But like in most posts the precondition is that your message format is MQSTR.
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
|