Summary: | Fees(taxes) are deducted twice from dividend amount after QIF import | ||
---|---|---|---|
Product: | [Applications] kmymoney | Reporter: | timothy <egroegboyle> |
Component: | general | Assignee: | KMyMoney Devel Mailing List <kmymoney-devel> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | agander93, egroegboyle, kde-bugzilla, onet.cristian |
Priority: | NOR | ||
Version: | 4.6.3 | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | http://commits.kde.org/kmymoney/a4946c87e51e031812160471dae8933b0c0f04d5 | Version Fixed In: | 4.7.2 |
Sentry Crash Report: | |||
Attachments: |
attachment-12660-0.html
attachment-16662-0.html attachment-20946-0.html |
Description
timothy
2013-07-15 09:39:29 UTC
> > On Sun, 2014-11-30 at 13:13 +0000, Allan wrote: > >> Hi Timothy > >> > >> On 30/11/14 12:18, timothy wrote: > >>> Hi > >>> > >>> Could you please give me the sign convention for QIF investment format > >>> expected by Kymoney. ie Should the QIF file show positive or negative > >>> numbers. > >> > >> In general, the sign is taken care of in the activity type. That > >> is,both a Buy and a Sell expect no sign. Similarly, a Div and a Fee > >> will be expected to be with no sign. > >> > >>> Specifically in the DIVX file for the Amount (T) and the Fees (O). > >>> > >>> Things seem to have changed since I last imported a Dividend? > >> > >> Well, that might depend on when you last imported a Dividend! The > >> general case has not changed. However, there may well have been some > >> minor changes, to cater for certain activity types previously not > >> expecting say, a fee, but which some users wished otherwise. > >> > >> If that doesn't help, the best thing might be to give us an example > >> which is not doing what you expect/expected. > >> > >> Allan > > > > Thanks Alan. Could you also please specify whether the amount (T) is > > expected net of fees (O) or inclusive of the fees. > > > > In KMM it appears that when amount and fees are positive or no sign, the > > the fees are being subtracted from the QIF file amount to give the KMM > > "Interest Amount" and then subtracted again to give the "Total Amount". > > The sign of the amount or interest is then changed to negative. > > > > Example > > The QIF file gives > > !Type:Invst > > D15/09/2014 > > NDIVX > > T1853.00 \\ This is net of fees being the amount received by me > > O327.00 \\ These are the fees as taken off by broker. The total > > dividend declared should be T+O > > > > After manual import KMM gives > > Fee Amount ZAR 327.00 > > Interest ZAR -1526.00 > > Total ZAR 1199.00 > > > > Regards > > Timothy > > > > Further to above I have found that the Total 1199.00 which is transferred to my > > cheque account is actually negative and appears in the cheque a/c as a payment not a deposit. > > So it looks like the QIF amount T has the sign changed and then the fees are added to give the > > Interest Amount and then added again to give the Total. Wow! > > > > Timothy > > > > Just a quick test for the moment, but that doesn't look right to me. > > I'll need to investigate, but would you please raise a bug at > https://bugs.kde.org > > Allan Will do so. Timothy Hi Allan This is a duplicate of Bug 322381 filed July 2013 with the variation the sign is also changed. I did not follow up on this bug as I had implemented a work-around in my own QIF preprocessor and things had worked quite nicely from then. However the negative sign has now thrown out my work-around logic. I had forgotten the original bug filed, as dividend import was working for me. You can import my original bug numbers and see that the result has now changed. If you want me to add anything to the original bug filed let me know. Timothy BTW I amusin the latest KMM from Clay Weber daily updates Version 4.7.90 Using KDE Development Platform 4.13.3. The update was dowmloaded yesterday. There is definitely a problem. Here is a simple QIF file. !Account NInv TInvst ^ !Type:Invst D03/06/2014 YsecurityB NDivX MDividend Payment T1150.00 O150.00 ^ If I create an Investment account called Inv, which has an associated (Brokerage) account, and a security called securityB, and then import that file into Inv, the Brokerage account shows a payment of 850.00, instead of a net deposit of 1000.00, and a missing assignment of 300.00 is flagged. The splits show a payment of 1000.00 and a fee payment of 150.00 If for comparison, I manually create a Dividend transaction, with amount 1150.00 and fee of 150.00, then that is correctly entered, with the Brokerage account showing a deposit of 1000.00, and a fee of 150.00 Created attachment 89791 [details] attachment-12660-0.html Hi Allan The DIVX transaction is defaulting to the brokerage account. Try adding the line L[Bank Accounts:Cheque] for transfer to the cheque account. Maybe you will get the minus amount that I got. Regards Timothy On Monday, December 1, 2014 2:25 PM, allan <agander93@gmail.com> wrote: https://bugs.kde.org/show_bug.cgi?id=322381 allan <agander93@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 CC| |agander93@gmail.com Status|UNCONFIRMED |CONFIRMED --- Comment #3 from allan <agander93@gmail.com> --- There is definitely a problem. Here is a simple QIF file. !Account NInv TInvst ^ !Type:Invst D03/06/2014 YsecurityB NDivX MDividend Payment T1150.00 O150.00 ^ If I create an Investment account called Inv, which has an associated (Brokerage) account, and a security called securityB, and then import that file into Inv, the Brokerage account shows a payment of 850.00, instead of a net deposit of 1000.00, and a missing assignment of 300.00 is flagged. The splits show a payment of 1000.00 and a fee payment of 150.00 If for comparison, I manually create a Dividend transaction, with amount 1150.00 and fee of 150.00, then that is correctly entered, with the Brokerage account showing a deposit of 1000.00, and a fee of 150.00 That doesn't make any difference, Tim, but I'm not sure we're getting different results. When you say "Maybe you will get the minus amount", where are you seeing that? Looking at either the brokerage account or the cheque account, the result is the same - 850.00. Looking at the investment account, if the imported transaction is *not* selected, the Value shows as 850.00. If it is selected, then -1000.00 shows under Quantity, but if you are using the Transaction form to view, then that -1000.00 is the interest amount, the fee is 150.00 and the total is 850.00. It is definitely wrong. Created attachment 89793 [details] attachment-16662-0.html Yes I thought we were getting different results, but I see they are the same. BTW I am using the latest daily-build from Clay Weber downloaded yesterday on Mint 17 On Monday, December 1, 2014 4:55 PM, allan <agander93@gmail.com> wrote: https://bugs.kde.org/show_bug.cgi?id=322381 --- Comment #5 from allan <agander93@gmail.com> --- That doesn't make any difference, Tim, but I'm not sure we're getting different results. When you say "Maybe you will get the minus amount", where are you seeing that? Looking at either the brokerage account or the cheque account, the result is the same - 850.00. Looking at the investment account, if the imported transaction is *not* selected, the Value shows as 850.00. If it is selected, then -1000.00 shows under Quantity, but if you are using the Transaction form to view, then that -1000.00 is the interest amount, the fee is 150.00 and the total is 850.00. It is definitely wrong. After processing in mymoneyqifreader.cpp, the data is passed to moneystatementreader.cpp. On 12 Sept 2014, a change was applied here - "Remove the OFX investment transactions amount sign inversion hack. As the author of the hack states he's not sure why this was necessary. This hack also caused a lot of workarounds in MyMoneyStatementReader so it definitely should be removed. I've tried to keep the current behaviour in MyMoneyStatementReader but since I'm not familiar with investment transaction these should be double checked. BUG: 333522 REVIEW: 120153" This might be implicated. Going back to the top, your first problem (July 2013), importing that file now, or my similar version - !Account NInv TInvst ^ !Type:Invst D03/06/2014 YsecurityB NDivX MDividend Payment T1150 O150 ^ This now imports correctly, sort of. and after import it appears to be correct. Viewed in the Transaction form, fee = 150.00, Interest = 1000.00, total = 1150.00. So, that looks promising. However, if I now open to edit the transaction, the Total now = 850.00. So, I think I know where to go next. Created attachment 89819 [details] attachment-20946-0.html Hi AllanJust a thought. The amount or interest in both the OFX and QIF dividend processing should always be net input (ie total declared dividend less fees). As this is what will shown by the bank or share company (to pay out or buy more shares).RegardsTimothy On Monday, December 1, 2014 10:53 PM, allan <agander93@gmail.com> wrote: https://bugs.kde.org/show_bug.cgi?id=322381 --- Comment #8 from allan <agander93@gmail.com> --- Going back to the top, your first problem (July 2013), importing that file now, or my similar version - !Account NInv TInvst ^ !Type:Invst D03/06/2014 YsecurityB NDivX MDividend Payment T1150 O150 ^ This now imports correctly, sort of. and after import it appears to be correct. Viewed in the Transaction form, fee = 150.00, Interest = 1000.00, total = 1150.00. So, that looks promising. However, if I now open to edit the transaction, the Total now = 850.00. So, I think I know where to go next. On 03/12/14 08:29, egroegbaker@yahoo.com wrote: > https://bugs.kde.org/show_bug.cgi?id=322381 > > --- Comment #9 from egroegbaker@yahoo.com --- > Hi AllanJust a thought. The amount or interest in both the OFX and QIF dividend > processing should always be net input (ie total declared dividend less fees). > As this is what will shown by the bank or share company (to pay out or buy more > shares).RegardsTimothy > I'm not sure that that is exactly true. The gross amount is the dividend that was earned - the income, the fee is the expense, and the difference is the transfer amount that gets transferred to the cheque/brokerage account. The recent fix for the OFX problem, and the related removal of the hack requiring a negation appears to have fixed that problem, but QIF handling took that negation into account, so that explains the current QIF problem, not just for Dividends, but some other activity types as well. So, they are all wrong if there is a fee to take into account. However, your problem predates those OFX fixes so there is another problem yet. Manual dividend entry is unaffected - only imports fail. Allan Git commit e09e3467305aa926ba49852638b44ceb8089c318 by Allan Anderson. Committed on 06/12/2014 at 12:35. Pushed by allananderson into branch 'master'. Fix fees(taxes) being deducted twice from dividend amount during QIF import. Also fix imported amount being negated. The former appears to be a very long-standing problem. The latter is a consequence of the fix for BUG 333522 5c54aafef7aa8a39ffd3b5e2dcb6538301652ee5. M +6 -2 kmymoney/converter/mymoneyqifreader.cpp M +9 -5 kmymoney/converter/mymoneystatementreader.cpp M +7 -2 kmymoney/plugins/csvimport/investprocessing.cpp http://commits.kde.org/kmymoney/e09e3467305aa926ba49852638b44ceb8089c318 Thanks for fixing this! Can/should this be backported to the stable / 4.7 branch? Cherry-picking the commit (e09e3467305aa926ba49852638b44ceb8089c318) appears to work without conflicts. (In reply to Daniel Hahler from comment #12) > Thanks for fixing this! > > Can/should this be backported to the stable / 4.7 branch? > Cherry-picking the commit (e09e3467305aa926ba49852638b44ceb8089c318) appears > to work without conflicts. It's good to know that people care! Yes, I'll be doing that very soon, just a bit busy. I have also a minor tidy-up to do on it first, then I'll backport. Git commit d172e4c1339a80d2c2fbc3651fa005a092d8a33d by Allan Anderson. Committed on 06/12/2014 at 12:35. Pushed by allananderson into branch '4.7'. Fix fees(taxes) being deducted twice from dividend amount during QIF import. Also fix imported amount being negated. The former appears to be a very long-standing problem. The latter is a consequence of the fix for BUG 333522 5c54aafef7aa8a39ffd3b5e2dcb6538301652ee5. Also, remove unwanted comments. (cherry-picked from e09e3467305aa926ba49852638b44ceb8089c318) M +2 -2 kmymoney/converter/mymoneyqifreader.cpp M +9 -5 kmymoney/converter/mymoneystatementreader.cpp M +5 -2 kmymoney/plugins/csvimport/investprocessing.cpp http://commits.kde.org/kmymoney/d172e4c1339a80d2c2fbc3651fa005a092d8a33d Git commit a4946c87e51e031812160471dae8933b0c0f04d5 by Allan Anderson. Committed on 06/12/2014 at 12:35. Pushed by allananderson into branch '4.7'. Fix fees(taxes) being deducted twice from dividend amount during QIF import. Also fix imported amount being negated. The former appears to be a very long-standing problem. The latter is a consequence of the fix for BUG 333522 5c54aafef7aa8a39ffd3b5e2dcb6538301652ee5. (cherry picked from commit e09e3467305aa926ba49852638b44ceb8089c318) Conflicts: kmymoney/converter/mymoneyqifreader.cpp kmymoney/plugins/csvimport/investprocessing.cpp M +4 -0 kmymoney/converter/mymoneyqifreader.cpp M +2 -0 kmymoney/plugins/csvimport/investprocessing.cpp http://commits.kde.org/kmymoney/a4946c87e51e031812160471dae8933b0c0f04d5 |