|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
[URGENT]Problem with generation dynamic MRM |
« View previous topic :: View next topic » |
Author |
Message
|
leongor |
Posted: Thu Sep 25, 2003 6:47 am Post subject: [URGENT]Problem with generation dynamic MRM |
|
|
 Master
Joined: 13 May 2002 Posts: 264 Location: Israel
|
Hello!
WE are working with WMQI 2.1 SP5 on NT
In our message flow we tried to create the following MRM:
1. Header which contain 5 fixed length fields
2. Compound format with repeating lines (also fixed length). Number of lines can be from 1 to 10000.
We've tried to use CWF and TDS formats as well.
The message is generated in correct format till writing to output node.
CWF generates header and single line.
TDS format falied till we defined default value for line element. Then message was generated, but with number of lines as maximum in format (10000).
We are using ordered set / closed for sub-formats and sequence / closed for main type.
Is WMQI supports dynamic formats as described?
Thanks for any reply. _________________ Regards.
Leonid.
IBM Certified MQSeries Specialist.
Last edited by leongor on Sun Sep 28, 2003 4:09 am; edited 1 time in total |
|
Back to top |
|
 |
EddieA |
Posted: Thu Sep 25, 2003 11:46 am Post subject: |
|
|
 Jedi
Joined: 28 Jun 2001 Posts: 2453 Location: Los Angeles
|
Is there a field anywhere which says how may repeating lines there are. If not, then you cannot use CWF. It has to have either a fixed number of repeats or a field which contains the number.
I believe that this IS possible with TDS, but don't have an example I can look at.
Cheers, _________________ Eddie Atherton
IBM Certified Solution Developer - WebSphere Message Broker V6.1
IBM Certified Solution Developer - WebSphere Message Broker V7.0 |
|
Back to top |
|
 |
kirani |
Posted: Thu Sep 25, 2003 4:35 pm Post subject: |
|
|
Jedi Knight
Joined: 05 Sep 2001 Posts: 3779 Location: Torrance, CA, USA
|
Yes, it's possible to do this with TDS wire format. I have used this in one place and it works perfectly. _________________ 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 |
|
 |
leongor |
Posted: Fri Sep 26, 2003 4:35 am Post subject: |
|
|
 Master
Joined: 13 May 2002 Posts: 264 Location: Israel
|
Hi Kiran,
can you give some sample maybe. On this step we get empty message in output queue.
There are no errors in trace with debug option either. _________________ Regards.
Leonid.
IBM Certified MQSeries Specialist. |
|
Back to top |
|
 |
leongor |
Posted: Sun Sep 28, 2003 4:28 am Post subject: |
|
|
 Master
Joined: 13 May 2002 Posts: 264 Location: Israel
|
Hi ALL!
We've unsuccessfully tried to create output message using following definition
Code: |
out_message CT, Sequence, closed FixedLength
- http_request_header : CT, Ordered, (DES=Fixed Length)
- garage_number Element (FixedLength = 3)
- station_code Element (FixedLength = 2)
- operation_code Element (FixedLength = 3)
- body_type : CT, Ordered, (DES=Fixed Length, Repeat=Yes min 1 max 10000)
- body1 (FixedLength = 5)
- body2 (FixedLength = 5)
|
When we use that MRM for input parsing, the debuger does not showing "http_request_header" and "body_type" levels - only elements.
Also access to input fields is possible only as foolowing: "InputBody"."operation_code" exsept "InputBody"."http_request_header"."operation_code".
This is my code, when I tried to create output using constants, but I've got empty output message.
Code: |
SET OutputRoot.Properties.MessageDomain = 'MRM';
SET OutputRoot.Properties.MessageSet = 'DRK5VG807A001';
SET OutputRoot.Properties.MessageType = 'out_message';
SET OutputRoot.Properties.MessageFormat = 'TDS_HTTP';
SET OutputRoot.MQMD = InputRoot.MQMD;
SET "OutputRoot"."MRM"."http_request_header"."garage_number" = 'aaa';
SET "OutputRoot"."MRM"."http_request_header"."station_code" = 'bb';
SET "OutputRoot"."MRM"."http_request_header"."operation_code" = 'ccc';
set "OutputRoot"."MRM"."body_type"[1]."body1" = 'aaaaa';
set "OutputRoot"."MRM"."body_type"[1]."body2" = '11111';
set "OutputRoot"."MRM"."body_type"[2]."body1" = 'bbbbb';
set "OutputRoot"."MRM"."body_type"[2]."body2" = '22222';
set "OutputRoot"."MRM"."body_type"[3]."body1" = 'ccccc';
set "OutputRoot"."MRM"."body_type"[3]."body2" = '33333';
|
I tried to use default values, data pattern and minimum length with same empty result.
What's wrong here? _________________ Regards.
Leonid.
IBM Certified MQSeries Specialist. |
|
Back to top |
|
 |
leongor |
Posted: Wed Oct 22, 2003 11:51 pm Post subject: |
|
|
 Master
Joined: 13 May 2002 Posts: 264 Location: Israel
|
If somebody knows when we ca dounload working examples of parsing input and output MRM?
Actually we have 2 separated problems using TDS format.
1. Generation output MRM message.
The problem appears when we try to create dynamic output message (repeating lines 1-1000, where each line is fixed length format).
The output mesage is empty.
2. Parsing inbound MRM.
Uor inbound format is fixed length MRM.
We'll add some header with 3 fields:
SET "OutputRoot"."MRM"."HEADER"."FIELD1" = "InputBody"."ZITQVEND"."Header"."LIFNR";
SET "OutputRoot"."MRM"."HEADER"."FIELD2" = "InputBody"."ZITQVEND"."Header"."FIELD1";
SET "OutputRoot"."MRM"."HEADER"."FIELD3" = "InputBody"."ZITQVEND"."Header"."FIELD2";
SET CNT= CARDINALITY("InputBody"."ZITQVEND"."Body"."Record"[]);
WHILE K<=CNT DO
SET "OutputRoot"."MRM"."REC_TYPE"[K]."VENDOR_NUM" = "InputBody"."ZITQVEND"."Body"."Record"[K]."LIFNR";
SET "OutputRoot"."MRM"."REC_TYPE"[K]."VENDOR_NAME" = "InputBody"."ZITQVEND"."Body"."Record"[K]."NAME1";
SET "OutputRoot"."MRM"."REC_TYPE"[K]."HOUSE_NUM" = "InputBody"."ZITQVEND"."Body"."Record"[K]."STRAS";
END WHILE;
I'm never able to get CARDINALITY("InputBody"."ZITQVEND"."Body"."Record"[]) or other simple format - only CARDINALITY("InputBody"."LIFNR"[]).
When I open the flow in debug mode (or trace) - I cannot see MRM hierarchy, but only field on the same level.
If I have fields with same name (like "LIFNR" in my example) on different levels, I'm not able to know on which level it exists.
I hope that it is not a "bug", but only our missunderstanding of TDS. _________________ Regards.
Leonid.
IBM Certified MQSeries Specialist. |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
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
|
|
|
|