Author |
Message
|
ramnagab |
Posted: Sat Dec 04, 2004 3:18 pm Post subject: Fan out |
|
|
Apprentice
Joined: 14 Sep 2004 Posts: 46
|
Hi
Can we use the fan out node by itself or we should add aggregate reply node to it ?
in other way, can we use fan out node and put the reply in mutiple output queues and do not use aggregate reply at all ?
Thanks |
|
Back to top |
|
 |
JT |
Posted: Sat Dec 04, 2004 4:59 pm Post subject: |
|
|
Padawan
Joined: 27 Mar 2003 Posts: 1564 Location: Hartford, CT.
|
If your requirement is to send a message to multiple queues, try using the DestinationList function.
Code: |
SET OutputLocalEnvironment.Destination.MQ.DestinationData[1].queueName = 'QueueA';
SET OutputLocalEnvironment.Destination.MQ.DestinationData[1].queueManagerName = 'Qmgr';
SET OutputLocalEnvironment.Destination.MQ.DestinationData[2].queueName = 'QueueB';
SET OutputLocalEnvironment.Destination.MQ.DestinationData[2].queueManagerName = 'Qmgr'; |
You'll also need to modify the Destination Mode parameter on the Advanced tab of the MQOutput node to Destination List. |
|
Back to top |
|
 |
ramnagab |
Posted: Sat Dec 04, 2004 5:31 pm Post subject: route to label |
|
|
Apprentice
Joined: 14 Sep 2004 Posts: 46
|
can we use route to label node ? what is the difference between the route to label node and the code approach using the Destination List . |
|
Back to top |
|
 |
jefflowrey |
Posted: Sat Dec 04, 2004 7:57 pm Post subject: Re: route to label |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
ramnagab wrote: |
can we use route to label node ? what is the difference between the route to label node and the code approach using the Destination List . |
Route to Label only works inside a flow.
The MQ.DestinationData list is used by the MQOutput node to pass messages to queues.
It's the same as the difference between writing data to memory and writing it to a file. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
JT |
Posted: Sat Dec 04, 2004 8:00 pm Post subject: |
|
|
Padawan
Joined: 27 Mar 2003 Posts: 1564 Location: Hartford, CT.
|
Quote: |
can we use route to label node ? |
Yes.
Quote: |
what is the difference between the route to label node and the code approach using the Destination List . |
The DestinationList is most useful when the requirement is to send the same copy of a message to multiple queues. Use the RouteToLabel/Label nodes if the requirement is to have a single message flow responsible for the processing of a variety of output message formats that are destined for a variety of output queues/destinations. They provide the flexibility to dynamically determine the path a message takes through the message flow, based on content (i.e message content or database content). |
|
Back to top |
|
 |
ramnagab |
Posted: Sun Dec 05, 2004 9:30 am Post subject: NODE ESQL |
|
|
Apprentice
Joined: 14 Sep 2004 Posts: 46
|
hi
where can I write the following code
SET OutputLocalEnvironment.Destination.MQ.DestinationData[1].queueName = 'QueueA';
SET OutputLocalEnvironment.Destination.MQ.DestinationData[1].queueManagerName = 'Qmgr';
SET OutputLocalEnvironment.Destination.MQ.DestinationData[2].queueName = 'QueueB';
SET OutputLocalEnvironment.Destination.MQ.DestinationData[2].queueManagerName = 'Qmgr';
is MQoutput node has an ESQL module or I need to write it on the node before mqoutput (for example Compute node)
Thanks |
|
Back to top |
|
 |
JT |
Posted: Sun Dec 05, 2004 9:37 am Post subject: |
|
|
Padawan
Joined: 27 Mar 2003 Posts: 1564 Location: Hartford, CT.
|
No, the MQOutput node does not allow for writing ESQL code. You would set the Destination List parameters in a Compute node prior to the MQOutput node. |
|
Back to top |
|
 |
martinrydman |
Posted: Sun Dec 05, 2004 10:46 am Post subject: |
|
|
 Centurion
Joined: 30 Jan 2004 Posts: 139 Location: Gothenburg, Sweden
|
Also, don't forget to set the Compute Mode property on the Basic property page of the Compute node to LocalEnvironment and Message. If the compute node isn't the last compute node before the MQOutput node, all compute nodes downstream will have to set that property, as well as including
Code: |
SET OutputLocalEnvironment = InputLocalEnvironment;
|
in the Main FUNCTION of each compute node. LocalEnvironment works much the same way as the Root tree in this respect.
Good luck!
/Martin |
|
Back to top |
|
 |
EddieA |
Posted: Sun Dec 05, 2004 1:02 pm Post subject: |
|
|
 Jedi
Joined: 28 Jun 2001 Posts: 2453 Location: Los Angeles
|
Quote: |
all compute nodes downstream will have to set that property, as well as including
Code:
SET OutputLocalEnvironment = InputLocalEnvironment; |
No. You will only need to do this if you want to modify the LocalEnvironment in the Node. If you do not set the property to pass on LocalEnvionment, then it is automatically passed on unchanged.
Kinda counter intuative, but that's the way it works. Another way to look at it is, the node will always pass on unchanged any tree that you do not select in the properties. Setiing the property means that you have to build the output tree within the node.
Cheers, _________________ Eddie Atherton
IBM Certified Solution Developer - WebSphere Message Broker V6.1
IBM Certified Solution Developer - WebSphere Message Broker V7.0 |
|
Back to top |
|
 |
martinrydman |
Posted: Sun Dec 05, 2004 11:43 pm Post subject: |
|
|
 Centurion
Joined: 30 Jan 2004 Posts: 139 Location: Gothenburg, Sweden
|
Thanks for enlightening me! I guess I've come to my conclusion by
1) Discovering the property had to be set when manipulating the LocalEnvironment
2) Assuming I need to set it in all subsequent compute nodes
3) Again, discovering I need to do the assignment in those nodes (since I wrongly set the property)
Come to think of it, for the first time that darn property makes sense to me!
My first hint holds though
/Martin |
|
Back to top |
|
 |
|