{{Quickfixn}} Help me in resolving msgType 35=W issue
Nirjhar Jain
nirjhar.jain at commdel.net
Tue Nov 26 21:20:44 PST 2013
Hi Grant Sir,
It was a blunder mistake. Actually I am developing same app for both Citi &
HSBC bank. So I have done changes in Fix spec of HSBC and the path shared in
the config file of HSBC was of Citi bank's spec file. That's why the changes
were not reflecting in my HSBC project.
Thanks & Regards,
Nirjhar Jain
Software Engineer
COMMDEL
Commdel Consulting Services P Ltd,
H-134, Sector-63, Noida - U.P. (India)
<http://www.commdel.net/> www.commdel.net
A n I S O 9 0 0 1 : 2 0 0 8 C e r t i f i e d C o m p a n y
Payment Enterprise Mobility Internet
From: quickfixn-bounces at lists.quickfixn.com
[mailto:quickfixn-bounces at lists.quickfixn.com] On Behalf Of Grant Birchmeier
Sent: Tuesday, November 26, 2013 11:09 PM
To: Mailing list for QuickFIX/n
Subject: Re: {{Quickfixn}} Help me in resolving msgType 35=W issue
Great! What did the problem turn out to be?
On Tue, Nov 26, 2013 at 4:39 AM, Nirjhar Jain <nirjhar.jain at commdel.net
<mailto:nirjhar.jain at commdel.net> > wrote:
Please don't waste time in this issue. The issue shared in the below mail is
resolved.
Thanks & Regards,
Nirjhar Jain
Software Engineer
COMMDEL
Commdel Consulting Services P Ltd,
H-134, Sector-63, Noida - U.P. (India)
<http://www.commdel.net/> www.commdel.net
A n I S O 9 0 0 1 : 2 0 0 8 C e r t i f i e d C o m p a n y
Payment Enterprise Mobility Internet
From: Nirjhar Jain [mailto:nirjhar.jain at commdel.net
<mailto:nirjhar.jain at commdel.net> ]
Sent: Tuesday, November 26, 2013 10:53 AM
To: 'Mailing list for QuickFIX/n'
Subject: RE: {{Quickfixn}} Help me in resolving msgType 35=W issue
Hi Grant Sir,
I have already followed the instructions you have told me to do. I have
already added 9063 (SettType) field in the spec file as below:
<message name="MarketDataSnapshotFullRefresh" msgtype="W" msgcat="app">
<field name="MDReqID" required="N" />
<component name="Instrument" required="Y" />
<group name="NoUnderlyings" required="N">
<component name="UnderlyingInstrument" required="N" />
</group>
<group name="NoLegs" required="N">
<component name="InstrumentLeg" required="N" />
</group>
<field name="FinancialStatus" required="N" />
<field name="CorporateAction" required="N" />
<field name="NetChgPrevDay" required="N" />
<group name="NoMDEntries" required="Y">
<field name="MDEntryType" required="Y" />
<field name="MDEntryPx" required="N" />
<field name="Currency" required="N" />
<field name="MDEntrySize" required="N" />
<field name="MDEntryDate" required="N" />
<field name="MDEntryTime" required="N" />
<field name="TickDirection" required="N" />
<field name="MDMkt" required="N" />
<field name="TradingSessionID" required="N" />
<field name="TradingSessionSubID" required="N" />
<field name="QuoteCondition" required="N" />
<field name="TradeCondition" required="N" />
<field name="MDEntryOriginator" required="N" />
<field name="LocationID" required="N" />
<field name="DeskID" required="N" />
<field name="OpenCloseSettlFlag" required="N" />
<field name="TimeInForce" required="N" />
<field name="ExpireDate" required="N" />
<field name="ExpireTime" required="N" />
<field name="MinQty" required="N" />
<field name="ExecInst" required="N" />
<field name="SellerDays" required="N" />
<field name="OrderID" required="N" />
<field name="QuoteEntryID" required="N" />
<field name="MDEntryBuyer" required="N" />
<field name="MDEntrySeller" required="N" />
<field name="NumberOfOrders" required="N" />
<field name="MDEntryPositionNo" required="N" />
<field name="Scope" required="N" />
<field name="PriceDelta" required="N" />
<field name="Text" required="N" />
<field name="EncodedTextLen" required="N" />
<field name="EncodedText" required="N" />
<field name="SettType" required="N" />
</group>
<field name="ApplQueueDepth" required="N" />
<field name="ApplQueueResolution" required="N" />
</message>
Also added inside the field tag
<field number="9063" name="SettType" type="STRING" />
After doing this I have regenerated the code and used the dll.
Also I have added "UseDataDictionary=Y" and "DataDictionary=path/to/xml" in
my config file. Then also below mentioned error is coming.
When received(from HSBC) message i.e. msgStr is passed through below code,
the sequence of tags change.
Message message = msgFactory_.Create(beginString, msgType.Obj);
message.FromString( msgStr, this.ValidateLengthAndChecksum,
this.SessionDataDictionary,
this.ApplicationDataDictionary,
this.msgFactory_);
Please help. Also I have added the tag separator(.) in the below mail.
Thanks & Regards,
Nirjhar Jain
Software Engineer
COMMDEL
Commdel Consulting Services P Ltd,
H-134, Sector-63, Noida - U.P. (India)
<http://www.commdel.net/> www.commdel.net
A n I S O 9 0 0 1 : 2 0 0 8 C e r t i f i e d C o m p a n y
Payment Enterprise Mobility Internet
From: quickfixn-bounces at lists.quickfixn.com
<mailto:quickfixn-bounces at lists.quickfixn.com>
[mailto:quickfixn-bounces at lists.quickfixn.com] On Behalf Of Grant Birchmeier
Sent: Monday, November 25, 2013 9:31 PM
Cc: Mailing list for QuickFIX/n
Subject: Re: {{Quickfixn}} Help me in resolving msgType 35=W issue
Nirjhar,
The message passed to Next(msgStr) is what HSBC is actually sending to you.
The first version you pasted is messed up because I think your
DataDictionary xml file is not correct. As I've told you a few times now,
9063 is not a default FIX field. HSBC invented it. You need to edit your
DD xml file to define this field and you need to specify where in the W
message's 269 group it is located.
See http://quickfixn.org/tutorial/custom-fields-groups-and-messages
Also, do you have "UseDataDictionary=Y" and "DataDictionary=path/to/xml" in
your config file? You need these.
TIP: In the future, when pasting messages, please changing the field
separators to something readable. For example, please change this:
8=FIX.4.49=20735=W34=4...
To this:
8=FIX.4.4|9=207|35=W|34=4...
So that these messages are easier to read and we can help you better.
On Fri, Nov 22, 2013 at 3:11 AM, Nirjhar Jain <nirjhar.jain at commdel.net
<mailto:nirjhar.jain at commdel.net> > wrote:
Hi All,
I am receiving MarketDataSnapshotFullRefresh 35=W from the HSBC server i.e.
8=FIX.4.4.9=0207.35=W.49=HSBCAPFIX.56=KRISQLSSTR.34=4.52=20131122-08
<tel:20131122-08>
:51:58.244.57=KRIS.55=USD/JPY.262=MARKETDATAID08:53:19.9019294.268=2.269=0.2
70=101.026.271=1000000.272=20131126.299=00c00000001:A.9063=SP.269=1.270=101.
034.10=182
In my quickfix code, in Session.cs file, Next(string msgStr) function is
getting above mentioned string as msgStr.
But inside Next(string msgStr) function when the msgStr is passed inside
below :
Message message = msgFactory_.Create(beginString, msgType.Obj);
message.FromString(msgStr, this.ValidateLengthAndChecksum,
this.SessionDataDictionary, this.ApplicationDataDictionary,
this.msgFactory_);
the message format is getting changed to below one:
8=FIX.4.4...9=207...35=W...34=4...49=HSBCAPFIX...52=20131122-08
<tel:20131122-08>
:51:58.244...56=KRISQLSSTR...57=KRIS...55=USD/JPY...262=MARKETDATAID08:53:19
.9019294...269=1...270=101.034...9063=SP...268=2...269=0...270=101.026...271
=1000000...272=20131126...299=00c00000001:A...10=134
If we pass it to Next(message); message, It is giving error and generating
QuoteReject message as below:
8=FIX.4.4...9=146...35=3...34=4...49=KRISQLSSTR...50=KRIS...52=20131122-08
<tel:20131122-08> :54:07.038...56=HSBCAPFIX...45=4...58=Incorrect NumInGroup
count for repeating group...371=268...372=W...373=16...10=173
Here message.FromString(msgStr, this.ValidateLengthAndChecksum,
this.SessionDataDictionary, this.ApplicationDataDictionary,
this.msgFactory_);
Is changing the sequence of tags and also changing the value of tag 10.
Please help me in resolving this issue.
Thanks & Regards,
Nirjhar Jain
Software Engineer
COMMDEL
Commdel Consulting Services P Ltd,
H-134, Sector-63, Noida - U.P. (India)
<http://www.commdel.net/> www.commdel.net
A n I S O 9 0 0 1 : 2 0 0 8 C e r t i f i e d C o m p a n y
Payment Enterprise Mobility Internet
--
Grant Birchmeier
Connamara Systems, LLC
Made-To-Measure Trading Solutions.
Exactly what you need. No more. No less.
http://connamara.com
_______________________________________________
Quickfixn mailing list
Quickfixn at lists.quickfixn.com <mailto:Quickfixn at lists.quickfixn.com>
http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
--
Grant Birchmeier
Connamara Systems, LLC
Made-To-Measure Trading Solutions.
Exactly what you need. No more. No less.
http://connamara.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quickfixn.com/pipermail/quickfixn-quickfixn.com/attachments/20131127/dc2f41de/attachment-0002.htm>
More information about the Quickfixn
mailing list