|
From: Steve B. <st...@te...> - 2006-11-04 02:49:40
|
Alvin,
I recommend using the NewOrderSingle.NoPartyIDs rather than the
generic Group. The C++ code does create an ordering for the delimeter
field using the constructor you're using and QFJ does not. We can
change tnat behavior to be consistent with the C++ constructor but
this usage of the generic Group will be dangerous to use in both C++ and
QFJ. The C++ code happens to order the non-delimeter fields in key order,
which are tag numbers in this case. You are fortunate to have two
non-delimeter tags where the tag number ordering and the group field
ordering are the same. In general, you probably wouldn't be so lucky
since the ordering of the non-delimeter fields is undefined from an
API perspective when using this Group constructor.
If users want to create a generic Group rather than using the
message-specific groups we should probably create a constructor that
takes a group field tag number and a data dictionary and let the
constructor build the correct ordering criteria and determine the
delimeter field from the dictionary. It seems safer.
Oren, any comments?
Steve
-----Original Message-----
From: Alvin Wang [mailto:AW...@FF...]
Sent: Friday, November 03, 2006 2:22 PM
To: qui...@li...
Cc: qui...@li...;
qui...@li...
Subject: repeating group problem
Group partyGroup = new Group(NoPartyIDs.FIELD, PartyID.FIELD);
partyGroup.setField(new PartyID("TraderName"));
partyGroup.setField(new
PartyIDSource(PartyIDSource.GENERALLY_ACCEPTED_MARKET_PARTICIPANT_IDENTIFIER
));
partyGroup.setField(new PartyRole(11));
order.addGroup(partyGroup);
We suspect that Quickfix/J does not create the right order, while QF's java
wrapper can with the same code above.
Quickfix/J:
453=1|447=C|448=TraderName|452=11 (448 should be the group delimiter)
QF's Java:
453=1|448=TraderName|447=C|452=11
Pls take a look. If this is true, it is a show stopper.
thanks
****************************************************************************
***
This e-mail message is intended solely for the use of the addressee.
The message may contain information that is privileged and
confidential.
Disclosure to anyone other than the intended recipient is prohibited.
If you are not the intended recipient, please do not disseminate,
distribute or copy this communication, by e-mail or otherwise. Instead,
please notify us immediately by return e-mail(including the original
message with your reply) and then delete and discard all copies of the
message. We have taken precautions to minimize the risk of transmitting
software viruses but nevertheless advise you to carry out your own
virus checks on any attachment to this message. We accept
no liability for any loss or damage caused by software viruses.
****************************************************************************
***
|