<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>