AUDIT: r17297 - gnucash/trunk - Register report: Add option to display memos when run from Basic Ledger mode. Refine the Description option. Space-saving column arrangement.
Charles Day
cedayiv at cvs.gnucash.org
Fri Jul 11 19:19:27 EDT 2008
Author: cedayiv
Date: 2008-07-11 19:19:26 -0400 (Fri, 11 Jul 2008)
New Revision: 17297
Trac: http://svn.gnucash.org/trac/changeset/17297
Modified:
gnucash/trunk/AUTHORS
gnucash/trunk/src/report/standard-reports/register.scm
Log:
Register report: Add option to display memos when run from Basic Ledger mode. Refine the Description option. Space-saving column arrangement.
Patch from Robert Stocks.
BP
Modified: gnucash/trunk/AUTHORS
===================================================================
--- gnucash/trunk/AUTHORS 2008-07-11 21:40:02 UTC (rev 17296)
+++ gnucash/trunk/AUTHORS 2008-07-11 23:19:26 UTC (rev 17297)
@@ -250,6 +250,7 @@
Henning Spruth <spruth at bigfoot.com> for German text & euro date rework
Ben Stanley <bds02 at uow.edu.au> test infrastructure
Robby Stephenson <robby.stephenson at usa.net> register & file history patches
+Robert Stocks <robert.stocks at gmail.com> additional register report options
Michael T. Garrison Stuber <garrisonstuber at bellsouth.net> report patch
Bartek Szady <bszx at bszxdomain.edu.eu.org> engine and build system patches
Herbert Thoma <tma at iis.fhg.de> gnome register & euro support patches
Modified: gnucash/trunk/src/report/standard-reports/register.scm
===================================================================
--- gnucash/trunk/src/report/standard-reports/register.scm 2008-07-11 21:40:02 UTC (rev 17296)
+++ gnucash/trunk/src/report/standard-reports/register.scm 2008-07-11 23:19:26 UTC (rev 17297)
@@ -26,22 +26,24 @@
(vector-ref columns-used 1))
(define (description-col columns-used)
(vector-ref columns-used 2))
+(define (memo-col columns-used)
+ (vector-ref columns-used 3))
(define (account-col columns-used)
- (vector-ref columns-used 3))
+ (vector-ref columns-used 4))
(define (shares-col columns-used)
- (vector-ref columns-used 4))
+ (vector-ref columns-used 5))
(define (price-col columns-used)
- (vector-ref columns-used 5))
+ (vector-ref columns-used 6))
(define (amount-single-col columns-used)
- (vector-ref columns-used 6))
+ (vector-ref columns-used 7))
(define (debit-col columns-used)
- (vector-ref columns-used 7))
+ (vector-ref columns-used 8))
(define (credit-col columns-used)
- (vector-ref columns-used 8))
+ (vector-ref columns-used 9))
(define (balance-col columns-used)
- (vector-ref columns-used 9))
+ (vector-ref columns-used 10))
-(define columns-used-size 10)
+(define columns-used-size 11)
(define (num-columns-required columns-used)
(do ((i 0 (+ i 1))
@@ -67,18 +69,29 @@
(set-col (make-set-col col-vector)))
(set-col (opt-val "Display" "Date") 0)
(set-col (opt-val "Display" "Num") 1)
- (set-col (opt-val "Display" "Description") 2)
- (set-col (opt-val "Display" "Account") 3)
- (set-col (opt-val "Display" "Shares") 4)
- (set-col (opt-val "Display" "Price") 5)
+ (set-col
+ (if (opt-val "__reg" "journal")
+ (or (opt-val "Display" "Memo") (opt-val "Display" "Description") (opt-val "__reg" "double") )
+ (opt-val "Display" "Description")
+ )
+ 2)
+ (set-col
+ (if (opt-val "__reg" "journal")
+ #f
+ (opt-val "Display" "Memo")
+ )
+ 3)
+ (set-col (opt-val "Display" "Account") 4)
+ (set-col (opt-val "Display" "Shares") 5)
+ (set-col (opt-val "Display" "Price") 6)
(let ((invoice? #f)
(amount-setting (opt-val "Display" "Amount")))
(if (or invoice? (eq? amount-setting 'single))
- (set-col #t 6)
+ (set-col #t 7)
(begin
- (set-col #t 7)
- (set-col #t 8))))
- (set-col (opt-val "Display" "Running Balance") 9)
+ (set-col #t 8)
+ (set-col #t 9))))
+ (set-col (opt-val "Display" "Running Balance") 10)
col-vector))
@@ -93,6 +106,8 @@
(addto! heading-list (_ "Num")))
(if (description-col column-vector)
(addto! heading-list (_ "Description")))
+ (if (memo-col column-vector)
+ (addto! heading-list (_ "Memo")))
(if (account-col column-vector)
(addto! heading-list (if multi-rows?
(_ "Account")
@@ -119,7 +134,7 @@
balance)))
(define (add-split-row table split column-vector row-style
- transaction-info? split-info? double?)
+ transaction-info? split-info? double? memo? description?)
(let* ((row-contents '())
(parent (xaccSplitGetParent split))
(account (xaccSplitGetAccount split))
@@ -145,10 +160,19 @@
(if (description-col column-vector)
(addto! row-contents
(if transaction-info?
- (xaccTransGetDescription parent)
+ (if description?
+ (xaccTransGetDescription parent)
+ " " )
(if split-info?
- (xaccSplitGetMemo split)
+ (if memo?
+ (xaccSplitGetMemo split)
+ " ")
" "))))
+ (if (memo-col column-vector)
+ (addto! row-contents
+ (if transaction-info?
+ (xaccSplitGetMemo split)
+ " ")))
(if (account-col column-vector)
(addto! row-contents
(if split-info?
@@ -277,6 +301,11 @@
(gnc:register-reg-option
(gnc:make-simple-boolean-option
+ (N_ "Display") (N_ "Memo")
+ "e" (N_ "Display the memo?") #t))
+
+ (gnc:register-reg-option
+ (gnc:make-simple-boolean-option
(N_ "Display") (N_ "Account")
"g" (N_ "Display the account?") #t))
@@ -374,7 +403,7 @@
(let ((current (xaccTransGetSplit parent i)))
(if (not (null? current))
(begin
- (add-split-row table current used-columns row-style #f #t #f)
+ (add-split-row table current used-columns row-style #f #t #f (opt-val "Display" "Memo") (opt-val "Display" "Description"))
(other-rows-driver split parent table
used-columns (+ i 1))))))
@@ -417,7 +446,9 @@
current-row-style
#t
(not multi-rows?)
- double?)))
+ double?
+ (opt-val "Display" "Memo")
+ (opt-val "Display" "Description"))))
(if multi-rows?
(add-other-split-rows
More information about the gnucash-changes
mailing list