Other QIF bugs (or misfeatures)

Derek Atkins warlord@MIT.EDU
14 Feb 2001 11:32:43 -0500

grib@gnumatic.com (Bill Gribble) writes:

> On Wed, Feb 14, 2001 at 10:39:17AM -0500, Derek Atkins wrote:
> > 	* It would be nice if the list of "QIF files you have loaded"
> >           listed the filename and also the default QIF account. 
> This is iffy because many/most QIF files refer to lots of accounts,
> and/or don't need a "default" account because every transaction is
> explicitly listed in a !Account section.  I'm leaning "no" on this
> unless you can persuade me otherwise. 

Of all my concerns, this was the least of them. :)

> > 	* On the Match QIF account with Gnucash accounts page, there
> >           is no way to toggle the "new" column.  Even if the Gnucash
> >           account already exists (through a previous QIF import of by
> >           choosing an account through the chooser), the importer will
> >           still keep the "new" column checked.
> That's not supposed to be true, and I can't duplicate the behavior on
> my end.  Your later comments are confusing to me, too.  The "name
> conflict with existing account" happens only when you have specified
> (through saved mappings or explicit account designation) a Gnucash
> account which 
>     (a) already exists  AND 
>     (b) has a different currency/security from the account
>         intended for QIF import  OR
>     (c) is of an incompatible type (i.e. Quicken expense categories 
>         aren't compatible with a Gnucash Bank account). 

Well, I can give you the QIF file that this fails on, if you like.
Basically, I chose "Liabilities:Credit Cards:Chase MC" as my account.
After import, it generated "Liabilities 2:Credit Cards 2:Chase MC".
However, it's even weirder...  The resulting tree looks like this:

8-Liabilities 2
|  8-Liabilities:Credit Cards 2
|    +-Chase MC

Account Name: Liabilities
Currency: ISO4217:USD (US Dollar)
Account Code: 200
Type: Liability

Account Name: Liabilities 2
Description: QIF Import: Name conflict with another account
Currency: ISO4217:USD (US Dollar)
Security: ISO4217:USD (US Dollar) <greyed out>
Account Code: 200
Type: Credit Card

Obviously they are "different".  But this was supposed to be an
intermediate account, not the leaf account.  Walking down to the leaf
(Chase MC) account, I get:

Account Name: Chase MC
Description: Continental
Currency: ISO4217:USD (US Dollar)
Account Code: 229
Type: Credit Card
Parent: Liabilities -> Credit Cards

Account Name: Chase MC
Description: Continental
Currency: ISO4217:USD (US Dollar)
Account Code: 229
Type: Credit Card
Parent: Liabilties 2 -> Liabilities:Credit Cards 2

Clearly these are the same.  So the QIF importer got confused because
INTERMEDIATE accounts were not the same!

> With a current CVS gnucash (and I know you are running that :) if I
> select an existing account in the account picker the "new" checkmark
> goes away, even if the types are incompatible, and a new account is

This does not happen to me.  If I select an account from the account
picker, the checkbox does NOT go away.  Indeed, the checkbox will even
appear at times when it wasn't there earlier!  I'm hoping this isn't
another guile 1.3 badness.

> created with the "conflict" message IFF the accounts are actually
> incompatible.  Could you please pop up the Edit Account window for the
> "original" gnucash account and the "conflict" account and check the
> account Type, Currency, and Security?  (if the Security is grayed out,
> it's ignored, so it doesn't matter if they differ).  If they are all
> the same, i'm not sure what's going on.

As I showed above, they are not the same..  Or at least, the
intermediate (parent) accounts are not the same, even if the leaf
account is the same.  I think the importer should only care about the
leaf account type and work upwards from the end, rather than downwards
from the top.

> > 	* I did not get the "duplicate transaction" screen at all in
> >           the first import.  For kicks, I tried to import the same QIF
> >           file a second time, and again I did not get the duplicate
> >           transaction screen.  
> You only get the duplicate xtn screen if duplicates are detected; the
> algorithm is pretty strict right now, and given the way you described
> the import failures I doubt it would detect any at all (the Gnucash
> account endpoints of the transactions have to be the same for them to
> be duplicates, and the way you're describing them they are put into
> different, new accounts, so they aren't duplicates.).

Hrm.. I think we'll have to come back to this once we solve the
previous problem.

Oh, one more thing that may be an issue: ticker symbols for
commodities.  If I'm importing a QIF file into an "already existing"
account, it still asks for commodity ticker symbols.  It would be nice
if it would just use what's in the account already instead of asking
my every month when I import my account statement.

> b.g.


PS: If you'd like me to ship you any of these QIF files for you to
test, I'd be more than happy to do so.

       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL: http://web.mit.edu/warlord/    PP-ASEL-IA     N1NWH
       warlord@MIT.EDU                        PGP key available