gnucash maint: Multiple changes pushed
Christopher Lam
clam at code.gnucash.org
Sun Feb 5 09:20:39 EST 2023
Updated via https://github.com/Gnucash/gnucash/commit/9c87585d (commit)
via https://github.com/Gnucash/gnucash/commit/68cd8cfa (commit)
from https://github.com/Gnucash/gnucash/commit/928f4f62 (commit)
commit 9c87585d4eaddf314b439afd387b722e00d22cd7
Author: Christopher Lam <christopher.lck at gmail.com>
Date: Sun Feb 5 17:25:52 2023 +0800
Bug 798747 - Crash in Investment Portfolio report
add support for pricedb-before in portfolio reports
diff --git a/gnucash/report/reports/standard/advanced-portfolio.scm b/gnucash/report/reports/standard/advanced-portfolio.scm
index 7a71127a7..be4f50bae 100644
--- a/gnucash/report/reports/standard/advanced-portfolio.scm
+++ b/gnucash/report/reports/standard/advanced-portfolio.scm
@@ -1026,6 +1026,11 @@ by preventing negative stock balances.<br/>")
(lambda (foreign domestic date)
(find-price (gnc-pricedb-lookup-latest-any-currency pricedb foreign)
domestic)))
+ ((pricedb-before)
+ (lambda (foreign domestic date)
+ (find-price (gnc-pricedb-lookup-nearest-before-any-currency-t64
+ pricedb foreign (time64CanonicalDayTime date))
+ domestic)))
((pricedb-nearest)
(lambda (foreign domestic date)
(find-price (gnc-pricedb-lookup-nearest-in-time-any-currency-t64
diff --git a/gnucash/report/reports/standard/portfolio.scm b/gnucash/report/reports/standard/portfolio.scm
index 5a92db58d..5a0b547f0 100644
--- a/gnucash/report/reports/standard/portfolio.scm
+++ b/gnucash/report/reports/standard/portfolio.scm
@@ -229,6 +229,16 @@
(cons #f (gnc-numeric-zero)))))
(if price (gnc-price-list-destroy price))
fn)))
+ ((pricedb-before)
+ (lambda (foreign date)
+ (let ((price (gnc-pricedb-lookup-nearest-before-any-currency-t64
+ pricedb foreign (time64CanonicalDayTime date))))
+ (cond
+ ((null? price) (cons #f 0))
+ (else (let ((p (car price)))
+ (gnc-price-ref p)
+ (gnc-price-list-destroy price)
+ (cons p (gnc-price-get-value p))))))))
((pricedb-nearest)
(lambda (foreign date)
(let* ((price
commit 68cd8cfa2c41ae754a937fed7abd8b830ac2e8c6
Author: Christopher Lam <christopher.lck at gmail.com>
Date: Sun Feb 5 17:24:49 2023 +0800
[portfolio] remove unused the_price
diff --git a/gnucash/report/reports/standard/portfolio.scm b/gnucash/report/reports/standard/portfolio.scm
index 020e867de..5a92db58d 100644
--- a/gnucash/report/reports/standard/portfolio.scm
+++ b/gnucash/report/reports/standard/portfolio.scm
@@ -235,13 +235,7 @@
(gnc-pricedb-lookup-nearest-in-time-any-currency-t64
pricedb foreign (time64CanonicalDayTime date)))
(fn (if (and price (> (length price) 0))
- (let* ((the_price
- (if (gnc-commodity-equiv
- foreign
- (gnc-price-get-commodity (car price)))
- (car price)
- (gnc-price-invert (car price))))
- (v (gnc-price-get-value (car price))))
+ (let* ((v (gnc-price-get-value (car price))))
(gnc-price-ref (car price))
(cons (car price) v))
(cons #f (gnc-numeric-zero)))))
Summary of changes:
gnucash/report/reports/standard/advanced-portfolio.scm | 5 +++++
gnucash/report/reports/standard/portfolio.scm | 18 +++++++++++-------
2 files changed, 16 insertions(+), 7 deletions(-)
More information about the gnucash-changes
mailing list