Thanks for all developers! I found kmm is amazing, it covers all my complicated needs: crypto, multiple stock, mutal fund, bank accounts in different markets/currencies, daily expense, retire accounts …
Recently I’m migrating my data to kmm, and found a small issue.
As the attachment shows, some transactions detail (payee) are not shown in ledgers view, when I select a category to see transactions
More information:
I’m using xml to store data. This issue only happens with transactions imported from csv.
OS: windows 11 version 2009 x86_64
kmymoney version: 5.1.3-eef04f1
Thanks!
(Due to limitation that I can only upload one attachment, I attach second screenshot here.)
Interestingly, in ledger if I switch to my credit card account, the same transaction shows detail (payee). See below screenshot
I also found a workaround to fix it. Just simply click edit transaction, don’t do anything and then save it. Then the detail will show, as below
Glad you found a workaround. If you go to Settings/Configure KMyMoney… , select Ledger on the left, Display tab - what are your settings for the Ledger entry details? See if assuring Show all ledger entries in full detail and Show all split details in ledger. (The latter is probably not relevant here, but it won’t hurt.)
Thanks for quick response. My previous config was attached:
After check Show all ledger entries in full detail option as suggested, I see payee and account name both show in detail. But for those transactions didn’t show payee before, nothing changes, their details column is still empty.
I did a little investigation in exported sql.db. Here the two highlighted splits belong to one transaction which has missing detail problem.
I presume one corresponds to payer, the other corresponds to payee. One of them does not have payee id. Hope this can provide you some clue.
The development version (aka master) will allow to modify the payee data on a split level. With this, you can add that information if it is not present.
Note: the core developers are using this version for production purpose already for quite some time, so the warning about the bleeding edge is currently probably not so relevant. Nevertheless, you should keep a good set of backups, just in case.
Thanks for help! I’ ll try this version.
I also tried an automatic solution: switched to sql storage. And then write sql query to do following:
in table kmmSplits, for each group of split entries with same transactionId, if there exists one entries has non-empty payeeId, use this payeeId for other entries in this field who don’t have payee.
So far it works well, I have not seen see data corruption. Do you see any potential risks doing this?
Sounds reasonable and I don’t see risks there.