RFC: Timestamps/timezones proposal

Charles Day cedayiv at gmail.com
Fri Jul 18 12:01:43 EDT 2008

On Fri, Jul 18, 2008 at 3:46 AM, Graham Leggett <minfrin at sharp.fm> wrote:

> Charles Day wrote:
>  ok, though what happens when the user decides to change the timezone for
>>> account A? (eg. I ask the bank to transfer my account from their Saint
>>> John's branch to their Vancouver branch, 5 timezones apart?) What happens
>>> to
>>> the timestamps and dates displayed then?
>> The timestamps don't change. Only the value displayed.
> This breaks double entry accounting.
> If account A and account B had different timezones, it means the balancing
> splits within a transaction can fall on different days.

No, splits don't have posting dates or times. The entire transaction uses a
single timestamp. That's how it works now. Under this proposal, that
timestamp would only be *displayed* differently in different registers, or
not, according to your preference.

> If this happened over the start or end of a period of time, your accounts
> would no longer balance - only half the split falls into the period!
> In order to be able to trust the data coming out of gnucash, gnucash must
> be completely 100% and absolutely unambiguous about the data. If the user
> specified a day, a month and a year, there must be absolutely no way
> possible at all that circumstances can conspire to have that day month and
> year changed to a different day month and year without the user's knowledge.
> The single and only way a date should change is if the user explicitly went
> in and changed that date, and at no other time.

I agree. What you experienced when you switched to the UK time zone is

> The only safe way to do this is to store a date as a date, and not a
> timestamp.

I disagree. If GnuCash uses timestamps, but a particular user such as
yourself wants to disable the effects of time of day and time zone
differences, then GnuCash could be set to use a single time zone for all
accounts. I imagine there being a global preference called something like "I
want to enter transaction times", which would be off by default, causing
GnuCash to completely ignore the time zone of your computer, So when you
moved your computer between time zones, it wouldn't affect your accounting.

> Regards,
> Graham
> --


More information about the gnucash-devel mailing list