Summary: | Transactions created with no payee/receiver after OFX import when payee has default account | ||
---|---|---|---|
Product: | [Applications] kmymoney | Reporter: | BobSCA <bobs_spam_0> |
Component: | general | Assignee: | KMyMoney Devel Mailing List <kmymoney-devel> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | ralf.habacker |
Priority: | NOR | ||
Version: | 4.8.0 | ||
Target Milestone: | --- | ||
Platform: | Microsoft Windows | ||
OS: | Microsoft Windows | ||
Latest Commit: | https://commits.kde.org/kmymoney/88b4bcf44fd336efa36dbcdd225c84e034928cfd | Version Fixed In: | 4.8.1,5.0.0 |
Attachments: |
OFX test file
kmymoney test file |
Description
BobSCA
2015-01-28 22:56:41 UTC
Version 4.7.1 I have confirmed that the same problem occurs if the payee's default account specifies a category rather than an account. When viewing the imported transaction in the ledger for the specified category there is no payee information. (In reply to BobSCA from comment #1) > Version 4.7.1 Still present in 4.8.0. The chance that someone may take a look into this bug will be higher if there would be a testcase with a minimal kmy and ofx file. Created attachment 106981 [details]
OFX test file
Created attachment 106982 [details]
kmymoney test file
(In reply to BobSCA from comment #0) > When an OFX file is imported, if there are transactions which specify an > existing payee for which a default account has been assigned, then each of > those transactions will appear in 2 registers as expected. showed by test case > In the register of the account for which the import is performed which is account2 > the payee info appears in both the payee and memo fields (this seems redundant but I assume there is a > reason for it). This is the case if the memo field is not set in the ofx file -> see statement with date '201401312' - not sure if this is a bug or a feature. > In the register of the account specified as the default account for the > payee, however, the transaction appears with no payee information in either > the payee or memo field. Could be reproduced with appended test files. Saving the file as xml file the related accounts looks like <ACCOUNT currency="EUR" description="" parentaccount="AStd::Asset" opened="2014-01-01" number="" lastmodified="2017-07-31" type="1" id="A000001" lastreconciled="" institution="" name="Account2"> </ACCOUNT> <ACCOUNT currency="EUR" description="" parentaccount="AStd::Expense" opened="1900-01-01" number="" lastmodified="2017-07-31" type="13" id="A000002" lastreconciled="" institution="" name="Account1"> </ACCOUNT> and the transaction as <TRANSACTION postdate="2014-01-31" commodity="EUR" memo="payee" id="T000000000000000007" entrydate="2017-07-31"> <SPLITS> <SPLIT payee="" reconcileflag="1" shares="-139/100" reconciledate="" action="" bankid="" account="A000002" number="" value="-139/100" memo="" id="S0001"/> <SPLIT payee="P000001" reconcileflag="0" shares="139/100" reconciledate="" action="" bankid="ID 201401312" account="A000001" number="" value="139/100" memo="payee" id="S0002"/> </SPLITS> <KEYVALUEPAIRS> <PAIR key="Imported" value="true"/> </KEYVALUEPAIRS> </TRANSACTION> The transactions consists of two splits. The one for Account1 does not have the memo or payee set as shown below: <SPLIT payee="" reconcileflag="1" shares="-139/100" reconciledate="" action="" bankid="" account="A000002" number="" value="-139/100" memo="" id="S0001"/> This indicates that the importer does not create them. Git commit 88b4bcf44fd336efa36dbcdd225c84e034928cfd by Ralf Habacker. Committed on 01/08/2017 at 08:42. Pushed by habacker into branch '4.8'. Fix 'Transactions created with no payee/receiver after OFX import when payee has default account' Importing ofx transactions that matches a payee with assigned default account creates a kmymoney transaction with two splits. The split addressing the default account did not have the memo and payee attribute set from the recent transaction. FIXED-IN:4.8.1 M +2 -0 kmymoney/converter/mymoneystatementreader.cpp https://commits.kde.org/kmymoney/88b4bcf44fd336efa36dbcdd225c84e034928cfd |