Re: [Quickfix-users] Conditionally required Field
Brought to you by:
orenmnero
From: Grant B. <gbi...@co...> - 2010-10-15 16:58:55
|
An even better fix would be to simply check if 200 is present before reading it. e.g. Wrap your read call in something like this: if (msg.isSetField(200)) { // read field } With that, it won't matter what SecurityType or any other field is. -Grant On Fri, Oct 15, 2010 at 11:53 AM, Joaquín Gracia <j.g...@ra...> wrote: > Hi Grant, > > You're right. That's exactly what is happening. > > I just added a bit of code to check if SecurityType is FUTURES before > reading field 200 and the problem is over. > > Thank you! > > > > > El 15/10/2010, a las 17:59, Grant Birchmeier escribió: > > Oh, sorry, I read your first mail wrong (obviously). > > I have two thoughts: > > 1) Does your data dictionary indicate that this field is optional and > not required? (It's probably fine.) > > 2) In my experience with the Java version of QF, if your app code > requests a field that isn't there, the exception that is thrown will > give a bahavior similar to what you are seeing. (I guess the > reasoning is: "it's not required in the dictionary, but the code is > requesting it, so it must be conditionally required!") So I suggest > checking your app code and making sure you aren't extracting field 200 > without first checking that it's there. > > -Grant > > > On Fri, Oct 15, 2010 at 10:49 AM, Joaquín Gracia <j.g...@ra...> wrote: >> >> Thanks for your reply, Grant. >> >> My broker is not requiring this field for stock trades, nor sending it in >> the execution report message. They say that somehow my fix engine is >> expecting this field eventhough it's not required. >> >> And that sounds logical to me because I send a NewOrderSingle message to >> buy >> a stock (no field 200), and an execution report comes in (no field 200 >> either) and quickfix rejects it because: "Conditionally Required Field >> Missing:200" >> >> >> El 15/10/2010, a las 17:38, Grant Birchmeier escribió: >> >> You should first check your broker's interface specification. >> >> Even though the base FIX specificaiton says the field is optional, >> your counterparty may mandate it. >> >> -Grant >> >> On Fri, Oct 15, 2010 at 10:22 AM, Joaquín Gracia <j.g...@ra...> wrote: >>> >>> QuickFIX Documentation: >>> http://www.quickfixengine.org/quickfix/doc/html/index.html >>> QuickFIX Support: http://www.quickfixengine.org/services.html >>> >>> Hi All, >>> >>> My quickfix engine is rejecting fill messages from my broker because >>> of a missing optional field. >>> >>> This particular field is the contract maturity, which is not needed >>> for stocks. In fact, I am not sending this field when I place the order. >>> >>> Why a message is rejected when it's missing an optional field and it >>> is not needed? >>> >>> Thank you. >>> >>> >>> >>> ------------------------------------------------------------------------------ >>> Download new Adobe(R) Flash(R) Builder(TM) 4 >>> The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly >>> Flex(R) Builder(TM)) enable the development of rich applications that run >>> across multiple browsers and platforms. Download your free trials today! >>> http://p.sf.net/sfu/adobe-dev2dev >>> _______________________________________________ >>> Quickfix-users mailing list >>> Qui...@li... >>> https://lists.sourceforge.net/lists/listinfo/quickfix-users >>> >> >> > > |