<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="http://git.reviewboard.kde.org/r/103492/">http://git.reviewboard.kde.org/r/103492/</a>
     </td>
    </tr>
   </table>
   <br />


<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.org/media/rb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for KMymoney.</div>
<div>By Allan Anderson.</div>


<p style="color: grey;"><i>Updated Jan. 15, 2012, 1:09 p.m.</i></p>



<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Changes</h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">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.
</pre>
  </td>
 </tr>
</table>




<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">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.

PS.
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.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Tested with several different file layouts, including live work.  astyle run, and unit test.</pre>
  </td>
 </tr>
</table>




<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> (updated)</h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>kmymoney/plugins/csvimport/CMakeLists.txt <span style="color: grey">(9837a08)</span></li>

 <li>kmymoney/plugins/csvimport/completionwizardpage.ui <span style="color: grey">(5adf2c2)</span></li>

 <li>kmymoney/plugins/csvimport/convdate.cpp <span style="color: grey">(56bd235)</span></li>

 <li>kmymoney/plugins/csvimport/csvdialog.h <span style="color: grey">(6885072)</span></li>

 <li>kmymoney/plugins/csvimport/csvdialog.cpp <span style="color: grey">(754ee92)</span></li>

 <li>kmymoney/plugins/csvimport/csvdialog.ui <span style="color: grey">(282c7a9)</span></li>

 <li>kmymoney/plugins/csvimport/csvimporterplugin.h <span style="color: grey">(f525463)</span></li>

 <li>kmymoney/plugins/csvimport/csvimporterplugin.cpp <span style="color: grey">(48fa8de)</span></li>

 <li>kmymoney/plugins/csvimport/csvimporterrc <span style="color: grey">(3ba3f55)</span></li>

 <li>kmymoney/plugins/csvimport/csvutil.cpp <span style="color: grey">(b566b66)</span></li>

 <li>kmymoney/plugins/csvimport/introwizardpage.ui <span style="color: grey">(2dee1ce)</span></li>

 <li>kmymoney/plugins/csvimport/investmentdlg.cpp <span style="color: grey">(33ee8bd)</span></li>

 <li>kmymoney/plugins/csvimport/investmentwizardpage.ui <span style="color: grey">(c37f0d5)</span></li>

 <li>kmymoney/plugins/csvimport/investprocessing.h <span style="color: grey">(cf56056)</span></li>

 <li>kmymoney/plugins/csvimport/investprocessing.cpp <span style="color: grey">(9c33531)</span></li>

 <li>kmymoney/plugins/csvimport/kmm_csvimport.desktop <span style="color: grey">(55491d9)</span></li>

 <li>kmymoney/plugins/csvimport/lines-datewizardpage.ui <span style="color: grey">(9a4bbb6)</span></li>

 <li>kmymoney/plugins/csvimport/parsedatatest.cpp <span style="color: grey">(fa8bdc0)</span></li>

 <li>kmymoney/plugins/csvimport/redefinedlg.h <span style="color: grey">(8b11b28)</span></li>

 <li>kmymoney/plugins/csvimport/redefinedlg.cpp <span style="color: grey">(44294ae)</span></li>

 <li>kmymoney/plugins/csvimport/redefinedlgdecl.ui <span style="color: grey">(35d8f43)</span></li>

 <li>kmymoney/plugins/csvimport/separatorwizardpage.ui <span style="color: grey">(f9d07d3)</span></li>

 <li>kmymoney/plugins/csvimport/symboltabledlg.cpp <span style="color: grey">(b38a6c5)</span></li>

</ul>

<p><a href="http://git.reviewboard.kde.org/r/103492/diff/" style="margin-left: 3em;">View Diff</a></p>




  </td>
 </tr>
</table>




  </div>
 </body>
</html>