Premise: pairwise combinatorics testing is only possible when all
options have at least 2 options.
The "General Journal" report is unique because it starts with the
Transaction Report options generator, and adds a few hidden
options. Unfortunately the Transaction Report receives the
"General/Stylesheet" option, with only 1 default stylesheet.
The General Journal report therefore has 1 stylesheet option with only
1 choice, and is not acceptable to jenny for pairwise testing. It
would fail the combinatorics testing. Adding other stylesheets did not
successfully allow pairwise testing. Therefore the simplest way to
test General Journal is to disable multichoice testing whereby
num(choices) is only 1.
The previous fix didn't calculate the comparison time correctly and
ended up in the wrong day because the GMT time is before the local time.
In the course of checking the corner-case timezones (Midway and
Kiritimati) I found an error in the GncDateTime calculation of the
neutral time, so fixed that too.
The code actually allowed fractional scaling, but the display of the option didn't.
As a result the spin button was acting oddly.
This was discovered while looking into bug
https://bugs.gnucash.org/show_bug.cgi?id=797712 but this commit is not a fix for that bug.
The previous change under this bug which propagated the status
change (reconcile or unreconcile) of any split for the account to
be reconciled (and its subaccounts) in a transaction, to all
splits for the account to be reconciled (and its subaccounts) in
the transaction, is incorrect. Each split needs to be able to be
checked or unchecked independently of any other split in the
transaction.
The changes for Bug 797236 so that the last selected split is
visible when the list is refreshed has no effect when the Delete
button is used, as the selected split has been deleted.
So preselect the next split after the split to be deleted.
If no next split in the list, select the previous.
The split preselected must have a different parent transaction to
the split to be deleted, as all splits in the transaction will be
deleted.
* add australian BAS rules
* add UK VAT rules
* rename *ECVAT* and *ECGOODS* to *EUVAT* and *EUGOODS*
* use (ice-9 match)
NOTE: has a backward-incompatible change to accounts
selection. Instead of requesting source accounts, ask source sales and
purchase accounts. Thus capital purchase to asset accounts can be reported.
With the requirement for Gtk+ 3.22, the version checks dealing with
checking for version 3.20 or 3.22 are no longer required so these have
been removed in the source files.
With the requirement for Gtk+ 3.22, the version checks dealing with CSS
can be removed and the application CSS files dealing with version 3.10
can be removed with the remaining being renamed.
Reported for Invoices on gnucash-user. Checked all other uses of
xaccTransSetPostDateSecs(), fixed the ones that weren't passing an
already normalized time64. For Invoices change the post_date to also be
normalized so that it stays the same as the transaction post_date. That
also protects it from the displayed date changing depending on timezone.
The python binding invoice post_time test had to be changed to match.
Enable the Reconcile window debit & credit unreconciled split
lists to be automatically updated when transactions for
subaccounts of the account to be reconciled are added, modified or
deleted. This already occurs for the reconciliation account.
This fixes 3 bugs:
- Set a monthly recurrence on the 10th with a start date on the 20th of this month.
The editor correctly shows the next occurrence to be on the 10th of the following month.
The schedule transaction summary dialog incorrectly shows the next occurrence to be on the 10th of this month
(before the start date!)
- Set a monthly recurrence on the 19th, with a start date on the 20th of this month. The editor's
calendar marks incorrectly show the next occurrence to be on the 19th of this month (before the start date).
- Set a monthly recurrence on the 18th, with a start date on the 20th and an end date on the 17 of the following
month. The calendar should show no mark, but fails to erase the marks that were present.
This issue arises every time a pending transaction is deleted (it does not arise if blank splits are deleted)
This PR fixes the issue by calling gnc_split_register_redraw once the pending transaction has be deleted.