After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 497517 - Transactions set to 'c' in the R(econciled) field of the register are incorrectly set to 'n' when postponing a reconciliation
Transactions set to 'c' in the R(econciled) field of the register are incorre...
Status: VERIFIED FIXED
Product: GnuCash
Classification: Other
Component: Register
git-master
Other All
: Normal normal
: ---
Assigned To: David Hampton
Chris Shoemaker
Depends on:
Blocks: backport
 
 
Reported: 2007-11-16 23:10 UTC by Jeff Green
Modified: 2018-06-29 21:54 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Patch to reconcile-list.h and reconcile-list.c (1.15 KB, patch)
2007-11-16 23:21 UTC, Jeff Green
none Details | Review
improvement to the first patch, initializes new field (1.35 KB, patch)
2007-12-06 08:11 UTC, Mark Jenkins
committed Details | Review

Description Jeff Green 2007-11-16 23:10:09 UTC
Please describe the problem:
When doing a reconciliation all transactions after the statement date are not auto-checked in the reconciliation window (even though they may to be set to 'c' in the register). If the reconciliation is postponed, all transactions without a checkmark in the reconciliation dialog are set to 'n' in the register. This means all the data for cleared transactions after the statement date is lost.

Steps to reproduce:
1. Create a few transactions with different dates and set them all to 'c' in the register (make sure that "Check Cleared Transactions" is selected in the Register preferences).
2. Click on "Reconcile" and pick a statement date before the date of at least one of the transactions.
3. Click "Postpone" in the reconciliation window.


Actual results:
When the reconciliation is postponed any transactions that were not checked in the reconciliation window (which will be all transactions after the statement date) will be set to 'n' in the register (even if there had been set to 'c' before).

Expected results:
I would expect the transactions after the statement date to remain unchanged, unless I explicitly changed their values (e.g. checked off one of the transactions after the statement date).

Does this happen every time?
Yes

Other information:
Comment 1 Jeff Green 2007-11-16 23:21:14 UTC
Created attachment 99229 [details] [review]
Patch to reconcile-list.h and reconcile-list.c
Comment 2 Jeff Green 2007-11-16 23:25:24 UTC
Comment on attachment 99229 [details] [review]
Patch to reconcile-list.h and reconcile-list.c

I have created a simple patch for this issue. When postponing a reconciliation it checks if the transaction occurs after the statement date. If it does then the value of the transaction in the register is only changed if the transaction has been marked as cleared (checked off) in the reconciliation window. This means that transactions after the statement date can only be changed from 'n' to 'c' (assumes that if user checks off a transaction they want it set to 'c' in the register).
Comment 3 Mark Jenkins 2007-12-06 08:11:46 UTC
Created attachment 100369 [details] [review]
improvement to the first patch, initializes new field

Hi Jeff,

I've noticed the time_t statement_date field that the patch in comment #1 adds to struct GNCReconcileList (src/gnome/reconcile-list.h). I see where you use it in in gnc_reconcile_list_postpone() (src/gnome/reconcile-list.c) when comparing against xaccTransGetDate(xaccSplitGetParent(split)).

What seems to be missing is the setting of this new field to a particular value.

I've attached a modified version of you patch that does this in gnc_reconcile_list_new.
Comment 4 Derek Atkins 2007-12-26 02:27:43 UTC
Applied to trunk as r16726.
Awaiting backport to 2.2.
Comment 5 Andreas Köhler 2008-01-05 01:02:22 UTC
branches/2.2 @ r16789 for GnuCash 2.2.3.
Thanks a lot!
Comment 6 John Ralls 2018-06-29 21:54:30 UTC
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=497517. Please update any external references or bookmarks.