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 » OutputRoot.MRM will not go to Output queue

Post new topic  Reply to topic
 OutputRoot.MRM will not go to Output queue « View previous topic :: View next topic » 
Author Message
mmarq
PostPosted: Thu Nov 14, 2002 1:53 pm    Post subject: OutputRoot.MRM will not go to Output queue Reply with quote

Acolyte

Joined: 19 Sep 2002
Posts: 74
Location: Newton, MA

I have a compute node doing the following:

set OutputRoot.Properties.MessageDomain = 'MRM';
set OutputRoot.Properties.MessageFormat = 'MRM';


-- Place contact admin records into the environment tree
declare aSpace character;
declare CF reference to Environment.Variables.CommonFormat;

-- set contact admin record up as a straight mapping per PA address (up to two), in
-- order that Trillium expects

set "OutputRoot"."MRM"."contact admin"."sourceNm" = CF.contact admin.sourceNm;
set "OutputRoot"."MRM"."contact admin"."key1" = CF.contact admin.key1;
set "OutputRoot"."MRM"."contact admin"."key2" = CF.contact admin.key2;
set "OutputRoot"."MRM"."contact admin"."key3" = CF.contact admin.key3;
set "OutputRoot"."MRM"."contact admin"."key4" = CF.contact admin.key4;
set "OutputRoot"."MRM"."contact admin"."key5" = CF.contact admin.key5;
set "OutputRoot"."MRM"."contact admin"."tinType" = CF.contact admin.tinType;
set "OutputRoot"."MRM"."contact admin"."tin" = CF.contact admin.tin;
set "OutputRoot"."MRM"."contact admin"."naLine1" = CF.contact admin.naLine1;
set "OutputRoot"."MRM"."contact admin"."naLine2" = CF.contact admin.naLine2;
set "OutputRoot"."MRM"."contact admin"."naLine3" = CF.contact admin.naLine3;
set "OutputRoot"."MRM"."contact admin"."naLine4" = CF.contact admin.naLine4;
set "OutputRoot"."MRM"."contact admin"."naLine5" = CF.contact admin.naLine5;
set "OutputRoot"."MRM"."contact admin"."naLine6" = CF.contact admin.naLine6;
set "OutputRoot"."MRM"."contact admin"."naLine7" = CF.contact admin.naLine7;
set "OutputRoot"."MRM"."contact admin"."naLine8" = CF.contact admin.naLine8;
set "OutputRoot"."MRM"."contact admin"."naLine9" = CF.contact admin.naLine9;
set "OutputRoot"."MRM"."contact admin"."naLine10" = CF.contact admin.naLine10;
set "OutputRoot"."MRM"."contact admin"."prefix1" = CF.contact admin.prefix1;
set "OutputRoot"."MRM"."contact admin"."prefix2" = CF.contact admin.prefix2;
set "OutputRoot"."MRM"."contact admin"."generation" = CF.contact admin. generation;


I get the following exception:

Exception Captured:
(
(0x1000000)RecoverableException = (
(0x3000000)File = 'F:\build\S210_P\src\DataFlowEngine\ImbDataFlowNode.cpp'
(0x3000000)Line = 536
(0x3000000)Function = 'ImbDataFlowNode::createExceptionList'
(0x3000000)Type = 'ComIbmMQOutputNode'
(0x3000000)Name = '8ae90e84-f100-0000-0080-a6bb25bdd760.75097c75-f100-0000-0080-a6bb25bdd760'
(0x3000000)Label = 'CDB.Realtime Update Main.CDB.Trillium Call1.Xmit Rec To Trillum'
(0x3000000)Text = 'Node throwing exception'
(0x3000000)Catalog = 'WMQIv210'
(0x3000000)Severity = 3
(0x3000000)Number = 2230
(0x1000000)ParserException = (
(0x3000000)File = 'F:\build\S210_P\src\MTI\MTIforBroker\MtiImbParser2\MtiImbParser.cpp'
(0x3000000)Line = 1133
(0x3000000)Function = 'MtiImbParser::refreshBitStreamFromElements - 9 par'
(0x3000000)Type = 'ComIbmMQInputNode'
(0x3000000)Name = 'b67349e4-f000-0000-0080-f214b96ba085'
(0x3000000)Label = 'CDB.Realtime Update Main.CLL Key Xmit'
(0x3000000)Text = 'RM Descriptor Not Found.'
(0x3000000)Catalog = 'WMQIv210'
(0x3000000)Severity = 3
(0x3000000)Number = 5313
(0x1000000)Insert = (
(0x3000000)Type = 5
(0x3000000)Text = 'rmLoadWorker'
)
)
)
)

I just want what I'm setting up in the OutputRoot to go the the queue specific in the MQOutput node

Thanks,
Melissa
_________________
M Marquis
Back to top
View user's profile Send private message Visit poster's website AIM Address
kwelch
PostPosted: Thu Nov 14, 2002 2:28 pm    Post subject: Reply with quote

Master

Joined: 16 May 2001
Posts: 255

Melissa,

Should you have set OutputRoot.Properties.MessageFormat = 'CWF'; instead of set OutputRoot.Properties.MessageFormat = 'MRM'; ?

Did you deploy your messageset?

Karen
Back to top
View user's profile Send private message Send e-mail
mmarq
PostPosted: Thu Nov 14, 2002 2:45 pm    Post subject: Reply Reply with quote

Acolyte

Joined: 19 Sep 2002
Posts: 74
Location: Newton, MA

Thanks for the reply.
I'd like the output just to go out as a string. How do I do that?
_________________
M Marquis
Back to top
View user's profile Send private message Visit poster's website AIM Address
kwelch
PostPosted: Thu Nov 14, 2002 2:59 pm    Post subject: Reply with quote

Master

Joined: 16 May 2001
Posts: 255

Based on your code you are using a fixed format defined in the MRM correct? Is this code after other code, as I see you are moving things from the Environment? You have to check environment and message in the advanced tab of the compute node for that too.

I also noticed you didn't specify your messagset. Usually for output that is going to be MRM, you have something like the following in your code:

SET OutputRoot.Properties.MessageSet = 'DPHNBDS08E001';
SET OutputRoot.Properties.MessageType = 'out_msg';
SET OutputRoot.Properties.MessageFormat = 'CWF';

Just some suggestions. I wasn't sure what you meant by just string on the output. Hope this helps.

Karen
Back to top
View user's profile Send private message Send e-mail
mmarq
PostPosted: Fri Nov 15, 2002 8:24 am    Post subject: Reply Reply with quote

Acolyte

Joined: 19 Sep 2002
Posts: 74
Location: Newton, MA

Thanks for the reply.

I've got the message hitting the queue but it is empty.

I have the compute node passing 'All' in the advanced tab.

I have Copy Entire Message. I know there is data in the Environment.Variables area as I can see it in the trace.

The code looks like:



SET OutputRoot.Properties.MessageSet = 'DR8ES08072001';
SET OutputRoot.Properties.MessageDomain = 'MRM';
SET OutputRoot.Properties.MessageType = 'contact admin';
SET OutputRoot.Properties.MessageFormat = 'CWF';

-- Place contact admin records into the environment tree
declare aSpace character;
declare CF reference to Environment.Variables.CommonFormat;


DECLARE MyOutput REFERENCE TO OutputRoot.MRM;


-- set contact admin record up as a straight mapping per PA address (up to two), in
-- order that Trillium expects

set MyOutput.sourceNm = CF.contact admin.sourceNm;
set MyOutput.key1 = CF.contact admin.key1;
set MyOutput.key2 = CF.contact admin.key2;
set MyOutput.key3 = CF.contact admin.key3;
set MyOutput.key4 = CF.contact admin.key4;
set MyOutput.key5 = CF.contact admin.key5;
set MyOutput.tinType = CF.contact admin.tinType;
set MyOutput.tin = CF.contact admin.tin;
set MyOutput.naLine1 = CF.contact admin.naLine1;
set MyOutput.naLine2 = CF.contact admin.naLine2;
set MyOutput.naLine3 = CF.contact admin.naLine3;
set MyOutput.naLine4 = CF.contact admin.naLine4;
set MyOutput.naLine5 = CF.contact admin.naLine5;
set MyOutput.naLine6 = CF.contact admin.naLine6;
set MyOutput.naLine7 = CF.contact admin.naLine7;
set MyOutput.naLine8 = CF.contact admin.naLine8;
set MyOutput.naLine9 = CF.contact admin.naLine9;
set MyOutput.naLine10 = CF.contact admin.naLine10;
set MyOutput.prefix1 = CF.contact admin.prefix1;
set MyOutput.prefix2 = CF.contact admin.prefix2;
set MyOutput.generation = CF.contact admin. generation;
set MyOutput.suffix1 = CF.contact admin.suffix1;
set MyOutput.suffix2 = CF.contact admin.suffix2;
set MyOutput.suffix3 = CF.contact admin.suffix3;
set MyOutput.fgnAdrInd = CF.contact admin.fgnAdrInd;
set MyOutput.addressType = CF.contact admin.addressType;
set MyOutput.addressID = ' ';
set MyOutput.startDt = CF.contact admin.startDt;
set MyOutput.dob = CF.contact admin.dob;
set MyOutput.dod = CF.contact admin.dod;
set MyOutput.dcsdInd = CF.contact admin.dcsdInd;
set MyOutput.gender = CF.contact admin.gender;
set MyOutput.spousalInd = CF.contact admin.spousalInd;
set MyOutput.lastUpdateDt = CF.contact admin.lastUpdateDt;
set MyOutput.personalTitle = CF.contact admin.personalTitle;
set MyOutput.partyCapacity = CF.contact admin.partyCapacity;
set MyOutput.stateCopyCode = CF.contact admin.stateCopyCode;
set MyOutput.clientStatus = CF.contact admin.clientStatus;
set MyOutput.serviceType = CF.contact admin.serviceType;
set MyOutput.ownershipType = CF.contact admin.ownershipType;
set MyOutput.businessInd = CF.contact admin.businessInd;
set MyOutput.insertDt = CF.contact admin.insertDt;
set MyOutput.tinInvValueInd = CF.contact admin.tinInvValueInd;
set MyOutput.tinInvRangeInd = CF.contact admin.tinInvRangeInd;
set MyOutput.startDtInvInd = CF.contact admin.startDtInvInd;
set MyOutput.dobInvInd = CF.contact admin.dobInvInd;
set MyOutput.dodInvInd = CF.contact admin.dodInvInd;
set MyOutput.lastUpdDtInvInd = CF.contact admin.lastUpdDtInvInd;
set MyOutput.insertDtInvInd = CF.contact admin.insertDtInvInd;
set MyOutput.tinInvFmtInd = CF.contact admin.tinInvFmtInd;
set MyOutput.taxInvTxt = CF.contact admin.taxInvTxt;
set MyOutput.startDtInvTxt = CF.contact admin.startDtInvTxt;
set MyOutput.dobInvTxt = CF.contact admin.dobInvTxt;
set MyOutput.dodInvTxt = CF.contact admin.dodInvTxt;
set MyOutput.lastUpdDateInvTxt = CF.contact admin.lastUpdDateInvTxt;
set MyOutput.insertDateInvTxt = CF.contact admin.insertDateInvTxt;
set MyOutput.tinTxt = CF.contact admin.tinTxt;
set MyOutput.partyType = CF.contact admin.partyType;
set MyOutput.partyID = ' ';
set MyOutput.firstNameChgInd = CF.contact admin.firstNameChgInd;
set MyOutput.MidNameChgInd = CF.contact admin.MidNameChgInd;
set MyOutput.LastNameChgInd = CF.contact admin.LastNameChgInd;
set MyOutput.tinChgInd = CF.contact admin.tinChgInd;
set MyOutput.line3ChgInd = CF.contact admin.line3ChgInd;
set MyOutput.line4ChgInd = CF.contact admin.line4ChgInd;
set MyOutput.line5ChgInd = CF.contact admin.line5ChgInd;
set MyOutput.line6ChgInd = CF.contact admin.line6ChgInd;
set MyOutput.prefix1ChgInd = CF.contact admin.prefix1ChgInd;
set MyOutput.suffix1ChgInd = CF.contact admin.suffix1ChgInd;
set MyOutput.fgnAdrChgInd = CF.contact admin.fgnAdrChgInd;
set MyOutput.addressTypeChgInd = CF.contact admin.addressTypeChgInd;
set MyOutput.dobChgInd = CF.contact admin.dobChgInd;
set MyOutput.dodChgInd = CF.contact admin.dodChgInd;
set MyOutput.genderChgInd = CF.contact admin.genderChgInd;
set MyOutput.spousalChgInd = CF.contact admin.spousalChgInd;
set MyOutput.personalTitleChgInd = CF.contact admin.personalTitleChgInd;
set MyOutput.cityChgInd = CF.contact admin.cityChgInd;
set MyOutput.stateChgInd = CF.contact admin.stateChgInd;
set MyOutput.postalCodeChgInd = CF.contact admin.postalCodeChgInd;
set MyOutput.generationChgInd = CF.contact admin.generationChgInd;
set MyOutput.clientType = CF.contact admin.clientType;
set MyOutput.clientTypeChgInd = CF.contact admin.clientTypeChgInd;
set MyOutput.descChgInd = CF.contact admin.descChgInd;
set MyOutput.addressType2ChgInd = CF.contact admin.addressType2ChgInd;
set MyOutput.addressType2 = CF.contact admin.addressType2;
set MyOutput.miscChgInd1 = CF.contact admin.miscChgInd1;
set MyOutput.miscChgInd2 = CF.contact admin.miscChgInd2;
set MyOutput.miscChgInd3 = CF.contact admin.miscChgInd3;
set MyOutput.miscChgTxt1 = CF.contact admin.miscChgTxt1;
set MyOutput.miscChgTxt2 = CF.contact admin.miscChgTxt2;
set MyOutput.trilliumFlag = 3; -- This is set to scenario 3 as we are only
-- doing adds.

set Environment.Variables.Outbound.contact admin = OutputRoot.MRM;



I never see Environment.Variables.Outbound. It places a message on the queue but it is of zero length. I know I have data in my CF.contact admin area as I see it in the trace file:



(0x1000000)contact admin = (
(0x3000000)key1 = 524720075
(0x3000000)sourceNm = 'P'
(0x3000000)partyID = -1
(0x3000000)partyType = 'P'
(0x3000000)naLine1 = 'MARIA SOPHIA TAYLORS'
(0x3000000)suffix1 = 'NA'
(0x3000000)firstNameChgInd = 'Y'
(0x3000000)MidNameChgInd = 'Y'
(0x3000000)LastNameChgInd = 'Y'
(0x3000000)generation = ''
(0x3000000)generationChgInd = ' '
(0x3000000)personalTitle = ''
(0x3000000)personalTitleChgInd = ' '
(0x3000000)prefix1 = 'NA'
(0x3000000)prefix1ChgInd = 'N'
(0x3000000)suffix1ChgInd = ' '
(0x3000000)dob = DATE '1976-08-01'
(0x3000000)dobChgInd = 'Y'
(0x3000000)dod = DATE '0001-01-01'
(0x3000000)dodChgInd = 'Y'
(0x3000000)dodInvInd = ''
(0x3000000)gender = 'F'
(0x3000000)genderChgInd = 'Y'
(0x3000000)spousalInd = 'S'
(0x3000000)spousalChgInd = 'Y'
(0x3000000)descChgInd = ''
(0x3000000)clientType = ''
(0x3000000)clientTypeChgInd = ''
....

So, I get a message on the queue but no data - any clues?

Thanks,
Melissa
_________________
M Marquis
Back to top
View user's profile Send private message Visit poster's website AIM Address
kwelch
PostPosted: Fri Nov 15, 2002 9:01 am    Post subject: Reply with quote

Master

Joined: 16 May 2001
Posts: 255

have you tried it without using references? Just a thought, if you are sure your data is in Environment.Variables try for one field to use the full names and see if it works.

set OutputRoot.MRM.sourceNm = Environment.Variables.CommonFormat.contact admin.sourceNm;

If you are using MRM for your output, I am surprised it would let you Put a no length message! I ususally get errors if I don't format every field defined in the MRM.

Good Luck!

Karen
Back to top
View user's profile Send private message Send e-mail
mmarq
PostPosted: Fri Nov 15, 2002 10:24 am    Post subject: Reply Reply with quote

Acolyte

Joined: 19 Sep 2002
Posts: 74
Location: Newton, MA

Thanks for all your replies.

If I want my messages to go out as variable length strings - what format should I use and/or specify in OutputRoot.Properties.MessageFormat?

Do I have to use MRM to do this?

THanks,
Melissa
_________________
M Marquis
Back to top
View user's profile Send private message Visit poster's website AIM Address
kwelch
PostPosted: Fri Nov 15, 2002 11:00 am    Post subject: Reply with quote

Master

Joined: 16 May 2001
Posts: 255

I am not sure exactly what would be the best format for you to use. Have you looked at Ch. 3 in the Working with Messages Manual? Maybe this will help clear a few things up for you. If not .....post some more detail of what you are trying to do and I will try to help.

Karen
Back to top
View user's profile Send private message Send e-mail
mmarq
PostPosted: Fri Nov 15, 2002 11:16 am    Post subject: Reply Reply with quote

Acolyte

Joined: 19 Sep 2002
Posts: 74
Location: Newton, MA

Thanks again for the reply.

Yes, I've been pouring through the 'Working with Messages' manual.

Soo, I have the following information set up in my Environment tree that has been through a series of data transformations:


(0x1000000)contact admin = (
(0x3000000)key1 = 524720075
(0x3000000)sourceNm = 'P'
(0x3000000)partyID = -1
(0x3000000)partyType = 'P'
(0x3000000)naLine1 = 'MARIA SOPHIA TAYLORS'
(0x3000000)suffix1 = 'NA'
(0x3000000)firstNameChgInd = 'Y'
(0x3000000)MidNameChgInd = 'Y'
(0x3000000)LastNameChgInd = 'Y'
(0x3000000)dob = DATE '1976-08-01'
...

I want to take that information and send it to an output queue so it will look like:

524720075 -1 P MARIA SOPHIA TAYLORS NA Y Y Y DATE '1976-08-01'

Basically one record in ASCII format on the queue.

In MRM - I get TDF, CWF, XML or PDF. None of those are what I need. Then I have XML, JMS, BLOB - we are not in a JMS env, XML is definitely not it and BLOB is a bunch of bytes.

My basic question I guess is, is there *any* way to put strings out on a queue from MQSI?

Thanks much for your reply. This has really got me going nuts.
-M
_________________
M Marquis
Back to top
View user's profile Send private message Visit poster's website AIM Address
kwelch
PostPosted: Fri Nov 15, 2002 11:41 am    Post subject: Reply with quote

Master

Joined: 16 May 2001
Posts: 255

My understanding is it won't be the same elements every time either is that correct? It could be 1 or all or some unknown combination? Why won't tagged delimited work for you? I have not used it but thought maybe it would work for you.
Back to top
View user's profile Send private message Send e-mail
mmarq
PostPosted: Fri Nov 15, 2002 12:16 pm    Post subject: Reply Reply with quote

Acolyte

Joined: 19 Sep 2002
Posts: 74
Location: Newton, MA

The output data is not tagged or delimited with anything so it does not seem appropriate for use. It is variable length (non-delimeted) data.

I can't believe how hard it is to get a string to write out to an output queue.
_________________
M Marquis
Back to top
View user's profile Send private message Visit poster's website AIM Address
kirani
PostPosted: Sat Nov 16, 2002 10:35 am    Post subject: Reply with quote

Jedi Knight

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

Melissa,

If you want to output just a string message then use BLOB domain. First create a string data from Environment tree and then use ESQL similar to following:

Code:

SET OutputRoot."BLOBL"."BLOB" = CAST (stringvar as BLOB CCSID InputRoot.Properties.CodedCharSetId);


Make sure you use CAST function to cast numeric fields to string before combining them.
_________________
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
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » OutputRoot.MRM will not go to Output queue
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.