Bug 419974

Summary: MyMoneyStatementReader uses base currency instead brokerage account's own when adding new price
Product: [Applications] kmymoney Reporter: Dawid Wróbel <me>
Component: importerAssignee: KMyMoney Devel Mailing List <kmymoney-devel>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: git (master)   
Target Milestone: ---   
Platform: Other   
OS: All   
Latest Commit: Version Fixed In: 5.1.0

Description Dawid Wróbel 2020-04-12 00:31:16 UTC
SUMMARY
When importing new statement, e.g. as a result of CSV file processing, the logic naively assumes the transaction's currency is the base currency instead looking at the brokerage account's trading currency.


STEPS TO REPRODUCE
1. Create a brokerage account with a trading currency different from the base currency, e.g. EUR and USD, respectively
2. import securities, e.g. using a CSV file with prices in EUR

OBSERVED RESULT
Price Editor shows all the imported prices denominated in USD instead EUR, which throws off all the USD totals across the app. The amounts and quantities are imported properly and reported in EUR. The ledger also displays the prices properly. However, the "Investment value" denominated in base currency (USD) is already off.
EXPECTED RESULT
Statement reader should use the target account's trading currency when adding new price entries, since we already assume the same currency when importing the transactions.
Comment 1 Dawid Wróbel 2020-04-12 00:51:22 UTC
Git commit 181da28c988ee25f125b37b14aae74b6de9f43a5 by Dawid Wróbel.
Committed on 12/04/2020 at 00:37.
Pushed by wrobelda into branch 'master'.

When importing new transactions, use the target account's commodity (which is set to target account's currency) since it may differ from the base currency.

M  +3    -4    kmymoney/converter/mymoneystatementreader.cpp

https://commits.kde.org/kmymoney/181da28c988ee25f125b37b14aae74b6de9f43a5
Comment 2 Thomas Baumgart 2020-04-12 08:03:07 UTC
Git commit e76470dd174838accb278854f0cb8ecd05c1200e by Thomas Baumgart.
Committed on 12/04/2020 at 08:02.
Pushed by tbaumgart into branch '5.0'.

Use target account's commodity instead of base currency

When importing new transactions, use the target account's commodity
(which is set to target account's currency) since it may differ from the
base currency.
FIXED-IN: 5.0.9

(cherry picked from commit 181da28c988ee25f125b37b14aae74b6de9f43a5)

M  +3    -4    kmymoney/converter/mymoneystatementreader.cpp

https://commits.kde.org/kmymoney/e76470dd174838accb278854f0cb8ecd05c1200e