Bugfix: export-code for category-barchart reports would fail.

This stems from trying to handle file-name when calling export code.

Export code no longer require file-name, The export-code returns a
string in the html-document object instead. Remove all file-name
handling in reports. No backward compatibility issues because most
users would not copy a GnuCash >=4.6 report code onto a <4.5
installation.
This commit is contained in:
Christopher Lam 2021-03-29 15:32:22 +08:00
parent c91f0c81f8
commit 114758190e
6 changed files with 16 additions and 26 deletions

View File

@ -456,8 +456,7 @@
(define (generate-tax-or-txf report-name
report-description
report-obj
tax-mode?
file-name)
tax-mode?)
(define (get-option pagename optname)
(gnc:option-value
@ -861,14 +860,12 @@ Gehen Sie zu Bearbeiten -> Optionen Steuerbericht, um Konten entsprechend einzur
(G_ "This report shows your Taxable Income and \
Deductible Expenses.")
report-obj
#t
#f))
#t))
'export-types (list (cons (G_ "XML") 'txf))
'export-thunk (lambda (report-obj choice file-name)
'export-thunk (lambda (report-obj choice)
(generate-tax-or-txf
(G_ "Taxable Income / Deductible Expenses")
(G_ "This page shows your Taxable Income and \
Deductible Expenses.")
report-obj
#f
file-name)))
#f)))

View File

@ -1663,8 +1663,7 @@
(define (generate-tax-schedule report-name
report-description
report-obj
tax-mode?
file-name)
tax-mode?)
(define (get-option pagename optname)
(gnc:option-value
@ -3342,14 +3341,12 @@
(G_ "This report shows transaction detail for your accounts \
related to Income Taxes.")
report-obj
#t
#f))
#t))
'export-types (list (cons "TXF" 'txf))
'export-thunk (lambda (report-obj choice file-name)
'export-thunk (lambda* (report-obj choice)
(generate-tax-schedule
(G_ "Taxable Income/Deductible Expenses")
(G_ "This page shows transaction detail for relevant \
Income Tax accounts.")
report-obj
#f
file-name)))
#f)))

View File

@ -692,7 +692,7 @@ developing over time"))
'menu-tip menutip
'options-generator (lambda () (options-generator account-types inc-exp?))
'export-types '(("CSV" . csv))
'export-thunk (lambda (report-obj export-type filename)
'export-thunk (lambda (report-obj export-type)
(category-barchart-renderer
report-obj reportname uuid account-types inc-exp? reverse-bal?
export-type))

View File

@ -70,7 +70,7 @@ accounts may be tagged with *EUGOODS* in the account description."))
(gnc:html-markup-p
(G_ "This message will be removed when tax accounts are specified."))))
(define* (gst-statement-renderer rpt #:optional export-type file-name)
(define* (gst-statement-renderer rpt #:optional export-type)
(define (opt-val section name)
(gnc:option-value
(gnc:lookup-option (gnc:report-options rpt) section name)))
@ -83,10 +83,6 @@ accounts may be tagged with *EUGOODS* in the account description."))
#:custom-source-accounts sales-purch-accounts
#:custom-split-filter gst-custom-split-filter
#:export-type export-type))
(when file-name
(issue-deprecation-warning "gst-statement-renderer filename is \
obsolete, and not supported for exports. please set html-document \
export-string instead. this warning will be removed in GnuCash 5.0"))
(when (null? (opt-val "Accounts" "Tax Accounts"))
(gnc:html-document-add-object! document TAX-SETUP-DESC))
document)

View File

@ -487,7 +487,7 @@
'options-generator (lambda () (options-generator #f #f))
'renderer (lambda (report-obj) (net-renderer report-obj #f #f #f))
'export-types '(("CSV" . csv))
'export-thunk (lambda (report-obj export-type filename)
'export-thunk (lambda (report-obj export-type)
(net-renderer report-obj #f #f export-type)))
(gnc:define-report
@ -499,7 +499,7 @@
'options-generator (lambda () (options-generator #t #f))
'renderer (lambda (report-obj) (net-renderer report-obj #t #f #f))
'export-types '(("CSV" . csv))
'export-thunk (lambda (report-obj export-type filename)
'export-thunk (lambda (report-obj export-type)
(net-renderer report-obj #t #f export-type)))
(gnc:define-report
@ -510,7 +510,7 @@
'options-generator (lambda () (options-generator #f #t))
'renderer (lambda (report-obj) (net-renderer report-obj #f #t #f))
'export-types '(("CSV" . csv))
'export-thunk (lambda (report-obj export-type filename)
'export-thunk (lambda (report-obj export-type)
(net-renderer report-obj #f #t export-type)))
;; Not sure if a line chart makes sense for Income & Expense
@ -524,5 +524,5 @@
'options-generator (lambda () (options-generator #t #t))
'renderer (lambda (report-obj) (net-renderer report-obj #t #t #f))
'export-types '(("CSV" . csv))
'export-thunk (lambda (report-obj export-type filename)
'export-thunk (lambda (report-obj export-type)
(net-renderer report-obj #t #t export-type)))

View File

@ -160,7 +160,7 @@
'report-guid test-uuid
'options-generator gnc:new-options
'export-types (list (cons "text" 'txt))
'export-thunk (lambda (report-obj export-type file-name)
'export-thunk (lambda (report-obj export-type)
"exported-string")
'renderer (lambda (obj)
(let ((options (gnc:report-options obj)))
@ -177,7 +177,7 @@
(gnc:report-export-types report))
(test-equal "gnc:report-export-thunk"
"exported-string"
((gnc:report-export-thunk report) report 'csv "/tmp/file.txt"))
((gnc:report-export-thunk report) report 'csv))
(test-equal "gnc:report-menu-name"
"basic report"
(gnc:report-menu-name report))