<div><font color="#000000"><font>Because we wrote the code generator in Ruby, which was an easy and fast way to do it.<br></font></font></div><div><font color="#000000"><font><br></font></font></div><div><font color="#000000"><font>That Ruby bit generates C# source code, so the engine itself is all C#.<br>

</font></font></div><div><font color="#000000"><font><br></font></font></div><div><font color="#000000"><font>We're not 100% happy about this Ruby dependency, but we haven't found a more windows-centric tool that we don't hate.<br>

</font></font></div><div><font color="#000000"><font><br></font></font></div><br><div class="gmail_quote">On Tue, Jul 31, 2012 at 11:01 AM, 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">Thanks a lot Grant,</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"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">I will try that now.</span></p>


<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">I thought that quickfix/N was constructed entirely in C#. Why do I need ruby?</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"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Regards</span></p>


<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Felipe soares</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> terça-feira, 31 de julho de 2012 12:57<br><b>Para:</b> Mailing list for QuickFIX/n; Felipe Soares<br><b>Assunto:</b> Re: {{Quickfixn}} felipe's custom message problem</span></p><div><div class="h5">

<p class="MsoNormal">
 </p><div><p class="MsoNormal"><span>Furthermore, I'd recommend that you actually look into downloading the QF/N source and regenerating a version according to your custom FIX44.xml DD.  However, you'll need Ruby to generate the source.</span></p>


</div><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal"><span>This will give you a FIX44 version of </span>the ApplicationMessageRequest and field methods.  These are preferred over the generic methods.</p>
</div><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal">-Grant</p></div><div><p class="MsoNormal"> </p></div><p class="MsoNormal"> </p><div><p class="MsoNormal">On Tue, Jul 31, 2012 at 10:52 AM, Grant Birchmeier <<a href="mailto:gbirchmeier@connamara.com" target="_blank">gbirchmeier@connamara.com</a>> wrote:</p>


<p class="MsoNormal" style="margin-bottom:12.0pt">Felipe,<br><br>In this an future discussions, I highly recommend that you turn off digest mode.  It's making it difficult to follow the discussion when 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 first parameter to Message(string,bool) is an entire FIX message string, not just the 35 field.)</p>


<div><p class="MsoNormal">To construct your message with generic methods, it should look like this:</p></div><div><p class="MsoNormal"> </p></div><p class="MsoNormal" style="margin-bottom:12.0pt">            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, "TRADER")); //AppReqId<br>


            m.SetField(new QuickFix.Fields.IntField(1347, 0)); //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 QuickFix.Fields.StringField(1355,("foo"))); //RefApplID<br>            g.SetField(new QuickFix.Fields.IntField(1182, 10)); //ApplBegSeqNum<br>            g.SetField(new QuickFix.Fields.IntField(1183, 20)); //ApplEndSeqNum<br>


            m.AddGroup(g);<br><br>            // second group element<br>            g.SetField(new QuickFix.Fields.StringField(1355, ("bar"))); //RefApplID<br>            g.SetField(new QuickFix.Fields.IntField(1182, 11)); //ApplBegSeqNum<br>


            g.SetField(new QuickFix.Fields.IntField(1183, 22)); //ApplEndSeqNum<br>            m.AddGroup(g);</p><div><p class="MsoNormal">            Console.WriteLine(m.ToString());</p></div><div><p class="MsoNormal">            // prints 8=FIX.4.4|9=82|35=BW|1346=TRADER|1347=0|1351=2|1355=foo|1182=10|1183=20|1355=bar|1182=11|1183=22|10=202|</p>


</div><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal"> </p></div><p class="MsoNormal" style="margin-bottom:12.0pt"><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></p></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>