Posted: Tue Jun 28, 2005 7:37 am Post subject: CWF to CWF problem...
Newbie
Joined: 11 Apr 2005 Posts: 8
Hi there,
I am using MQSI v.2.1 with CSD05. I am trying to transfer most of the data of the Input Message Set to the Output Message Set both of CWF type.
After the relevant computation is done in the Compute node the message goes to the correct MQOutput node (as it should be). The problem is that the data is not allocated to the output message set elements(fields) and instead I get NULLs (hex 00). The weird thing is that at the trace node in the log file I get the correct data as I wanted the message to be formatted in the first place:
Yes, I have created a message set for the output.
I can give you a sample of code from the Compute node to check if it is of any help :
DECLARE C INTEGER;
SET C = CARDINALITY(InputRoot.*[]);
DECLARE I INTEGER;
SET I = 1;
WHILE I < C DO
SET OutputRoot.*[I] = InputRoot.*[I];
SET I=I+1;
END WHILE;
SET OutputRoot.Properties.MessageSet = 'E5545BO082001';
SET OutputRoot.Properties.MessageType = 'LG950';
-- Enter SQL below this line. SQL above this line might be regenerated, causing any modifications to be lost.
-- Select Code page
SET OutputRoot.MQMD.CodedCharSetId = 737;
SET OutputRoot.MQRFH2 = NULL;
-- Set Output message type
SET OutputRoot.Properties.MessageSet = 'E5545BO082001';
SET OutputRoot.Properties.MessageType = 'LG950';
SET OutputRoot.Properties.MessageFormat = 'CWF';
-- Declarations
...
...
-- Copy Block 1
SET "OutputRoot"."MRM"."Block_1"."CH_L_AGGISTRO" = '{';
SET "OutputRoot"."MRM"."Block_1"."CH_BLOCK_ONE" = '1';
SET "OutputRoot"."MRM"."Block_1"."CH_ANO_KATO" = ':';
SET "OutputRoot"."MRM"."Block_1"."CH_R_AGGISTRO" = '}';
SET "OutputRoot"."MRM"."Block_1"."APLL_ID" = "InputBody"."Block_1"."APLL_ID";
SET "OutputRoot"."MRM"."Block_1"."SERV_ID" = "InputBody"."Block_1"."SERV_ID";
SET "OutputRoot"."MRM"."Block_1"."LT_ADD" = "InputBody"."Block_1"."LT_ADD";
SET "OutputRoot"."MRM"."Block_1"."SS_NUM" = "InputBody"."Block_1"."SS_NUM";
SET "OutputRoot"."MRM"."Block_1"."SEQ_NUM" = "InputBody"."Block_1"."SEQ_NUM";
-- Copy Block 2
SET "OutputRoot"."MRM"."Block_2"."CH_L_AGGISTRO" = '{';
SET "OutputRoot"."MRM"."Block_2"."CH_BLOCK_TWO" = '2';
SET "OutputRoot"."MRM"."Block_2"."CH_ANO_KATO" = ':';
SET "OutputRoot"."MRM"."Block_2"."CH_R_AGGISTRO" = '}';
SET "OutputRoot"."MRM"."Block_2"."IO_ID" = "InputBody"."Block_2"."IO_ID";
SET "OutputRoot"."MRM"."Block_2"."MT_TYPE" = "InputBody"."Block_2"."MT_TYPE";
SET "OutputRoot"."MRM"."Block_2"."REC_ADD" = '************';
SET "OutputRoot"."MRM"."Block_2"."MSG_PRI" = "InputBody"."Block_2"."MSG_PRI";
SET "OutputRoot"."MRM"."Block_2"."DEL_PRI" = "InputBody"."Block_2"."DEL_PRI";
SET "OutputRoot"."MRM"."Block_2"."OB_PER" = OVERLAY(' ' PLACING "InputBody"."Block_2"."OB_PER" FROM 1);
The above code has to do with the transformation of SWIFT message MT950.
Again the result is :
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