Does GnuCash possess a Journal Entry numbering facility

Michael Hendry hendry.michael at gmail.com
Wed Oct 8 16:10:17 EDT 2014


On 8 Oct 2014, at 18:58, Derek Atkins <warlord at MIT.EDU> wrote:
> Buddha,
> 
> Buddha Buck <blaisepascal at gmail.com> writes:
> 
>> If I recall correctly, the existing gnucash data file format for transactions
>> includes a unique transaction id, a date posted, and a datetime entered, while
>> the individual splits can include a datetime reconciled.
>> 
>> Not all these fields are exposed in the UI, but they probably are in the API.
>> 
>> What purpose would be served by a new journal entry counter that couldn't be
>> served by these?
>> 
>> "Choosing to export the JE# field along with its Date permits searching for
>> subsequent JEs that predate a
>> reconciled balance so as to show the "offending" entry." could be done by
>> looking for searching for transactions which have a date-posted before the
>> reconciliation date, and a date-entered after the reconciliation date.
>> 
>> The unique transaction ID already serves as a unique identifier for a
>> transaction.
>> 
>> Or is there a difference between a journal entry and a transaction I'm not
>> aware of?
> 
> The idea is to have a monotonically increasing "transaction number" so
> you can map the transaction in gnucash to a real-world file.  You can
> easily see if you're missing documentation in the file by seeing that
> you have a gap in your records.
> 
> Using the GUID, while giving your uniqueness, is also random so does not
> give you an easy way to find said gaps.  Nor is there any particular
> order to them.
> 
> You could use the date-posted, date-entered, and GUID combined to create
> a mononotonically increasing transaction id.  That would give you the
> ordering, but you still don't get a way to see gaps of missing
> documentation.

Couldn’t have said it better myself!

In the short term, I can get back quickly to a (sequentially numbered) source document, to check a mismatched figure in a bank or credit card reconciliation.

In the longer run, I can quickly trace a source document as a proof-of-purchase if claiming under warranty, even several years later.

By no means all transactions will have an associated paper document - paying bills online, interest charges on bank accounts (where the only notice is on a bank statement) and scheduled transactions, for example.

It’s essential, though, for _every_ transaction to have a unique (and human-friendly!) number for this method to work.

Michael

> 
> -derek
> 
>> On Wed, Oct 8, 2014 at 1:14 PM, Derek Atkins <warlord at mit.edu> wrote:
>> 
>>    Michael Hendry <hendry.michael at gmail.com> writes:
>> 
>>>> I'm not convinced it would be a MAJOR alteration.  You would need to:
>>>> 
>>>> 1) add the data field to the Transaction object, and figure out how to
>>>>    best store it.
>>> 
>>> Wouldn’t that just happen automatically when the (enhanced) object is
>>> stored? (shows how much I know!).
>> 
>>    Maybe, maybe not.  Depends how you store it.  Care must be taken to make
>>    sure you don't make the data file unloadable by older versions of
>>    gnucash, or worse, silently lose the data on older versions.
>> 
>>>> 2) Store a global counter (we already have space for these)
>>> 
>>> There would also need to be a mechanism for starting the numbering at
>>> a user-specified number.
>> 
>>    This is just a UI nicety.  The counter mechanisms already exist, which
>>    is the harder part.
>> 
>>>> 3) Use the counter every time a transaction gets posted (well, the
>>    first
>>>>    time) to fill in the field
>>> 
>>> Yes, it would be necessary to distinguish between a newly created
>>> Transaction object and one which is being edited.
>> 
>>    That's easy enough -- when you commit the transaction just check if it
>>    already has a number and, if not, grab the next from the counter and
>>    store it.
>> 
>>>> 4) (optional) add a way to view the value from the register.
>>> 
>>> Yes, I would require this, so that I can mark the input document
>>    appropriately.
>>> 
>>>> 
>>>> Note:  what do you do if you later delete a transaction?
>>> 
>>> I’d be inclined to deal with this with a Contra Entry, with a text
>>> reference to the transaction number of the transaction which is to be
>>> reversed. I’d probably also edit the original transaction to say it
>>> had been reversed, with a reference to the Contra Entries sequence
>>> number.
>>> 
>>>> 
>>> 
>>> You’ve whetted my appetite, just a little…
>> 
>>    :)
>> 
>>> Michael
>> 
>>    -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
>> 
>>    _______________________________________________
>>    gnucash-user mailing list
>>    gnucash-user at gnucash.org
>>    https://lists.gnucash.org/mailman/listinfo/gnucash-user
>>    -----
>>    Please remember to CC this list on all your replies.
>>    You can do this by using Reply-To-List or Reply-All.





More information about the gnucash-user mailing list