-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/110022/
-----------------------------------------------------------

(Updated May 16, 2013, 12:05 p.m.)


Status
------

This change has been marked as submitted.


Review request for KMymoney.


Description
-------

BUG:317655 - Re-importing a categories list QIF file results in duplicated 
categories. Also, when creating sub-categories, some may appear twice or more 
times in Categories view.

These problems showed up with a single users categories list QIF file.  The 
re-importing problem is fixed by the 
/kmymoney/converter/mymoneyqifreader.cpp change.

@@ -906,7 +906,7 @@ void MyMoneyQifReader::processCategoryEntry(void)
   }
 
   // check if we can find the account already in the file
-  MyMoneyAccount acc = kmymoney->findAccount(account, MyMoneyAccount());
+  MyMoneyAccount acc = kmymoney->findAccount(account, parentAccount);

Even without any re-importing, there was a further problem, where 
third-level(plus) sub-categories get duplicated.  With the following simple 
file -
"!Type:Cat
NUtilities:Telephone:Cell:A
DCell Phone
E
^"
the "N" line is dealt with recursively, and initially, all the categories get 
created.  However, what happens then is that the second part is dealt with, and 
the next lower level is created again, etc.

Initially, during this recursive process, the categories have not yet been 
added to the KMM file, so I add them to a new addedCategoriesList, which is 
scanned on each pass, to avoid this duplication.  Because the process is 
recursive, I made the list static, to ensure the higher levels are retained 
between passes when descending the tree.

The problem is not confined to importing.  If that "N" line category tree is 
created manually, in one entry, or during .kmy file loading, the third and 
lower levels get duplicated/triplicated.

The problem manifests itself only in the Categories view.  Within the rest of 
KMM, the categories are created and maintained correctly.


This addresses bug 317655.
    http://bugs.kde.org/show_bug.cgi?id=317655


Diffs
-----

  kmymoney/converter/mymoneyqifreader.cpp f42b12b 
  kmymoney/models/accountsmodel.cpp 3679314 

Diff: http://git.reviewboard.kde.org/r/110022/diff/


Testing
-------

Numerous test case QIF files created and imported.  Also, as the problem 
affected my live data file, that, too, was used for testing.


Thanks,

Allan Anderson

_______________________________________________
KMyMoney-devel mailing list
KMyMoney-devel@kde.org
https://mail.kde.org/mailman/listinfo/kmymoney-devel

Reply via email to