[Kmymoney-devel] Review Request: Add profiles to csvplugin to retain user's settings

Allan Anderson agander93 at gmail.com
Sun Jan 15 13:09:54 UTC 2012

This is an automatically generated e-mail. To reply, visit:

(Updated Jan. 15, 2012, 1:09 p.m.)

Review request for KMymoney.


Because adding profiles involved skipping from the first page to the completion page, a way needed to be found to cope with parameter errors which may be discovered on importing the file.  This unearthed some anomalies such as having two wizard pages combined in the display, but eventually a working solution was found.

Now, if a invalid parameter is discovered, the wizard returns to the first page, to allow the user to review and amend the settings, and then to proceed.


The intro wizard is changed to have radio buttons to select either Banking or Investment.  Also, the selection combobox has an 'Add New Profile' item.  Once the user has named the profile, selected the file to be imported, selected the input parameters and completed the import, the new profile is saved.

Later, on selecting the appropriate profile and filename, the csv file is imported without needing to go through the wizard pages.

That's the theory, anyway, but unfortunately, it's not always as straight forward as that.  In general, though, banking files should be straight forward, but the 'last line' setting could cause a problem if there are trailer lines that need to be dropped.

With investment files, there appear to be two general formats involving the security.  The file could have a column for the ticker symbol, but often this may not be supplied on every line and the user will need to add this before import.  Or, if the file includes just one security with no symbol column, the security name needs to be input.  Also, it may be necessary to supply the name of a brokerage account.  So, with imports of investments, the import process is not so straight-forward.

Then, there is a potential problem if an error is detected during import.  The wizard then reverts to 'non-profile' mode, giving the user the chance to correct possible selection problems, like with the end line.

When a profile is used, on completion of the import process, the final wizard page has 'lost' its Back button (that is, it's disabled).  This, I'm pretty sure, is  because, with several pages being skipped, there is no 'history' available to the wizard.

An outstanding issue is that, should a profile be deleted, or renamed, the resource file will still contain its settings, and will need to be edited at some stage.

I probably should mention that when the plugin is installed, the default resource file gets installed in ${CONFIG_INSTALL_DIR}), then is saved locally.  The reason is that I've left settings in for two investment profiles, to give the user some clues.

Diffs (updated)

  kmymoney/plugins/csvimport/CMakeLists.txt 9837a08 
  kmymoney/plugins/csvimport/completionwizardpage.ui 5adf2c2 
  kmymoney/plugins/csvimport/convdate.cpp 56bd235 
  kmymoney/plugins/csvimport/csvdialog.h 6885072 
  kmymoney/plugins/csvimport/csvdialog.cpp 754ee92 
  kmymoney/plugins/csvimport/csvdialog.ui 282c7a9 
  kmymoney/plugins/csvimport/csvimporterplugin.h f525463 
  kmymoney/plugins/csvimport/csvimporterplugin.cpp 48fa8de 
  kmymoney/plugins/csvimport/csvimporterrc 3ba3f55 
  kmymoney/plugins/csvimport/csvutil.cpp b566b66 
  kmymoney/plugins/csvimport/introwizardpage.ui 2dee1ce 
  kmymoney/plugins/csvimport/investmentdlg.cpp 33ee8bd 
  kmymoney/plugins/csvimport/investmentwizardpage.ui c37f0d5 
  kmymoney/plugins/csvimport/investprocessing.h cf56056 
  kmymoney/plugins/csvimport/investprocessing.cpp 9c33531 
  kmymoney/plugins/csvimport/kmm_csvimport.desktop 55491d9 
  kmymoney/plugins/csvimport/lines-datewizardpage.ui 9a4bbb6 
  kmymoney/plugins/csvimport/parsedatatest.cpp fa8bdc0 
  kmymoney/plugins/csvimport/redefinedlg.h 8b11b28 
  kmymoney/plugins/csvimport/redefinedlg.cpp 44294ae 
  kmymoney/plugins/csvimport/redefinedlgdecl.ui 35d8f43 
  kmymoney/plugins/csvimport/separatorwizardpage.ui f9d07d3 
  kmymoney/plugins/csvimport/symboltabledlg.cpp b38a6c5 

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


Tested with several different file layouts, including live work.  astyle run, and unit test.


Allan Anderson

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kmymoney-devel/attachments/20120115/798f9d2c/attachment.html>

More information about the KMyMoney-devel mailing list