AUDIT: r17293 - gnucash/trunk/src/report/report-system - Reporting: Ignore exchange rates if the quantity to exchange is zero.
Charles Day
cedayiv at cvs.gnucash.org
Fri Jul 11 12:06:49 EDT 2008
Author: cedayiv
Date: 2008-07-11 12:06:48 -0400 (Fri, 11 Jul 2008)
New Revision: 17293
Trac: http://svn.gnucash.org/trac/changeset/17293
Modified:
gnucash/trunk/src/report/report-system/commodity-utilities.scm
Log:
Reporting: Ignore exchange rates if the quantity to exchange is zero.
BP
Modified: gnucash/trunk/src/report/report-system/commodity-utilities.scm
===================================================================
--- gnucash/trunk/src/report/report-system/commodity-utilities.scm 2008-07-11 00:34:56 UTC (rev 17292)
+++ gnucash/trunk/src/report/report-system/commodity-utilities.scm 2008-07-11 16:06:48 UTC (rev 17293)
@@ -775,23 +775,24 @@
(define (gnc:make-exchange-function exchange-alist)
(let ((exchangelist exchange-alist))
(lambda (foreign domestic)
- (begin
- (gnc:debug "foreign: " foreign)
- (gnc:debug "domestic: " domestic)
- (if foreign
- (or (gnc:exchange-by-euro foreign domestic #f)
- (gnc:exchange-if-same foreign domestic)
- (gnc:make-gnc-monetary
- domestic
- (let ((pair (assoc (gnc:gnc-monetary-commodity foreign)
- exchangelist)))
- (if (not pair)
- (gnc-numeric-zero)
- (gnc-numeric-mul (gnc:gnc-monetary-amount foreign)
- (cadr pair)
- (gnc-commodity-get-fraction domestic)
- GNC-RND-ROUND)))))
- #f)))))
+ (gnc:debug "foreign: " foreign)
+ (gnc:debug "domestic: " domestic)
+ (if foreign
+ (or (gnc:exchange-by-euro foreign domestic #f)
+ (gnc:exchange-if-same foreign domestic)
+ (gnc:make-gnc-monetary
+ domestic
+ (let ((pair (assoc (gnc:gnc-monetary-commodity foreign)
+ exchangelist))
+ (foreign-amount (gnc:gnc-monetary-amount foreign)))
+ (if (or (not pair)
+ (gnc-numeric-zero-p foreign-amount))
+ (gnc-numeric-zero)
+ (gnc-numeric-mul foreign-amount
+ (cadr pair)
+ (gnc-commodity-get-fraction domestic)
+ GNC-RND-ROUND)))))
+ #f))))
;; Helper for the gnc:exchange-by-pricalist* below. Exchange the
;; <gnc:monetary> 'foreign' into the <gnc:commodity*> 'domestic' by
More information about the gnucash-changes
mailing list