[kmymoney4] [Bug 365177] Changing investment fraction doesn't change rounding behavior

NSLW bugzilla_noreply at kde.org
Sat Apr 1 06:19:11 UTC 2017


NSLW <lukasz.wojnilowicz at gmail.com> changed:

           What    |Removed                     |Added
      Latest Commit|                            |https://commits.kde.org/kmy
                   |                            |money/c6e31c96a03ad5a7ec5e3
                   |                            |695bbfa8336181ab81c
   Version Fixed In|                            |5.0
         Resolution|---                         |FIXED
             Status|UNCONFIRMED                 |RESOLVED

--- Comment #4 from NSLW <lukasz.wojnilowicz at gmail.com> ---
Git commit c6e31c96a03ad5a7ec5e3695bbfa8336181ab81c by Łukasz Wojniłowicz.
Committed on 01/04/2017 at 06:16.
Pushed by wojnilowicz into branch 'master'.

Fix rounding problem with investments

Patch introduces rounding rules per security for fixing bug #372163. It
seems that this broker always rounds amounts down while my broker rounds
amounts depending on the outlying digit, so it couldn't work for both of
us without rules.

Rounding is done in InvestTransactionEditor because it has all needed
informations at hand.

No rounding of shares is done in InvestTransactionEditor::setupPrice.
Transaction from bug #372163 looks as follows:
shares = 1,009 ; value = 1,009
shares = -1 ; value = 1,009

InvestTransactionEditor::setupPrice causes brokerage to look as follows:
shares = 1,01 ; value = 1,009
As we can see shares and value diverge, which is unacceptable here.

Patch makes assumption that transaction has only single split of
stock/mutual fund/bond.
Related: bug 345655, bug 357784, bug 372163

Differential Revision: https://phabricator.kde.org/D5187

Signed-off-by: Łukasz Wojniłowicz <lukasz.wojnilowicz at gmail.com>

M  +32   -15   kmymoney/dialogs/investtransactioneditor.cpp
M  +31   -0    kmymoney/kmymoneyutils.cpp
M  +22   -0    kmymoney/kmymoneyutils.h
M  +39   -0    kmymoney/mymoney/mymoneysecurity.cpp
M  +27   -8    kmymoney/mymoney/mymoneysecurity.h
M  +1    -0    kmymoney/mymoney/storage/mymoneydbdef.cpp
M  +3    -0    kmymoney/mymoney/storage/mymoneystoragesql.cpp
M  +4    -3    kmymoney/widgets/transaction.cpp
M  +11   -0   
M  +104  -90  
M  +2    -0    kmymoney/wizards/newinvestmentwizard/knewinvestmentwizard.cpp


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

More information about the KMyMoney-devel mailing list