From 5acf686c769f660f5d8bd5f5ca0e710aad99df76 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Sat, 18 Feb 2023 13:00:27 +0800 Subject: [PATCH] [eguile-utilities.scm] fmtnumeric: use xaccPrintAmount fmtnumeric is used to render Quantity, Discount percent. Previously it would render 1/3 as 0.333333333. Use xaccPrintAmount to show exact fractions for Qty and Discount, where appropriate. --- gnucash/report/eguile-utilities.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnucash/report/eguile-utilities.scm b/gnucash/report/eguile-utilities.scm index 01c9084057..4c0abc9db6 100644 --- a/gnucash/report/eguile-utilities.scm +++ b/gnucash/report/eguile-utilities.scm @@ -34,12 +34,13 @@ (use-modules (gnucash report)) (define-public (fmtnumber n) + (issue-deprecation-warning "fmtnumber is deprecated") ;; Format a number (integer or real) into something printable (number->string (if (integer? n) (inexact->exact n) n))) -;; Format gnc-numeric n with as many decimal places as required +;; Format gnc-numeric n with decimal places, or exact fraction (define-public fmtnumeric - (compose fmtnumber exact->inexact)) + (lambda (n) (xaccPrintAmount n (gnc-default-print-info #f)))) (define-public (gnc-monetary-neg? monetary) ;; return true if the monetary value is negative