[Gnucash-changes] r13790 - gnucash/trunk/src/report - Avoid trying to represent "forever-ago" with a timepair.

Chris Shoemaker chris at cvs.gnucash.org
Sat Apr 15 17:37:01 EDT 2006


Author: chris
Date: 2006-04-15 17:37:00 -0400 (Sat, 15 Apr 2006)
New Revision: 13790
Trac: http://svn.gnucash.org/trac/changeset/13790

Modified:
   gnucash/trunk/src/report/report-system/report-system.scm
   gnucash/trunk/src/report/report-system/report-utilities.scm
   gnucash/trunk/src/report/standard-reports/balance-sheet.scm
   gnucash/trunk/src/report/standard-reports/equity-statement.scm
   gnucash/trunk/src/report/standard-reports/trial-balance.scm
Log:
   Avoid trying to represent "forever-ago" with a timepair.
   Instead, call gnc:accountlist-get-comm-balance-at-date when we really just
   want the balance at one date.
   This fixes the retained-earnings calculation on the balance sheet report.


Modified: gnucash/trunk/src/report/report-system/report-system.scm
===================================================================
--- gnucash/trunk/src/report/report-system/report-system.scm	2006-04-15 21:26:56 UTC (rev 13789)
+++ gnucash/trunk/src/report/report-system/report-system.scm	2006-04-15 21:37:00 UTC (rev 13790)
@@ -585,6 +585,7 @@
 (export gnc:account-get-comm-balance-interval)
 (export gnc:group-get-comm-balance-interval)
 (export gnc:accountlist-get-comm-balance-interval)
+(export gnc:accountlist-get-comm-balance-at-date)
 (export gnc:query-set-match-non-voids-only!)
 (export gnc:query-set-match-voids-only!)
 (export gnc:split-voided?)

Modified: gnucash/trunk/src/report/report-system/report-utilities.scm
===================================================================
--- gnucash/trunk/src/report/report-system/report-utilities.scm	2006-04-15 21:26:56 UTC (rev 13789)
+++ gnucash/trunk/src/report/report-system/report-utilities.scm	2006-04-15 21:37:00 UTC (rev 13790)
@@ -645,6 +645,15 @@
               accountlist)
     collector))
 
+(define (gnc:accountlist-get-comm-balance-at-date accountlist date)
+   (let ((collector (gnc:make-commodity-collector)))
+    (for-each (lambda (account)
+                (gnc:commodity-collector-merge 
+                 collector (gnc:account-get-comm-balance-at-date 
+                            account date #f)))
+              accountlist)
+    collector))
+
 ;; utility function - ensure that a query matches only non-voids.  Destructive.
 (define (gnc:query-set-match-non-voids-only! query book)
   (let ((temp-query (gnc:malloc-query)))

Modified: gnucash/trunk/src/report/standard-reports/balance-sheet.scm
===================================================================
--- gnucash/trunk/src/report/standard-reports/balance-sheet.scm	2006-04-15 21:26:56 UTC (rev 13789)
+++ gnucash/trunk/src/report/standard-reports/balance-sheet.scm	2006-04-15 21:37:00 UTC (rev 13790)
@@ -277,7 +277,6 @@
     (gnc:option-value
      (gnc:lookup-option 
       (gnc:report-options report-obj) pagename optname)))
-  (define forever-ago (cons 0 0))
   
   (gnc:report-starting reportname)
   
@@ -481,9 +480,8 @@
 	  (gnc:report-percent-done 12)
 	  ;; sum any retained earnings
 	  (set! neg-retained-earnings
-		(gnc:accountlist-get-comm-balance-interval
-		 income-expense-accounts
-		 forever-ago date-tp))
+		(gnc:accountlist-get-comm-balance-at-date
+		 income-expense-accounts date-tp))
 	  (set! retained-earnings (gnc:make-commodity-collector))
 	  (retained-earnings 'minusmerge
 			  neg-retained-earnings

Modified: gnucash/trunk/src/report/standard-reports/equity-statement.scm
===================================================================
--- gnucash/trunk/src/report/standard-reports/equity-statement.scm	2006-04-15 21:26:56 UTC (rev 13789)
+++ gnucash/trunk/src/report/standard-reports/equity-statement.scm	2006-04-15 21:37:00 UTC (rev 13790)
@@ -193,7 +193,6 @@
     (gnc:option-value
      (gnc:lookup-option 
       (gnc:report-options report-obj) pagename optname)))
-  (define forever-ago (cons 0 0))
   
   (gnc:report-starting reportname)
   
@@ -440,13 +439,11 @@
 	  
 	  ;; start and end retained earnings (income - expenses)
 	  (set! neg-pre-start-retained-earnings
-		(gnc:accountlist-get-comm-balance-interval
-		 income-expense-accounts
-		 forever-ago start-date-tp)) ; OK
+		(gnc:accountlist-get-comm-balance-at-date
+		 income-expense-accounts start-date-tp)) ; OK
 	  (set! neg-pre-end-retained-earnings
-		(gnc:accountlist-get-comm-balance-interval
-		 income-expense-accounts
-		 forever-ago end-date-tp)) ; OK
+		(gnc:accountlist-get-comm-balance-at-date
+		 income-expense-accounts end-date-tp)) ; OK
 	  ;; neg-pre-end-retained-earnings is not used to calculate
 	  ;; profit but is used to calculate unrealized gains
 	  

Modified: gnucash/trunk/src/report/standard-reports/trial-balance.scm
===================================================================
--- gnucash/trunk/src/report/standard-reports/trial-balance.scm	2006-04-15 21:26:56 UTC (rev 13789)
+++ gnucash/trunk/src/report/standard-reports/trial-balance.scm	2006-04-15 21:37:00 UTC (rev 13790)
@@ -287,7 +287,6 @@
     (gnc:option-value
      (gnc:lookup-option 
       (gnc:report-options report-obj) pagename optname)))
-  (define forever-ago (cons 0 0))
   
   (gnc:report-starting reportname)
   



More information about the gnucash-changes mailing list