GNOME Bugzilla – Bug 635967
To-Create Scheduled Transaction Not Created
Last modified: 2018-06-29 22:48:31 UTC
Overview: When I mark a scheduled transaction "To-Create" and click okay the transaction is not entered in the appropriate account but the scheduled transaction "last occurrence" date is updated. Steps to Reproduce: 1. Open GnuCash 2. Mark Scheduled Transaction as "To-Create" 3. Click the review created transactions box 4. Click Ok Actual Results: Transaction was not created. Review transaction tab did not appear. Last occurrence date updated for scheduled transaction. Expected Results: Review tab opens and transactions created. Build Date & Platform: Mac OS: GnuCash 2.3.16 built from svn r19774M on 2010-11-07
How are you selecting the scheduled transaction and where is this "To-Create" option? (Do you mean the "Create Automatically" checkbox in the SX editor?)
As soon as GnuCash starts, the "Since Last Run..." window opens with scheduled transactions. In the transaction editor:overview tab, my transactions have (X means checked) X Enabled X Remind in advance: 28 days X Forever So the "Since Last Run..." window shows all transactions and those that are within the reminder period but not yet recorded look like Transaction Status Value > Bank XYZ 12/1/2010 Reminder > Mortgage 12/5/2010 Reminder etc. Clicking on the word "Reminder" gives the menu: Ignore Postpone To-Create Reminder In prior versions, I was able to select the "To-Create" option, check the box right above Cancel/OK that says "Review created transactions", and then click okay. In the main records window a tab labeled (I think) "Search Results" would appear with the created transactions. I could make any changes there and then close the tab and the transactions would be enter into the correct accounts. Now, the scheduled transaction gets its "Last Occurrence" date updated, but the new tab with created transactions does not appear nor are they entered into the correct accounts. I would be happy to help debug, but I don't know where to start.
I did some testing and found that if I go back to 2.3.15 and open a old copy of my records file (which is an sqlite file) and open the scheduled transaction editor and look at a transaction template everything looks normal, that is there is a list of accounts, amounts, etc. Now, if I take a copy of that data file and with 2.3.16 or 2.3.17, then the template transaction shows garbage. The accounts and amounts are gone! If I create a new transaction that will occur in a few days, close gnucash, open it again, and then proceed to try a "To-create" with "Review created transactions", then it works. So, did the format of scheduled transaction change between 2.3.15 and now? Was GnuCash supposed to automatically update the sqlite db to move old transactions to the new format?
After a bit of research (and with your detailed description I was able to replicate and debug the problem), I understand what's going wrong. It has to do with a catch-all table called "slots" (which holds all sorts of data that people have been too lazy to design proper data structures for) and the way hierarchical data are stored in that table -- which changed between 2.15 and 2.16 because while it worked for two-level hierarchies (like the templates) it didn't for deeper nesting levels (like online banking, transaction import, and others that I probably don't know about). It appears that the new scheme isn't able to read the old scheme, but I haven't figured out why yet. I should have a fix in svn in a few days.
Fixed in r19911. However, you should probably re-save from XML, since the change that caused this bug in the first place permitted saving slot data to sql backends that was ignored in 2.3.15 and earlier, so your database may be missing data.
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=635967. Please update any external references or bookmarks.