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 Index » WebSphere Message Broker (ACE) Support » MRM message question

Post new topic  Reply to topic Goto page 1, 2  Next
 MRM message question « View previous topic :: View next topic » 
Author Message
KittieKat
PostPosted: Fri Mar 08, 2002 3:16 pm    Post subject: Reply with quote

Apprentice

Joined: 17 Dec 2001
Posts: 31

Hi,

My input message consists of 2 string fields of unknow length with a pipe delimiter, here is what it looks like:
Field1|Field2

Now in MQSI, I created a message with 2 elements (Field1 and Field2). Can someone please tell me where can I specify the pipe delimiter so the MRM parser knows where Field1 ends and Field2 starts?

Thanks,
Alison
Back to top
View user's profile Send private message Send e-mail
mverh
PostPosted: Fri Mar 08, 2002 3:24 pm    Post subject: Reply with quote

Voyager

Joined: 06 Mar 2002
Posts: 97

Alison, this can be done easily with Neon. I don't believe this can be done using the MRM. By jumping through a whole bunch of hoops in WMQI you could do it by manipulating a BLOB. Refer to the V2.1 ESQL reference, the section that covers how to manipulate a varying length BLOB.
Back to top
View user's profile Send private message
KittieKat
PostPosted: Fri Mar 08, 2002 3:36 pm    Post subject: Reply with quote

Apprentice

Joined: 17 Dec 2001
Posts: 31

Hi, thanks for that speedy response. Currently we are using NEON formatter to parse the message, but we would like to move away from NEON at this point. Is there any way this can be done in MQSI 2.0.2 without using NEON? Thanks.
Back to top
View user's profile Send private message Send e-mail
kirani
PostPosted: Fri Mar 08, 2002 4:56 pm    Post subject: Reply with quote

Jedi Knight

Joined: 05 Sep 2001
Posts: 3779
Location: Torrance, CA, USA

What is your input message format?
Since the incoming string field length is unknown, what element length have you specified in MRM for Field1 and Field2?

Back to top
View user's profile Send private message Visit poster's website
KittieKat
PostPosted: Mon Mar 11, 2002 11:08 am    Post subject: Reply with quote

Apprentice

Joined: 17 Dec 2001
Posts: 31

Hi Kirani,

I did not specify a field length when I created the fields, because the field length are unknown to me. In the past, I have been using NEON format to parse this kind of input message, and Field1 has an input control called "DelimitedByPipe" that detects the pipe at the end of Field1. Now I want to migrate/recreate these input formats in MRM, is there a way to create something similar to the input control "DelimitedByPipe" in MQSI 2.0.2?
Back to top
View user's profile Send private message Send e-mail
KittieKat
PostPosted: Mon Mar 11, 2002 11:08 am    Post subject: Reply with quote

Apprentice

Joined: 17 Dec 2001
Posts: 31

Hi Kirani,

I did not specify a field length when I created the fields, because the field length are unknown to me. In the past, I have been using NEON format to parse this kind of input message, and Field1 has an input control called "DelimitedByPipe" that detects the pipe at the end of Field1. Now I want to migrate/recreate these input formats in MRM, is there a way to create something similar to the input control "DelimitedByPipe" in MQSI 2.0.2?
Back to top
View user's profile Send private message Send e-mail
philipaby
PostPosted: Mon Mar 11, 2002 11:45 am    Post subject: Reply with quote

Novice

Joined: 09 Mar 2002
Posts: 13

Hi Kittiekat,

You can do this using the MRM. First when you create a message set. You add the physical format 'Tagged/Delimited Format'(right click on the message set and Add...Physical...). Once you do that define two elements Field1 and Field2 of say type STRING. Create a compound type in the 'Types' folder let's say name 'KittieType'. When you create the compund type select it and then you will see a 'tagged/delimited format' tab..Click on that and in the 'Data Element Separation' field select 'All Elements Delimited'..Once that is done type in the delimiter '|'. Once all this is done and checked in. Create a message of type the compound type you created i.e. KittieKat and that's it. You can use the MRM message which will parse an input stream Field1|Field2 without any length specified. Please note that when you create the fields specify the length to be 0.

I am assuming that you had just two fields.

Regards
Aby
Back to top
View user's profile Send private message
philipaby
PostPosted: Mon Mar 11, 2002 11:46 am    Post subject: Reply with quote

Novice

Joined: 09 Mar 2002
Posts: 13

Hi Allison,
The methods I had specified for were for MQSI 2.1. I am not sure which version you are using.

Aby
Back to top
View user's profile Send private message
KittieKat
PostPosted: Mon Mar 11, 2002 1:26 pm    Post subject: Reply with quote

Apprentice

Joined: 17 Dec 2001
Posts: 31

Hi Aby,

We are using MQSI 2.0.2, I couldn't find the physical format 'Tagged/Delimited Format', I guess version 2.0.2 doesn't have that option. Any ideas on how to implement the pipe delimiter in 2.0.2? Does WMQI 2.1 have all the parsing capabilies as NEON formatter? Thanks.

-Alison
Back to top
View user's profile Send private message Send e-mail
kirani
PostPosted: Mon Mar 11, 2002 1:26 pm    Post subject: Reply with quote

Jedi Knight

Joined: 05 Sep 2001
Posts: 3779
Location: Torrance, CA, USA

Alison,

I don't think you can define a string element in MQSI 2.0.2 (MRM) without specifying it's Length. As Aby said, you can use Tagged/Delimited Format in WMQI 2.1 version.

If you could state your Transformation requiremetn here (your input and output message layout), we can explore further to see if it can be done using other message format(BLOB) or not.

Kiran
Back to top
View user's profile Send private message Visit poster's website
KittieKat
PostPosted: Mon Mar 11, 2002 1:39 pm    Post subject: Reply with quote

Apprentice

Joined: 17 Dec 2001
Posts: 31

Hi Kirani,

Here's my situation, the input message consists of 9 fields of strings (of unknown length) separated by the pipe delimiter. so it looks something like this:

Field1|Field2|Field3|... |Field9|

In the past, we've been using NEON input format to separate each field in the message using the pipe delimiter. The NEON output format simply attaches a Prefix and a Sufix to each field in the input format.

Now I would like to recreate this NEON input format in MRM. I started by creating 9 elements for the 9 fields (without specifying the field length). But I don't know how to create the pipe delimiter in MRM (in MQSI 2.0.2). Would it be easier to accomplish this if I just migrated to WMQI 2.1? Thanks.

-Alison
Back to top
View user's profile Send private message Send e-mail
kirani
PostPosted: Mon Mar 11, 2002 2:36 pm    Post subject: Reply with quote

Jedi Knight

Joined: 05 Sep 2001
Posts: 3779
Location: Torrance, CA, USA

Alison,

After looking at your requirement, following options come to my mind:

1. Write a plug-in, which does this transformation (Attributes could be Prefix String, Sufix String, Field Delimiter).
2. Write a complex ESQL code to do this. (This code may not be generic)
3. Migrate to ver WMQI 2.1 which provides you this functionality. (Migration to higher version should be planned properly).

Kiran
Back to top
View user's profile Send private message Visit poster's website
Nick Lethbridge
PostPosted: Tue Mar 12, 2002 4:48 am    Post subject: Reply with quote

Voyager

Joined: 13 Aug 2001
Posts: 88
Location: Santander, UK

Alison,

Like Kiran, I think you are going to struggle to implement a 'non-NEON' approach for pipe-delimited messages with v2.0.2.

You could write a parser plugin, but there will be a development/maintenance overhead.

An ESQl solution would be extremely time-consuming and complicated.

I would suggest using the MQSIRules node (together with your existing Formats/Rules) with MQSI v2.0.2, then plan for an upgrade to WMQI v2.1.

Regards,
Nick.
Back to top
View user's profile Send private message Send e-mail
philipaby
PostPosted: Tue Mar 12, 2002 6:20 am    Post subject: Reply with quote

Novice

Joined: 09 Mar 2002
Posts: 13

Hi Allison,
I am not sure on whether this pipe delimited can be done in 2.0 because I went from 1.1 to 2.1 straight. Looking at the replies on this question I think you have a few replies on that. Sorry I could not be of much help. I also think that once you migrate to MQSI 2.1 you should be safe in doing this easily.

Regards
Aby

[ This Message was edited by: philipaby on 2002-03-12 06:22 ]
Back to top
View user's profile Send private message
KittieKat
PostPosted: Tue Mar 12, 2002 7:39 am    Post subject: Reply with quote

Apprentice

Joined: 17 Dec 2001
Posts: 31

Hi,

Thanks for everyone's help. I will try the ESQL approach and see how it turns out. One more thing, if I do migrate to WMQI 2.1 would that completely eliminate the need for NEON Formatter and NEON Rules? Does WMQI have the all the parsing capabilities in NEON? We really would like to move away from NEON at this point. Thanks.

-Alison
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » MRM message question
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.