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 » Message not sent

Post new topic  Reply to topic
 Message not sent « View previous topic :: View next topic » 
Author Message
LH33
PostPosted: Thu Aug 07, 2003 1:51 pm    Post subject: Message not sent Reply with quote

Master

Joined: 21 Nov 2002
Posts: 200

I have a message flow where I have a compute node that copies the entire message. I then check an XML tag for a value. If the tag equals the value, I want to send the mesage through to the output queue. This part is working fine. If the tag does not equal the value, I do not want to send the message at all and I am currently setting the OutputRoot = NULL. When I run a transaction through, I get a BIP2617 - Output Message is empty. Can someone assist me in how to prevent an empty message from being written to the output node. I just want to end the flow without any message being written at all if the tag does not equal the value.

Thanks!!
Back to top
View user's profile Send private message
kirani
PostPosted: Thu Aug 07, 2003 2:12 pm    Post subject: Reply with quote

Jedi Knight

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

Try something like this,
Code:

IF ( InputRoot.XML.Tagname <> 'Value') THEN
  return false;
else
  return true;
end if;

_________________
Kiran


IBM Cert. Solution Designer & System Administrator - WBIMB V5
IBM Cert. Solutions Expert - WMQI
IBM Cert. Specialist - WMQI, MQSeries
IBM Cert. Developer - MQSeries

Back to top
View user's profile Send private message Visit poster's website
EddieA
PostPosted: Thu Aug 07, 2003 5:17 pm    Post subject: Reply with quote

Jedi

Joined: 28 Jun 2001
Posts: 2453
Location: Los Angeles

As you are copying the entire message, instead of a Compute, why not use a Filter.

Code:
FIELDNAME(Body.Tagname) = 'Tagname'


Then just don't connect anything to the False terminal.

Cheers,
_________________
Eddie Atherton
IBM Certified Solution Developer - WebSphere Message Broker V6.1
IBM Certified Solution Developer - WebSphere Message Broker V7.0
Back to top
View user's profile Send private message
emiranda
PostPosted: Fri Aug 08, 2003 6:27 am    Post subject: Reply with quote

Disciple

Joined: 21 Nov 2002
Posts: 196
Location: Dublin, Ireland

Copying the message header instead of the entire message

Code:
DECLARE I INTEGER;
SET I = 1;
WHILE I < CARDINALITY(InputRoot.*[]) DO
   SET OutputRoot.*[I] = InputRoot.*[I];
   SET I=I+1;
END WHILE;

you'll have all the tags in your OutputRoot tree. So, just compare the values and populates the output as you want!
_________________
Warm Regards,
EM
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

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