tag 602

Imported from previous forum

When I try to send the following repo trade message I’m receiving an error see below

2009-12-07 11:32:44,736 [MessageListenerThread - ApexOutbound] INFO fixInterface - toApp called, msg: 8=FIX.4.4
9=211
35=8
34=16
49=APXTEST
52=20091207-16:32:44
56=PH3TEST
1=94000000
54=B
55=99REPO00N
64=2009-12-04
75=2009-12-04
118=0.1
150=F
158=1
541=2009-12-07
544=6
12000=91REPO05
12009=O
12011=
12016=V
555=1
602=9128277J5
10=151
session ID: FIX.4.4:APXTEST->PH3TEST

I get the following response from our FIX engine:

2009-12-07 11:32:45,299 [QFJ Message Processor] INFO fixInterface - toAdmin called, msg: 8=FIX.4.4
9=121
35=3
34=17
49=APXTEST
52=20091207-16:32:45
56=PH3TEST
45=19
58=Out of order repeating group members
371=602
372=8
373=15
10=202
session ID: FIX.4.4:APXTEST->PH3TEST

This happens even if I include the LegPrice and LegQuantity (I have left them out here, for the sake of clarity). Any ideas?

[ original email was from Harish Kamaley - harish.kamaley@wipro.com ]
Hi

If you use repeating group, the first field of the repeating group is required.
The repeating group 555(NoLegs) must contain 600(LegSymbol), since tag 600 is the first tag which is missing in the repeating group.

Also, Please refer the FIX 4.4 Spec, Volume1, Page 18 .

Regards
Harish.

When I try to send the following repo trade message I’m receiving an
error see below

2009-12-07 11:32:44,736 [MessageListenerThread - ApexOutbound] INFO
fixInterface - toApp called, msg: 8=FIX.4.4 9=211 35=8 34=16 49=APXTEST
52=20091207-16:32:44 56=PH3TEST 1=94000000 54=B 55=99REPO00N 64=2009-12-
04 75=2009-12-04 118=0.1 150=F 158=1 541=2009-12-07 544=6
12000=91REPO05 12009=O 12011= 12016=V 555=1 602=9128277J5 10=151
session ID: FIX.4.4:APXTEST->PH3TEST

I get the following response from our FIX engine:

2009-12-07 11:32:45,299 [QFJ Message Processor] INFO fixInterface -
toAdmin called, msg: 8=FIX.4.4 9=121 35=3 34=17 49=APXTEST 52=20091207-
16:32:45 56=PH3TEST 45=19 58=Out of order repeating group members
371=602 372=8 373=15 10=202 session ID: FIX.4.4:APXTEST->PH3TEST

This happens even if I include the LegPrice and LegQuantity (I have left
them out here, for the sake of clarity). Any ideas?

[ original email was from Bivas Mishra - bivas.mishra@wipro.com ]
Hi,

In addition to Harish’s comments below, you might want to check the “Req’d” status for the OrderQtyData Component block. Tag 600 in the InstrumentLeg repeating block is dependent on the Reqd. status of the above mentioned component.

You can refer FIX 4.4 specs-Vol-1 (fix-44_VOL-1_w_Errata_20030618.doc), Page-43

Regards,
Bivas

Hi

If you use repeating group, the first field of the repeating group is
required. The repeating group 555(NoLegs) must contain 600(LegSymbol),
since tag 600 is the first tag which is missing in the repeating group.

Also, Please refer the FIX 4.4 Spec, Volume1, Page 18 .

Regards Harish.

When I try to send the following repo trade message I’m receiving an
error see below

2009-12-07 11:32:44,736 [MessageListenerThread - ApexOutbound] INFO
fixInterface - toApp called, msg: 8=FIX.4.4 9=211 35=8 34=16
49=APXTEST 52=20091207-16:32:44 56=PH3TEST 1=94000000 54=B
55=99REPO00N 64=2009-12- 04 75=2009-12-04 118=0.1 150=F 158=1 541=2009-12-
07 544=6 12000=91REPO05 12009=O 12011= 12016=V 555=1 602=9128277J5
10=151 session ID: FIX.4.4:APXTEST->PH3TEST

I get the following response from our FIX engine:

2009-12-07 11:32:45,299 [QFJ Message Processor] INFO fixInterface -
toAdmin called, msg: 8=FIX.4.4 9=121 35=3 34=17 49=APXTEST 52=20091207-
16:32:45 56=PH3TEST 45=19 58=Out of order repeating group members
371=602 372=8 373=15 10=202 session ID: FIX.4.4:APXTEST->PH3TEST

This happens even if I include the LegPrice and LegQuantity (I have
left them out here, for the sake of clarity). Any ideas?

I believe you have found a known error in the FIX 4.4 spec. The text in the spec immediately below a common component always refers to this component. It should read “*** = Required status should match “Req’d” setting for component block in message definition”. The reference to OrderQtyData is wrong. It has no bearing on InstrumentLeg and the presence of any of its fields.

If you look at the FIX 5.0 spec you can see that the reference has been corrected.

The comment is present for every common component block to indicate that only the message using this block will define whether the block is required or not. The block itself does not have a “Req’d” value per se.

In a repeating group, the first tag is required in the tag=value syntax (not so in FIXML) to allow parsing. There are no explicit delimiters between instances of the repeating group so that this is the way to identify the beginning of a new repeating group instance.

is non-repeating, i.e. there is no such implicit requirement. However, in the case raised in this thread, it is about being the first element of the component which is a repeating group. Hence the first field of (LegSymbol) is the first field of this repeating group and thus becomes required in the tag=value syntax.

I hope this helps to clarify the issue, including the background for the requirements around repeating groups in the tag=value syntax.

Hanno.

Hi,

In addition to Harish’s comments below, you might want to check the
“Req’d” status for the OrderQtyData Component block. Tag 600 in the
InstrumentLeg repeating block is dependent on the Reqd. status of the
above mentioned component.

You can refer FIX 4.4 specs-Vol-1 (fix-44_VOL-
1_w_Errata_20030618.doc), Page-43

Regards, Bivas