[GNC] What do you think of this enhancement: Complete "part of a date" with date already in field, not date of entry?

Jim DeLaHunt list+gnucash at jdlh.com
Tue Jul 1 19:46:48 EDT 2025


Hello, fellow GnuCash users!

I have an enhancement request for GnuCash, which GnuCash reminds me 
about every time a new month begins. I have finally written it down. I 
would like your comments on how useful you think it is, and whether you 
see problems with it.

When one enters a part of a date into a date field, GnuCash uses a date 
from its context to fill out the rest of the date. For instance, if the 
context date is "2025-03-31", and one enters "6", GnuCash completes the 
date to "2025-03-06". If one enters "2-6", then GnuCash completes the 
date to "2025-02-06".

Currently the date context which GnuCash uses is the current date at the 
moment of data entry. Thus, if you launch GnuCash late on 2025-06-30, 
the context date is 2025-06-30. After your computer's clock passes 
midnight, GnuCash changes the context date to 2025-07-01.

I request that the context date be changed to the value currently in the 
date field. Often, that is the date most recently entered in that field. 
This is the case when entering a batch of transactions in an account 
register. Sometimes the date has another value. For example, when 
reconciling an account, GnuCash fills the date field for the 
reconciliation with the expected next statement date. If a date field 
gets created without a valid date value, then it is fine to populate it 
with the current date.

The date picker UI should likewise start with the date value currently 
in the date field.

This benefits me primarily when I enter a batch of transactions from a 
previous month by hand in an account register. If I manage to enter the 
transactions before the end of the month, then the current month matches 
the transaction month, and I only need to enter a day number. But as 
soon as the month ends, I have to enter two numbers: month and day.  And 
every new year, I have to enter a full date for every transaction.   But 
GnuCash typically populates a register's date entry field with the most 
recently-entered value. This enhancement means I would only need to 
enter the extra fields once, then I could enter just the day number for 
the rest of the batch.

A consideration is whether there are people who depend on the current 
behaviour and would be impacted by the enhancement difficult. For 
instance, someone who opens GnuCash for the first time in a month and 
enters a batch of transactions might be impacted. I suspect that the 
impact would be limited. When they enter the first date in a batch, they 
might have to supply a more complete date. But then that date becomes 
the existing value in the field, and so they can enter just the day 
number for the rest of the batch.

The documentation appears not to promise any particular context date. 
Manual sections 6.2.1 "Entering Directly in the Register Window"[1] and 
6.4. "Multiple Split Transactions"[2] both say, "It is also possible to 
type in the date or part of the date and let GnuCash fill the rest." It 
doesn't say how GnuCash fills in the rest.

What do you think? What am I missing?  I have entered an enhancement 
request for this change[3]. Comments welcome in this thread, or in that 
bug report.

Best regards,
      —Jim DeLaHunt

[1] <https://lists.gnucash.org/docs/C/gnucash-manual/trans-enter.html>
[2] <https://lists.gnucash.org/docs/C/gnucash-manual/trans-multi-enter.html>
[3] <https://bugs.gnucash.org/show_bug.cgi?id=799630>



More information about the gnucash-user mailing list