<div><font color="#000000"><font>URDR is not a standard FIX message. I don't know what it's supposed to look like.<br></font></font></div><div><font color="#000000"><font><br></font></font></div><div><font color="#000000"><font>You should check the URDR definition that you have in your DD and make sure it's correct. Then see if the message you received looks correct according to that definition.<br>
</font></font></div><div><font color="#000000"><font><br></font></font></div><br><div class="gmail_quote">On Wed, Aug 1, 2012 at 1:56 PM, Felipe Soares <span dir="ltr"><<a href="mailto:felipe.soares@traderdata.com.br" target="_blank">felipe.soares@traderdata.com.br</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="PT-BR" link="blue" vlink="purple"><div><p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">So Grant any ideas of waht is going on here?</span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span></p><p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">De:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> Grant Birchmeier [mailto:<a href="mailto:gbirchmeier@connamara.com" target="_blank">gbirchmeier@connamara.com</a>] <br>
<b>Enviada em:</b> quarta-feira, 1 de agosto de 2012 15:55</span></p><div><div class="h5"><br><b>Para:</b> Felipe Soares<br><b>Cc:</b> KAPIL KUMAR LALWANI; Mailing list for QuickFIX/n<br><b>Assunto:</b> Re: RES: RES: {{Quickfixn}} RES: felipe's custom message problem</div>
</div><div><div class="h5">
<p class="MsoNormal"> </p><p class="MsoNormal" style="margin-bottom:12.0pt"><span>QF/n should be logging all received messages before parsing and validating, assuming at least the session data can be decoded.</span></p>
<div><p class="MsoNormal">On Wed, Aug 1, 2012 at 12:46 PM, Felipe Soares <<a href="mailto:felipe.soares@traderdata.com.br" target="_blank">felipe.soares@traderdata.com.br</a>> wrote:</p><p class="MsoNormal">Grant,<br>
Do you think the problem is withn BX message (this one I received from<br>Exchange) and immediately after I receive I get that parsing error... or is<br>a problem with a message that hasn´t even been logged?<br><br>Thanks</p>
<div><p class="MsoNormal"><br><br>-----Mensagem original-----<br>De: Grant Birchmeier [mailto:<a href="mailto:gbirchmeier@connamara.com" target="_blank">gbirchmeier@connamara.com</a>]</p></div><div><p class="MsoNormal">Enviada em: quarta-feira, 1 de agosto de 2012 11:38<br>
Para: Felipe Soares</p></div><p class="MsoNormal">Cc: KAPIL KUMAR LALWANI; Mailing list for QuickFIX/n</p><div><div><p class="MsoNormal">Assunto: Re: RES: RES: {{Quickfixn}} RES: felipe's custom message problem<br><br>
Oh.<br><br>The error you are seeing is because an incoming message is malformed.<br>I don't know what that message is, but it should be in your log.<br><br>The message may be truly malformed, or it may be that your DD has it<br>
incorrectly defined.<br><br>Are you connecting to a real counterparty, or a test app that you wrote?<br><br><br>On Wed, Aug 1, 2012 at 9:34 AM, Felipe Soares<br><<a href="mailto:felipe.soares@traderdata.com.br" target="_blank">felipe.soares@traderdata.com.br</a>> wrote:<br>
> Application Raw Data Reporting (tag 35 =URDR) In order to resend the<br>> messages requested with Application Message Request (tag<br>> 35-MsgType=BW), BM&FBovespa sends a set of Raw Data Reporting messages<br>
> (tag 35-MsgType=URDR) each containing one or more FAST encoded<br>> messages appended in the RawData (tag 96) field.<br>><br>> -----Mensagem original-----<br>> De: Grant Birchmeier [mailto:<a href="mailto:gbirchmeier@connamara.com" target="_blank">gbirchmeier@connamara.com</a>]<br>
> Enviada em: quarta-feira, 1 de agosto de 2012 11:15<br>> Para: KAPIL KUMAR LALWANI<br>> Cc: Felipe Soares; Mailing list for QuickFIX/n<br>> Assunto: Re: RES: RES: {{Quickfixn}} RES: felipe's custom message<br>
> problem<br>><br>> What is a URDR message?<br>><br>> On Wed, Aug 1, 2012 at 9:08 AM, KAPIL KUMAR LALWANI<br>> <<a href="mailto:kaplalwani@yahoo.co.in" target="_blank">kaplalwani@yahoo.co.in</a>><br>
> wrote:<br>>><br>>> Hi,<br>>> " Invalid body length", simply means that your message expected to<br>>> have some field, but u didn't set that field. I guess something wrong<br>>> with your implementation of 'BX'<br>
>><br>>><br>>> Kapil Kumar Lalwani<br>>><br>>> “Enjoy the WORK you do, Do the BEST you can.”<br>>><br>>> ________________________________<br>>> From: Felipe Soares <<a href="mailto:felipe.soares@traderdata.com.br" target="_blank">felipe.soares@traderdata.com.br</a>><br>
>> To: KAPIL KUMAR LALWANI <<a href="mailto:kaplalwani@yahoo.co.in" target="_blank">kaplalwani@yahoo.co.in</a>>; Grant Birchmeier<br>>> <<a href="mailto:gbirchmeier@connamara.com" target="_blank">gbirchmeier@connamara.com</a>><br>
>> Cc: Mailing list for QuickFIX/n <<a href="mailto:quickfixn@lists.quickfixn.com" target="_blank">quickfixn@lists.quickfixn.com</a>><br>>> Sent: Wednesday, 1 August 2012 7:34 PM<br>>> Subject: RES: RES: {{Quickfixn}} RES: felipe's custom message problem<br>
>><br>>> Grant/Kapil,<br>>><br>>> We changed our DD and now the BX message was parsed correctly. But<br>>> after that I should start receving URDR messages containing data. In<br>>> my log file I can´t find anything about URDR message beng sent and in<br>
>> the event file I<br>>> foud:<br>>><br>>> <a href="tel:20120801-14" target="_blank">20120801-14</a>:00:29.113 : Session FIX.4.4:TTDD0001->BOVUMDF050<br>>> disconnecting: QuickFix.MessageParseError: Could not parse message:<br>
>> Invalid body length<br>>> at QuickFix.Parser.ReadFixMessage(String& msg)<br>>> at QuickFix.SocketInitiatorThread.ProcessStream()<br>>> at QuickFix.SocketInitiatorThread.Read()<br>>><br>
>> after that quickfix reconnects to the counterparty, but doens´t<br>>> receive the final message…<br>>><br>>> any ideas?<br>>><br>>> Regards<br>>><br>>><br>>> De: KAPIL KUMAR LALWANI [mailto:<a href="mailto:kaplalwani@yahoo.co.in" target="_blank">kaplalwani@yahoo.co.in</a>] Enviada em:<br>
>> quarta-feira, 1 de agosto de 2012 10:52<br>>> Para: Grant Birchmeier; Felipe Soares<br>>> Cc: Mailing list for QuickFIX/n<br>>> Assunto: Re: RES: {{Quickfixn}} RES: felipe's custom message problem<br>
>><br>>> Yeah I guess Grant is right.<br>>> You don't have the 'BX' message in your data dictionary. So add the 'BX'<br>>> message in your DD. exactly like you done for 'BW'.<br>
>><br>>><br>>><br>>> Kapil Kumar Lalwani<br>>> “Enjoy the WORK you do, Do the BEST you can.”<br>>><br>>> ________________________________<br>>> From: Grant Birchmeier <<a href="mailto:gbirchmeier@connamara.com" target="_blank">gbirchmeier@connamara.com</a>><br>
>> To: Felipe Soares <<a href="mailto:felipe.soares@traderdata.com.br" target="_blank">felipe.soares@traderdata.com.br</a>><br>>> Cc: KAPIL KUMAR LALWANI <<a href="mailto:kaplalwani@yahoo.co.in" target="_blank">kaplalwani@yahoo.co.in</a>>; Mailing list for<br>
>> QuickFIX/n <<a href="mailto:quickfixn@lists.quickfixn.com" target="_blank">quickfixn@lists.quickfixn.com</a>><br>>> Sent: Wednesday, 1 August 2012 7:14 PM<br>>> Subject: Re: RES: {{Quickfixn}} RES: felipe's custom message problem<br>
>><br>>> Sounds like you don't have BX in your DataDictionary.<br>>><br>>> When your app receives the message, QF tries to parse it according to<br>>> your DD, and fails out because it can't find a definition for BX.<br>
>><br>>> On Wed, Aug 1, 2012 at 8:43 AM, Felipe Soares<br>>> <<a href="mailto:felipe.soares@traderdata.com.br" target="_blank">felipe.soares@traderdata.com.br</a>> wrote:<br>>> Kapil,<br>>><br>
>> We followed Grant recomendation and rebuilt QuickFixn with our FIX44<br>>> specification.<br>>> By doing that we could manage to send a BW message, but now I am<br>>> having a problem when the message comes back from the server (message<br>
>> BX). Exactly what you are saying bellow unsuporterd message type… So<br>>> I shouldn´t use messagecracker?<br>>><br>>> Regards<br>>><br>>><br>>> De: KAPIL KUMAR LALWANI [mailto:<a href="mailto:kaplalwani@yahoo.co.in" target="_blank">kaplalwani@yahoo.co.in</a>] Enviada em:<br>
>> quarta-feira, 1 de agosto de 2012 10:40<br>>> Para: Felipe Soares<br>>> Cc: Mailing list for QuickFIX/n; Grant Birchmeier<br>>> Assunto: Re: RES: {{Quickfixn}} RES: felipe's custom message problem<br>
>><br>>> Hi Felipe,<br>>> I came up with one solution. I don't know this is what you<br>>> are looking for or not, but one possible solution for that is to edit<br>>> your<br>>> FIX4.2 specification XML. I mean to say, add the message type<br>
>> ApplicationMessageRequest, with related fields. By doing so, you are<br>>> able to send the message through. But for the same you have to handle<br>>> your message at the server end because fix MessageCracker wont handle<br>
>> it and return you "Unsupported Message Type" exception.<br>>><br>>><br>>><br>>> Kapil Kumar Lalwani<br>>> “Enjoy the WORK you do, Do the BEST you can.”<br>>><br>>> ________________________________<br>
>> From: Felipe Soares <<a href="mailto:felipe.soares@traderdata.com.br" target="_blank">felipe.soares@traderdata.com.br</a>><br>>> To: Grant Birchmeier <<a href="mailto:gbirchmeier@connamara.com" target="_blank">gbirchmeier@connamara.com</a>>; KAPIL KUMAR LALWANI<br>
>> <<a href="mailto:kaplalwani@yahoo.co.in" target="_blank">kaplalwani@yahoo.co.in</a>><br>>> Cc: Mailing list for QuickFIX/n <<a href="mailto:quickfixn@lists.quickfixn.com" target="_blank">quickfixn@lists.quickfixn.com</a>><br>
>> Sent: Wednesday, 1 August 2012 4:59 PM<br>>> Subject: RES: {{Quickfixn}} RES: felipe's custom message problem<br>>><br>>> Grant BMF&Bovespa is full of Weird things J<br>>><br>>> De: Grant Birchmeier [mailto:<a href="mailto:gbirchmeier@connamara.com" target="_blank">gbirchmeier@connamara.com</a>]<br>
>> Enviada em: quarta-feira, 1 de agosto de 2012 08:28<br>>> Para: KAPIL KUMAR LALWANI<br>>> Cc: <a href="mailto:felipe.soares@traderdata.com.br" target="_blank">felipe.soares@traderdata.com.br</a>; Mailing list for QuickFIX/n<br>
>> Assunto: Re: {{Quickfixn}} RES: felipe's custom message problem<br>>><br>>> If Felipe's counterparty says he must use FIX4.4 with customizations<br>>> taken from FIX5, then that's what he must do.<br>
>><br>>> Some counterparties do weird things.<br>>><br>>> On Tue, Jul 31, 2012 at 11:50 PM, KAPIL KUMAR LALWANI<br>>> <<a href="mailto:kaplalwani@yahoo.co.in" target="_blank">kaplalwani@yahoo.co.in</a>> wrote:<br>
>> Hi Felipe,<br>>><br>>> This is because the message type 'ApplicationMessageRequest' ('BW')<br>>> is not available with FIX4.4. Its was introduce from FIX5.0SP1 and<br>>> and available only with FIX5.0SP1 and FIX5.0SP2<br>
>> (<a href="http://fixprotocol.org/FIXimate3.0/" target="_blank">http://fixprotocol.org/FIXimate3.0/</a>). So that's why I recommended<br>>> you to use FIX5.0SP1 if you want to use this message type.<br>
>><br>
>> m.Header.SetField(new BeginString("FIX.5.0SP1"));<br>>><br>>><br>>><br>>> Your Sincerely,<br>>> Kapil Kumar Lalwani<br>>><br>>> “Enjoy the WORK you do, Do the BEST you can.”<br>
>><br>>> ________________________________<br>>> From: Felipe Soares <<a href="mailto:felipe.soares@traderdata.com.br" target="_blank">felipe.soares@traderdata.com.br</a>><br>>> To: Grant Birchmeier <<a href="mailto:gbirchmeier@connamara.com" target="_blank">gbirchmeier@connamara.com</a>>; Mailing list for<br>
>> QuickFIX/n <<a href="mailto:quickfixn@lists.quickfixn.com" target="_blank">quickfixn@lists.quickfixn.com</a>><br>>> Sent: Tuesday, 31 July 2012 11:18 PM<br>>> Subject: {{Quickfixn}} RES: felipe's custom message problem<br>
>><br>>> Hi Grant,<br>>><br>>> I am not sure I made any progress L<br>>><br>>> Here is the output I am receving from your code:<br>>><br>>><br>>> 8=FIX.4.4☺9=82☺35=BW☺1346=TRADER☺1347=0☺1351=2☺1355=foo☺1182=10☺1183=<br>
>> 2<br>>> 0☺1355=bar<br>>> ☺1182=11☺1183=22☺10=202☺<br>>><br>>> Unhandled Exception: QuickFix.FieldNotFoundException: field not found<br>>> for<br>>> tag: 3<br>>> 5<br>>> at QuickFix.FieldMap.GetField(Int32 tag)<br>
>> at QuickFix.Session.SendRaw(Message message, Int32 seqNum)<br>>> at QuickFix.Session.Send(Message message)<br>>> at QuickFix.Session.SendToTarget(Message message, SessionID sessionID)<br>>> at ConsoleApplication21.TCPReplayApp.RequestSeqNum(Int32 seqnum)<br>
>> at ConsoleApplication21.Program.Main(String[] args)<br>>><br>>> The error happens when I try Session.SendToTarget(m, sessionId);<br>>><br>>> Please help I don´t know where I should get information…<br>
>><br>>> De: Grant Birchmeier [mailto:<a href="mailto:gbirchmeier@connamara.com" target="_blank">gbirchmeier@connamara.com</a>]<br>>> Enviada em: terça-feira, 31 de julho de 2012 12:53<br>>> Para: Mailing list for QuickFIX/n; Felipe Soares<br>
>> Assunto: felipe's custom message problem<br>>><br>>> Felipe,<br>>><br>>> In this an future discussions, I highly recommend that you turn off<br>>> digest mode. It's making it difficult to follow the discussion when<br>
>> the subject lines are constantly changing.<br>>><br>>> Problem 1: In your cfg file, you need to add UseDataDictionary=Y<br>>><br>>> Problem 2: You are not constructing your repeating group correctly.<br>
>><br>>> Problem 3: You were not using the correct message constructor. (The<br>>> first parameter to Message(string,bool) is an entire FIX message<br>>> string, not just the 35 field.) To construct your message with<br>
>> generic methods, it should look like this:<br>>><br>>> QuickFix.Message m = new Message();<br>>> m.Header.SetField(new BeginString("FIX.4.4"));<br>>> m.SetField(new QuickFix.Fields.StringField(35, "BW"));<br>
>><br>>> m.SetField(new QuickFix.Fields.StringField(1346,<br>>> "TRADER")); //AppReqId<br>>> m.SetField(new QuickFix.Fields.IntField(1347, 0));<br>>> //ApplReqType<br>
>><br>>> int[] ordering = {1355,1182,1183};<br>>> Group g = new Group(1351, 1355, ordering);<br>>><br>>> // first group element<br>>> g.SetField(new<br>
>> QuickFix.Fields.StringField(1355,("foo")));<br>>> //RefApplID<br>>> g.SetField(new QuickFix.Fields.IntField(1182, 10));<br>>> //ApplBegSeqNum<br>>> g.SetField(new QuickFix.Fields.IntField(1183, 20));<br>
>> //ApplEndSeqNum<br>>> m.AddGroup(g);<br>>><br>>> // second group element<br>>> g.SetField(new QuickFix.Fields.StringField(1355,<br>>> ("bar"))); //RefApplID<br>
>> g.SetField(new QuickFix.Fields.IntField(1182, 11));<br>>> //ApplBegSeqNum<br>>> g.SetField(new QuickFix.Fields.IntField(1183, 22));<br>>> //ApplEndSeqNum<br>>> m.AddGroup(g);<br>
>> Console.WriteLine(m.ToString());<br>>> // prints<br>>> 8=FIX.4.4|9=82|35=BW|1346=TRADER|1347=0|1351=2|1355=foo|1182=10|1183=<br>>> 2<br>>> 0|1355=bar|1182=11|1183=22|10=202|<br>
>><br>>><br>>><br>>><br>>> --<br>>> Grant Birchmeier<br>>> Connamara Systems, LLC<br>>> Made-To-Measure Trading Solutions.<br>>> Exactly what you need. No more. No less.<br>
>> <a href="http://connamara.com" target="_blank">http://connamara.com</a><br>>><br>>> _______________________________________________<br>>> Quickfixn mailing list<br>>> <a href="mailto:Quickfixn@lists.quickfixn.com" target="_blank">Quickfixn@lists.quickfixn.com</a><br>
>> <a href="http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com" target="_blank">http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com</a><br>>><br>>><br>>><br>>> --<br>
>> Grant Birchmeier<br>>> Connamara Systems, LLC<br>>> Made-To-Measure Trading Solutions.<br>>> Exactly what you need. No more. No less.<br>>> <a href="http://connamara.com" target="_blank">http://connamara.com</a><br>
>><br>>><br>>><br>>><br>>><br>>> --<br>>> Grant Birchmeier<br>>> Connamara Systems, LLC<br>>> Made-To-Measure Trading Solutions.<br>>> Exactly what you need. No more. No less.<br>
>> <a href="http://connamara.com" target="_blank">http://connamara.com</a><br>>><br>>><br>>><br>>><br>><br>><br>><br>> --<br>> Grant Birchmeier<br>> Connamara Systems, LLC<br>
> Made-To-Measure Trading Solutions.<br>> Exactly what you need. No more. No less.<br>> <a href="http://connamara.com" target="_blank">http://connamara.com</a><br><br><br><br>--<br>Grant Birchmeier<br>Connamara Systems, LLC<br>
Made-To-Measure Trading Solutions.<br>Exactly what you need. No more. No less.<br><a href="http://connamara.com" target="_blank">http://connamara.com</a></p></div></div></div><p class="MsoNormal"><br><br clear="all"><br>
-- </p>
<div><p class="MsoNormal"><span style="background:white">Grant Birchmeier</span></p></div><div><p class="MsoNormal"><b><span style="color:#3333ff;background:#ffcc00">Connamara Systems, LLC</span></b></p></div><div><p class="MsoNormal">
<b>Made-To-Measure Trading Solutions.</b></p></div><div><p class="MsoNormal">Exactly what you need. No more. No less.</p></div><div><p class="MsoNormal"><a href="http://connamara.com" target="_blank">http://connamara.com</a></p>
</div><p class="MsoNormal"> </p></div></div></div></div>
</blockquote></div><br><br clear="all"><br>-- <br><div><font><span style="background-color:#000000"><span style="background-color:#ffffff">Grant Birchmeier</span></span></font><font><font color="#3333ff"><br></font></font></div>
<div><font><b><font color="#3333ff"><span style="background-color:#ffcc33"><span style="background-color:#ffcc66"><span style="background-color:#ffcc99"><span style="background-color:#ffffff"><span style="background-color:#ffcc00">Connamara Systems, LLC</span></span></span></span></span></font></b></font><br>
</div><div><font><b>Made-To-Measure Trading Solutions.</b></font></div><div><font>Exactly what you need. No more. No less.</font><font><b><font color="#3333ff"><br></font></b></font></div><div><font><a href="http://connamara.com" target="_blank">http://connamara.com</a><br>
</font></div><br>