Total Debits Issue re $0 Commodity Accounts and Price Source Mode Set to
"Nearest in Time" or "Most Recent"
There was a silent error from gnc-numeric-sub-fixed in
collect-unrealized-gains because a 0 value wasn't getting its
denominator set in the gnc-numeric-mul call in
gnc:exchange-by-pricedb-helper. While this is ultimately a flaw in
gnc-numeric, this commit works around it by forcing the value to the
correct denom in gnc:make-commodity-collector.
Unfortunately running glade-3 on this file will reorder it completely. So this
commit is only made ad interim to be able to isolate the actual change in the
subsequent one.
Remove incorrect week adjustments for determining n for nth weekday
from a recurrence date when day % 7 == 0. Adjustment is only needed
in nth_weekday_compare because that function then adds 7 to the result.
With the piechart in combination with other charts you have to set the
highlighter and cursor show tooltip to false which stops seen errors.
The syntax errors are caused by only removing the duplicated js files
and not the whole path so changed that to remove whole line.
When charging entries from bills we need to exclude taxes since the tax
rate of the invoice might be different than that of the bill.
This fixes Bug 776380 - Gross value of bills charged back instead of
net value (https://bugzilla.gnome.org/show_bug.cgi?id=776380)
xaccSplitSetValue and xaccSplitSetAmount round to the denominator found by
get_currency_denom and get_commodity_denom. The problem was that if the
commodity was unfindable because either the split’s parent or account hadn’t
been set (as is the case during loading, because the parent isn’t yet complete)
the returned denominator would be 100000, smaller than the max supported.
That would cause the value/amount to be prematurely rounded.
Guard against recursively calling the account doesn’t exist query or creation
dialog if one is already in the account creation dialog.
The underlying problem is that creating the dialog forces a UI update that
in turn sets the cell value and checks for the existence of the account.
In basic view the cell being displayed (“transfer”) isn’t the one being
changed (“account”) so the account check isn’t invoked, but in
multi-split view the “account” cell *is* displayed so the check is invoked
again.
Since they touch strings and user behavior they cannot go into maint.
The pull request now only includes the backend change. By that you can
easily tweak the invoice reports to show the net price.
Create one gncEntryGetPrice function which can create given price or
net price for both invoices and bills based on option parameters.
The master version of taxinvoice.eguile.scm needs this for bills too.
Add gncEntryGetNetPrice
Create an option in taxinvoice to either use gncEntryGetNetPrice or
gncEntryGetPrice
So far taxinvoice would show net or gross prices dependent on the internal flag tax_included.
This is inconsistent for the reader of the invoice since there is no notion of that flag.
This patch adds the option to always show net prices.
It does not change the default behaviour even if I would consider it broken.
Creates a new safe_sync function in struct provider and a new
gnc_db_do_safe_sync_all function with the guts of gnc_dbi_do_safe_sync_all.
The last calls the provider’s safe_sync function, which for SQLite3 and
PGSql wraps the call to gnc_dbi_do_safe_sync_all in a SQL transaction.
Unfortunately MySQL commits the transaction on the first schema-altering
query (CREATE_TABLE in this case) without decrementing sql_savepoint, so
raising an error when we try to release the (non-existent) save point at
the end of writing the tables.
Add a gnc_dbi_check_and_rollback_failed_save() to restore the database
after a failed safe_save; this is performed at the next connection.
In the travis environment (guile 1.8 in combination with other unidentified,
particular package versions) the scm based tests are looking for
backend modules (xml and dbi) in the installation prefix instead of
in the build directory. Explicitly setting the environment variables
GNC_BUILDDIR and GNC_UNINSTALLED fix this. I haven't figured out why this
is not needed on all platforms/tool version combinations. But the fix
works in all (autotools based) cases. CMake builds may need a similar
fix, but I don't know that environment sufficiently to implement it.
While a proper solution is only possible with a more recent
version of webkit, this commit will allow users to work around
the issue by manually setting a default zoom level for reports.
This setting can be found under
Edit->Preferences->Reports