{{Quickfixn}} Tag appears more than once

Veduruparthi Raju rveduruparthi at gmail.com
Tue Mar 10 14:18:31 PDT 2020


Grant,
I was playing around then. But i have made sure it is defined only once and
it is in the component.
Thanks,
--Raju.v



On Tue, Mar 10, 2020 at 4:01 PM Grant Birchmeier <gbirchmeier at connamara.com>
wrote:

> When I looked at your DD file, you had the same group implemented twice:
> once as a component (with the component-invocation line commented out), and
> then you also had all the fields pasted in place.  It appeared you had
> tried the former, and then commented it out and tried the latter.
>
> In your paste just now, I see you edited the component.  Is it
> possible that the component-invocation is still commented out, and you're
> using the in-place fields that are not updated?
>
>
>
> On Tue, Mar 10, 2020 at 2:26 PM Veduruparthi Raju <rveduruparthi at gmail.com>
> wrote:
>
>> Ok.. i have arranged the fields to match to the order they show up in the
>> FIX message and still seeing the same error.
>> The below is my updated schema .
>>
>>   <component name='TrdCapRptSideGrp'>
>>    <group name='NoSides' required='Y'>
>>     <field name='Side' required='Y' />
>>     <field name='SideExecID' required='N' />
>>     <field name='SideTradeReportID' required='N' />
>>     <component name='Parties' required='N' />
>>     <field name='Account' required='N' />
>>     <field name='TradeInputSource' required='N' />
>>     <field name='TradingSessionID' required='N' />
>>     <field name='TradingSessionSubID' required='N' />
>>     <field name='AggressorIndicator' required='N' />
>>    <field name='SideRiskLimitCheckStatus' required='N' />
>>     <field name='AcctIDSource' required='N' />
>>     <field name='AccountType' required='N' />
>>     <field name='ProcessCode' required='N' />
>>     <field name='OddLot' required='N' />
>>     <component name='ClrInstGrp' required='N' />
>>     <field name='TradeInputDevice' required='N' />
>>     <field name='ComplianceID' required='N' />
>>     <field name='SolicitedFlag' required='N' />
>>     <field name='CustOrderCapacity' required='N' />
>>     <field name='TimeBracket' required='N' />
>>     <component name='CommissionData' required='N' />
>>     <field name='NumDaysInterest' required='N' />
>>     <field name='ExDate' required='N' />
>>     <field name='AccruedInterestRate' required='N' />
>>     <field name='AccruedInterestAmt' required='N' />
>>     <field name='InterestAtMaturity' required='N' />
>>     <field name='EndAccruedInterestAmt' required='N' />
>>     <field name='StartCash' required='N' />
>>     <field name='EndCash' required='N' />
>>     <field name='Concession' required='N' />
>>     <field name='TotalTakedown' required='N' />
>>     <field name='NetMoney' required='N' />
>>     <field name='SettlCurrAmt' required='N' />
>>     <field name='SettlCurrFxRate' required='N' />
>>     <field name='SettlCurrFxRateCalc' required='N' />
>>     <field name='PositionEffect' required='N' />
>>     <field name='Text' required='N' />
>>     <field name='EncodedTextLen' required='N' />
>>     <field name='EncodedText' required='N' />
>>     <field name='SideMultiLegReportingType' required='N' />
>>     <component name='ContAmtGrp' required='N' />
>>     <component name='Stipulations' required='N' />
>>     <component name='MiscFeesGrp' required='N' />
>>     <field name='ExchangeRule' required='N' />
>>     <field name='TradeAllocIndicator' required='N' />
>>     <field name='PreallocMethod' required='N' />
>>     <field name='AllocID' required='N' />
>>     <component name='TrdAllocGrp' required='N' />
>>     <field name='SideLastQty' required='N' />
>>     <field name='SideFillStationCd' required='N' />
>>     <field name='SideReasonCd' required='N' />
>>     <field name='RptSeq' required='N' />
>>     <field name='SideTrdSubTyp' required='N' />
>>     <component name='SideTrdRegTS' required='N' />
>>     <field name='SideGrossTradeAmt' required='N' />
>>     <field name='ExchangeSpecialInstructions' required='N' />
>>     <field name='NetGrossInd' required='N' />
>>     <field name='SideCurrency' required='N' />
>>     <field name='SideSettlCurrency' required='N' />
>>     <component name='SettlDetails' required='N' />
>>     <field name='OrderCategory' required='N' />
>>     <component name='TradeReportOrderDetail' required='N' />
>>     <field name='OrderDelay' required='N' />
>>     <field name='OrderDelayUnit' required='N' />
>>     <field name='SideLiquidityInd' required='N' />
>>    </group>
>>   </component>
>>
>>
>> On Tue, Mar 10, 2020 at 1:40 PM Grant Birchmeier <
>> gbirchmeier at connamara.com> wrote:
>>
>>>
>>> *However tag 1 (Account) is already part of the repeating group NoSides
>>> (tag 555) and is at the level of Side (tag 54) , unless i am not getting it
>>> right.*
>>> *The below is the schema and my clients SGX schema extract of
>>> NoSidesGroup.*
>>> (from your other mail with the wrong subject line)
>>>
>>> You are misunderstanding what is happening.  The parser is probably
>>> triggering on *the second group's* 1 tag.
>>>
>>> The first group partially parses, but when the parser detects a field
>>> that doesn't fit, it decides the group has just ended, and this tag belongs
>>> to the parent group.
>>>
>>> I wouldn't dig too hard into that.  The key action item here is: *make
>>> your DD's group match your message's group!*
>>>
>>> I pretty well spelled it out for you earlier, but here it is again:
>>>
>>>    <group name='NoSides' required='Y'>
>>>     <field name='Side' required='Y' /> *OK*
>>>     *! SideExecID should be here*
>>>     *! SideTradeReportID should be here*
>>>     <component name='Parties' required='N' /> *OK*
>>>     <field name='Account' required='N' /> *OK*
>>>     <field name='AcctIDSource' required='N' /> wasn't present
>>>     <field name='AccountType' required='N' /> wasn't present
>>>     <field name='ProcessCode' required='N' /> etc
>>>     <field name='OddLot' required='N' />
>>>     <component name='ClrInstGrp' required='N' />
>>>     <field name='TradeInputSource' required='N' /> *OK*
>>>     <field name='TradeInputDevice' required='N' />
>>>     <field name='ComplianceID' required='N' />
>>>     <field name='SolicitedFlag' required='N' />
>>>     <field name='CustOrderCapacity' required='N' />
>>>     <field name='TradingSessionID' required='N' /> *OK*
>>>     <field name='TradingSessionSubID' required='N' /> *OK*
>>>     ... a bunch more not-present fields ...
>>>     <field name='SideTradeReportID' required='N' /> *wrong place, see
>>> above*
>>>     ... a bunch more not-present fields ...
>>>     <field name='AggressorIndicator' required='N' /> *OK*
>>>     ... a bunch more not-present fields ...
>>>     <field name='SideExecID' required='N' /> *wrong place, see above*
>>>     <field name='SideRiskLimitCheckStatus' required='N' /> *OK*
>>>    </group>
>>>
>>> Let me know if you have any questions about that.
>>>
>>> -Grant
>>>
>>>
>>> On Tue, Mar 10, 2020 at 10:25 AM Grant Birchmeier <
>>> gbirchmeier at connamara.com> wrote:
>>>
>>>> "Tag appears more than once: 1" refers to the Account tag (e.g. "1=SG
>>>> S835 ABC2").
>>>>
>>>> This means that 1 is the first tag that it thinks is not part of the
>>>> repeating group.  (The message means that the parser thinks it's finding
>>>> the tag outside of a group.)
>>>>
>>>> Oh-- oops, my indents were slightly wrong in my previous message.  This
>>>> is the correct version:
>>>>
>>>> 552=2   NoSides
>>>>   54=1    Side
>>>>     1427=1063399             SideExecID
>>>>     1005=DualTrade01_S835B   SideTradeReportID
>>>>
>>>>     453=4           NoPartyIDs  (Component 'Parties')
>>>>       448=S835        PartyID
>>>>         447=D         PartyIDSource
>>>>         452=7         PartyRole
>>>>       448=ABCGroup
>>>>         447=D
>>>>         452=1
>>>>       448=S835
>>>>         447=D
>>>>         452=4
>>>>       448=SGX
>>>>         447=D
>>>>         452=21
>>>>
>>>>     1=SG S835 ABC2    Account (FIXED INDENT: inside 54 group, after 543
>>>> group)
>>>>     578=FIX           TradeInputSource
>>>>     336=1             TradingSessionID
>>>>     625=3             TradingSessionSubID
>>>>     1057=N            AggressorIndicator
>>>>     2344=3            SideRiskLimitCheckStatus
>>>>
>>>>
>>>>
>>>
>>> --
>>> Grant Birchmeier
>>> *Connamara Systems, LLC*
>>> *Made-To-Measure Trading Solutions.*
>>> Exactly what you need. No more. No less.
>>> http://connamara.com
>>>
>>> This email, along with any attachments, is confidential. If you believe
>>> you received this message in error, please contact the sender immediately
>>> and delete all copies of the message. Thank you from Connamara Systems, LLC.
>>> _______________________________________________
>>> Quickfixn mailing list
>>> Quickfixn at lists.quickfixn.com
>>> http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>>>
>>
>>
>> --
>> Thanks,
>> --Raju.v
>> _______________________________________________
>> Quickfixn mailing list
>> 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
>
> This email, along with any attachments, is confidential. If you believe
> you received this message in error, please contact the sender immediately
> and delete all copies of the message. Thank you from Connamara Systems, LLC.
> _______________________________________________
> Quickfixn mailing list
> Quickfixn at lists.quickfixn.com
> http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>


-- 
Thanks,
--Raju.v
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quickfixn.com/pipermail/quickfixn-quickfixn.com/attachments/20200310/c8cd77cf/attachment.htm>


More information about the Quickfixn mailing list