0

Don't know why the the FIX server is throwing this error. Using Fix.4.4, I've got a client generating a Market Order. Its being received by the Server, but its returning an error.

The Logon is successful on the client and server side. Then the client sends a market order:

Header [8=FIX.4.4 | 9=130 | 35=D | 34=92 | 49=BROKER_CLIENT | 52=20121009-00:58:44.283 | 56=BROKER_SERVER | ] Body [11=0 | 21=1 | 38=100 | 40=1 | 54=1 | 55=JNJ | 59=0 | 60=20121009-00:58:44 | ] Trailer [10=035 | ]

This is received from the 'fromApp' method of the server. The server then responds with: (Message 92 Rejected: Conditionally Required Field Missing:35)

Field35 is clearly there, can't see why the server is responding with an error.

Brian Agnew
  • 268,207
  • 37
  • 334
  • 440
Lucio Flores
  • 61
  • 1
  • 2
  • Post the FIX message the server receives and also the one you send. Not the message from the logs, log it in the toApp. And paste the full reject message. – DumbCoder Oct 10 '12 at 07:28

1 Answers1

0

This question was also posted to the mailing list. Turns out Mr. Flores was calling

std::string msgType = message.getField(FIX::FIELD::MsgType);

instead of

std::string msgType = message.getHeader().getField(FIX::FIELD::MsgType);

in his FromApp() call.

Grant Birchmeier
  • 17,809
  • 11
  • 63
  • 98