[Kmymoney-devel] [kmymoney4] [Bug 345655] New: Rounding problems between checking and investment account

Romain Henriet romain.pub at laposte.net
Sun Mar 29 13:18:05 UTC 2015


https://bugs.kde.org/show_bug.cgi?id=345655

            Bug ID: 345655
           Summary: Rounding problems between checking and investment
                    account
           Product: kmymoney4
           Version: 4.7.1
          Platform: openSUSE RPMs
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: kmymoney-devel at kde.org
          Reporter: romain.pub at laposte.net

[A] If you sell shares which have a precision of eg 1/10000 towards a checking
account where precision is 1/100 and repeat this operation several times. You
finally get a total in the checking account that does not fit the sum of all
operations. 
[B] You also have an error message when saving your file : "Consistency check
result : shares set to value in split of transaction..."1. Create a new file
containing a checking account (check_acc) and an investment account
(invest_acc)
2. Create an investment (invest_share)
3. Add eg 100 shares of (invest_share) in (invest_acc)
4. Sell 12 shares of (invest_share) towards(check_acc)  value=1,5270
[C] Moreover, if you edit the transaction in the checking account, you get a
window saying : "The total amount of this transaction is (eg) 15,12 while the
sum of the splits is 15,12. The remaining 0,00 are unassigned..."
[D] Finally, selling shares without paying fees creates a transfer transaction
in the checking account, but if you pay fees, this creates a deposit
transaction.


Reproducible: Always

Steps to Reproduce:
1. Create a new file containing a checking account {check_acc} and an
investment account {invest_acc}
2. Create an investment {invest_share}
3. Add eg 100 shares of {invest_share} in {invest_acc}
4. Sell 12 shares of {invest_share} towards {check_acc}  (value=1,5120, fee
amount=1,00)
5. Save you file. You should get message box described in [B]
6. Sell 15 shares of {invest_share} towards {check_acc}  (value=1,5269, no fee)
7. Sell 15 shares of {invest_share} towards {check_acc}  (value=1,5269, no fee)
8. Save your file, you get [B] again
9. Open and watch ledgers for {check_acc}
10. There is a Deposit transaction with amount=17,14 and 2 Transfer
transactions with amount=22,90, like said in [D]
11. You should receive a bank statement containing 17,14 + 22,90 + 2,90 =
62,94, but balance is 62,95 in kmymoney. Thus reconciliation won't work, as
said in [A].
12. Now try to reconcile with a final balance of 62,95, like it appears in
kmymoney. Clear the 3 transactions to have a difference of 0,00 and click on
Finish. Kmymoney says there is a difference between the bank statement and the
transactions marked as cleared !
13. Double clock the "Deposit invest" and simply click on the Enter button.
There is now an error because of a missing assignment of 0,00...

Actual Results:  
I can't reconcile my account anymore without an error message.

Expected Results:  
Rounding values should be used in the checking account (precision of 1/100)

When creating the sell transaction in the investment account, why not adding a
split field with a category of eg "Rounding error", which contains the
difference between the rounded value and the exact value. It could use the
1/10000 precision. 
This way, no money would be lost in space and there would not be problems
between accounts with different precisions.
It could be edited by the user in case his bank doesn't have the same rounding
rules as kmymoney's ones.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the KMyMoney-devel mailing list