Author |
Message
|
javaforvivek |
Posted: Thu Mar 03, 2005 9:46 am Post subject: Strange behaviour of RCD Node -- Urgent |
|
|
 Master
Joined: 14 Jun 2002 Posts: 282 Location: Pune,India
|
I have a MRM message as input. I add some MQRFH2 header info to this message in my compute node (BuildMQRFH2_Compute) using ESQL.
So that the Message looks like this:
Message
|
Properties
|
MQMD
|
MRM
|
MQRFH2
The surprising thing is that, MQRFH2 part appears after MRM and not before it.
Sample of ESQL code that I use to add MQRFH2 is given below:
Code: |
SET OutputRoot.MQRFH2.usr.server = ServerName;
SET OutputRoot.MQRFH2.usr.database = CompanyDb;
SET OutputRoot.MQRFH2.usr.user = Username;
SET OutputRoot.MQRFH2.usr.passwd = Password;
|
then I try to change the domain of the message from MRM to BLOB using RCD.
The strange part is that it changes my MQRFH2 to BLOB but the MRM remains as it is.
My Message now looks like this:
Message
|
Properties
|
MQMD
|
MRM
|
BLOB
Can somebody tell me what's gone wrong here?? _________________ Vivek
------------------------------------------------------
...when you have eliminated the impossible, whatever remains, however improbable, must be the truth. |
|
Back to top |
|
 |
javaforvivek |
Posted: Thu Mar 03, 2005 9:53 am Post subject: |
|
|
 Master
Joined: 14 Jun 2002 Posts: 282 Location: Pune,India
|
I just forgot to mention that I'm on WBIMB 5 CSD 4 _________________ Vivek
------------------------------------------------------
...when you have eliminated the impossible, whatever remains, however improbable, must be the truth. |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Mar 03, 2005 10:05 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Fields and subtrees appear in the order they are created - unless they are created in a specific place or the order is controlled by the MRM. The MRM can only control the order of user defined messages and only in certain conditions.
So if your MQRFH2 is appearing after your message body, it is because YOU put it there.
And the RCD appears to work on the assumption that the Body is the last child of Root. Which in your case is the MQRFH2 - because that's where you put it. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
JT |
Posted: Thu Mar 03, 2005 10:50 am Post subject: |
|
|
Padawan
Joined: 27 Mar 2003 Posts: 1564 Location: Hartford, CT.
|
After creating the MQRFH2 header, insert the following lines to position it correctly:
Code: |
DECLARE mqrfh2Ref REFERENCE TO OutputRoot.MQRFH2;
DETACH mqrfh2Ref;
ATTACH mqrfh2Ref TO OutputRoot.[2] AS NEXTSIBLING; |
|
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Mar 04, 2005 5:21 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
JT wrote: |
After creating the MQRFH2 header, |
Or, you know, create it at the right place. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
JT |
Posted: Fri Mar 04, 2005 5:26 am Post subject: |
|
|
Padawan
Joined: 27 Mar 2003 Posts: 1564 Location: Hartford, CT.
|
|
Back to top |
|
 |
javaforvivek |
Posted: Mon Mar 07, 2005 6:00 am Post subject: |
|
|
 Master
Joined: 14 Jun 2002 Posts: 282 Location: Pune,India
|
Thanks friends.
it's working now..
I forgot that RFH2 is the part of payload.. _________________ Vivek
------------------------------------------------------
...when you have eliminated the impossible, whatever remains, however improbable, must be the truth. |
|
Back to top |
|
 |
|