AUDIT: r17678 - gnucash/trunk/src/report/standard-reports - Bug #347274: Fix r17675 to calculate correct differences

Christian Stimming cstim at cvs.gnucash.org
Sun Nov 2 15:51:13 EST 2008


Author: cstim
Date: 2008-11-02 15:51:12 -0500 (Sun, 02 Nov 2008)
New Revision: 17678
Trac: http://svn.gnucash.org/trac/changeset/17678

Modified:
   gnucash/trunk/src/report/standard-reports/budget.scm
Log:
Bug #347274: Fix r17675 to calculate correct differences

In the patch committed in r17675 the proposed calculation of differences
was wrong for income and liabilities. This patch should fix this issue.
When back-porting, please make sure to apply this one too.

Patch by C.Ernst.
BP

Modified: gnucash/trunk/src/report/standard-reports/budget.scm
===================================================================
--- gnucash/trunk/src/report/standard-reports/budget.scm	2008-10-31 10:28:40 UTC (rev 17677)
+++ gnucash/trunk/src/report/standard-reports/budget.scm	2008-11-02 20:51:12 UTC (rev 17678)
@@ -144,6 +144,7 @@
       (while (< period num-periods)
              (let* (
                     (comm (xaccAccountGetCommodity acct))
+                    (reverse-balance? (gnc-reverse-balance acct))
                     
                     ;; budgeted amount
                     (bgt-unset? (not (gnc-budget-is-account-period-value-set 
@@ -154,8 +155,11 @@
                                  (gnc:make-gnc-monetary comm bgt-numeric-val)))
 
                     ;; actual amount
-                    (act-numeric-val (gnc-budget-get-account-period-actual-value
+                    (act-numeric-abs (gnc-budget-get-account-period-actual-value 
                                   budget acct period))
+                    (act-numeric-val (if reverse-balance?
+                         (gnc-numeric-neg act-numeric-abs)
+                         act-numeric-abs))
                     (act-val (gnc:make-gnc-monetary comm act-numeric-val))
 
                     ;; difference (budget to actual)
@@ -164,13 +168,8 @@
                                  (bitwise-ior GNC-DENOM-LCD GNC-RND-NEVER)))
                     (dif-val (if bgt-unset? "."
                                  (gnc:make-gnc-monetary comm dif-numeric-val)))
-
-                    (reverse-balance? (gnc-reverse-balance acct))
                     )
 
-               (cond (reverse-balance? (set! act-val
-                                       (gnc:monetary-neg act-val))))
-
                (if show-budget?
                  (begin
                    (gnc:html-table-set-cell!



More information about the gnucash-changes mailing list