? Corruption of reconciliation history

Derek Atkins warlord at MIT.EDU
Tue Apr 9 11:03:43 EDT 2013


Hi,

Michael Hendry <hendry.michael at gmail.com> writes:

> I last reconciled my current account on 15th February, against a statement dated 5th February.
>
> Today I went to reconcile the same account against a statement dated 5th March, but the "Reconcile Information" window says:
>
> Statement Date: 05/02/2013 (UK date format)
> Starting Balance £4667.77
> Ending Balance £3533.65
>
> This Starting Balance is incorrect for either the 5/02/2013 or the 05/03/2013 statement.
>
> I opened the backup copy of the 15th February, and went to reconcile the account, and got the following in the "Reconcile Information" window:
>
> Statement Date: 05/03/2013
> Starting Balance £3158.20
> Ending Balance £4750.47
>
> These figures are what I expected to see when I went to reconcile the current file today.

GnuCash keeps track of the last two reconciled dates in the account
structure.  It uses this to compute the "next" reconcile date.  The fact
that the current file shows Feb 5 but your backup shows March 5 implies
that somewhere along the line you stopped using your normal data file
and started using a backup file from before the reconcilation.  This
kind of corruption cannot happen by any user action within the app, so
it implies to me you somehow forked the data file (which can happen if
you ever open gnucash by clicking on the datafile and you accidentally
clicked on a backup file).  You can detect this by looking at the actual
filename.  If you see something like the following:
  MyDataFile.20130219xxxxxx.gnucash.20130409xxxxxx.gnucash
then you've done this.

As for the reconciled amounts, GnuCash does not store the last
reconciled balance; it's computed from the previously reconciled
transactions.  This means that if you accidentally change (or delete) a
reconciled transaction then it will throw off your starting balance.
Unfortunately how you correct this depends upon what change happened.

If you just accidentally unreconciled the transaction (i.e., you changed
the description or some other non-number) then it's an easy fix -- you
run the reconcile and ignore the starting balance.  This unreconciled
transaction will show up in the list and you just re-reconcile it.

Alas, that's not as easy if you wound up changing the amount or deleting
the transaction.  And yes, it is possible to change the amount without
unreconciling the transaction!  Both cases will change the starting
balance but not leave any traces in the list of unreconciled
transactions once you get to the second stage of the reconcile process.

Alas, the only way to fix this is to go through your history until you
find the errant transaction.

> The current GnuCash file seems to have the 5th Feb statement's
> transactions marked as reconciled (I haven't checked absolutely every
> one against the paper statement), and it looks as though whatever
> method GnuCash uses to keep track of past reconciliations has failed
> here.

I find it very odd that it would have the wrong date but also have those
transaction marked as reconciled.  Are you using a SQL storage?

> I really don't want to have to go back to the 15 Feb backup, and
> re-enter everything!
>
> Is there some way of fixing this without going back to the 15 Feb
> backup and re-entering everything from then on?

It depends what's broken.  Some things are easier to fix than others.
The first thing I would recommend is Actions -> Reset Warnings...

> Michael

> Please remember to CC this list on all your replies.
> You can do this by using Reply-To-List or Reply-All.

-derek

-- 
       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 at MIT.EDU                        PGP key available



More information about the gnucash-user mailing list