Author |
Message
|
jonesn |
Posted: Mon Jul 11, 2005 5:37 am Post subject: EBCDIC to ASCII Character Conversion in message flow |
|
|
Apprentice
Joined: 09 Jan 2002 Posts: 47
|
Broker: 5.0, CSD 5
Platform: AIX
We have a message flow that reads EBCDIC messages in the BLOB domain & we want to convert the body to ASCII in the flow. The messages are not defined to the MRM.
I think I should be able to use an RCD to convert to ASCII wire format defined in the MRM.
How can I create a generic MRM message that will allow me to convert any EBCDIC message as it passes through the flow?
An older version of this flow used an intermediate queue between two flows but that seemed inefficient so we would like to convert in the flow.
Thanks _________________ ---
Nick Jones
IBM Certified Solutions Expert (WebSphere MQ Integrator) |
|
Back to top |
|
 |
jefflowrey |
Posted: Mon Jul 11, 2005 5:45 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
You should let MQ do the conversion for you. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
jonesn |
Posted: Mon Jul 11, 2005 5:50 am Post subject: |
|
|
Apprentice
Joined: 09 Jan 2002 Posts: 47
|
We cannot easily let MQ do the conversion for us because not all messages on that queue should be converted, we therefore read in as BLOB without converion.
This is a flow that handles response messages back from IMS & depneding on the transaction may or may not need to be converted. _________________ ---
Nick Jones
IBM Certified Solutions Expert (WebSphere MQ Integrator) |
|
Back to top |
|
 |
jefflowrey |
Posted: Mon Jul 11, 2005 5:54 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Does CASTing the BLOB to a different character set not work? _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
jonesn |
Posted: Mon Jul 11, 2005 7:14 am Post subject: |
|
|
Apprentice
Joined: 09 Jan 2002 Posts: 47
|
Casting to the local character set works in the message flow but the message remains in EBCDIC when it hits the queue. We need to write these messages out of the flow as ASCII. _________________ ---
Nick Jones
IBM Certified Solutions Expert (WebSphere MQ Integrator) |
|
Back to top |
|
 |
fschofer |
Posted: Mon Jul 11, 2005 7:35 am Post subject: |
|
|
 Knight
Joined: 02 Jul 2001 Posts: 524 Location: Mainz, Germany
|
|
Back to top |
|
 |
jonesn |
Posted: Mon Jul 11, 2005 7:56 am Post subject: |
|
|
Apprentice
Joined: 09 Jan 2002 Posts: 47
|
Frank,
I would like to convert as described in the url but I do not know how to define an MRM message that is a string of unknown length. The messages processed by this flow come from different IMS transactions, should be only character data but we do not know how long they are.
Any suggestions? _________________ ---
Nick Jones
IBM Certified Solutions Expert (WebSphere MQ Integrator) |
|
Back to top |
|
 |
jonesn |
Posted: Tue Jul 12, 2005 8:58 am Post subject: |
|
|
Apprentice
Joined: 09 Jan 2002 Posts: 47
|
Chaps,
Thanks for your contributions, I have got the character conversion to work as I wanted.
For information this is what I did...
Create dummy message set
Create a new message set project, navigating to final tab to give it a CWF physical format
Create new message definition within that message set
Using the outline view created a message of complexType1
Add a string element to complexType1
Select the string in the Outline view then go to the Properties tab
Navigate to Physical Properties > CWF1 > Local element
Set Physical Type to Fixed Length String & Length Units to End of Bitstream
Within my message flow I added
RCD to convert to the MRM message above
Compute to set OutputRoot.MQMD.Encoding & CodedCharSetId and OutputRoot.Properties.Encoding & CodedCharSetId to the values I want to convert to
RCD to convert to BLOB
Any opinions on this technique are welcome. _________________ ---
Nick Jones
IBM Certified Solutions Expert (WebSphere MQ Integrator) |
|
Back to top |
|
 |
|