This version is available for all supported platforms and distros
(CentOS can have a version via EPEL, which is required anyway)
Advantages:
- one cmake version for all platforms
- we can drop all conditions based on cmake version
There were several issues:
- we store the compiled test*.go files in a tests subdirectory, but this is not
on the GUILE_LOAD_COMPILED_PATH. Added this directory to the path.
- guile was looking for 'script.scm.go' while we create 'script.go'. This is due
to how we invoke the scripts: guile -l path-to-script.scm -c (something)
we can replace this with -l path-to-script (without extension) as -l won't add
the extension. So I've rewrittin the test command to invoke (load-from-path).
- the test modules foo.scm, bar.scm and baz.scm should go in tests/gnucash
as they are defined as modules (gnucash foo), (gnucash bar) and (gnucash baz)
respectively.
- find html.scm/go on the load path instead of using a relative path.
Instead of random locations only occasionally related to the
corresponding source.
Includes renaming libgnucash/engine/test/test-extras.scm and
gnucash/report/report-system/test/test-extras.scm to avoid a
naming conflict.
need additional sanity checks.
in a book with no suitable AP/AR account, from 'Customers Overview'
spreadsheet, clicking 'Customer Listing' may call aging.scm renderer
with account = #f leading to report crash.
This will allow us to group our reports in subdirectories and still
easily load them all with one command.
For now it still only loads from a single standard reports directory.
It can easily be extended by adding extra subdirectories to
the report-dirs variable in reports.scm
This required the report-register-hook related stuff to move somewhere else as
it was causing a circular dependency. I've moved it into report-system.scm
which should already be built by the time reports is used.
With this business-reports.scm is now only loading the business reports.
The end goal of this cleanup is to have all reports grouped in
subdirectories of the new 'reports' directory.
This first commit moves the standard reports
which mostly involves renaming several modules and targets.
Add functionality to change at once the budget for all
periods of selected accounts.
It can :
replace with a new value
unset the budget
add a value to current budget
multiply current budget with value
Solvese issue #679800 and a duplicates (#639404, #760634)
portfolio.scm and advanced-portfolio.scm were not taking into account
transactions dated on the report-date. expand query so that end-date
is 23:59:59 rather than somewhere mid-day.
In the Preferences/Accounting Period, there is an option to specify
absolute dates but the end date was being set to start of day instead
of end of day, changed this.
The unrealized-gain calculator was flawed.
The fixed function is copied from balance-sheet.scm and adapted to
balsheet-pnl.scm vars.
This fixed function matches unrealized-gains amounts from
balance-sheet.scm
This is a usability upgrade.
This balsheet-pnl report does *not* enforce a report currency; it can
print, process and multilevel-total monetary amounts in their original
currency.
But a linked chart needs one. By default it uses global
report_currency which may not match the book's most used currencies.
This commit will scan the accountlist, retrieve the most common
currency used, and set it as the report-currency for the linked
chart.
The book-main-currency function *may* be upgraded to
report-utilities.scm in the future.
Case example:
* set gnc_default_report_currency to USD
* load book.gnucash with majority accounts in EUR, some in GBP
* run balsheet-pnl.scm - shows EUR and GBP amounts and mixed totals.
* click link to barchart - would not succeed because all amounts
converted to USD0.00. this commit will ensure barchart's target
currency is set to EUR thereby showing useful chart.