diff --git a/libgnucash/app-utils/gnc-ui-balances.c b/libgnucash/app-utils/gnc-ui-balances.c index 8529f7dbaa..b02fe76cb8 100644 --- a/libgnucash/app-utils/gnc-ui-balances.c +++ b/libgnucash/app-utils/gnc-ui-balances.c @@ -179,11 +179,11 @@ gnc_ui_account_get_print_report_balance (xaccGetBalanceInCurrencyFn fn, return g_strdup(xaccPrintAmount(balance, print_info)); } - -gnc_numeric -gnc_ui_account_get_balance_as_of_date (Account *account, - time64 date, - gboolean include_children) +static gnc_numeric +account_get_balance_as_of_date (Account *account, + time64 date, + gboolean include_children, + xaccGetBalanceAsOfDateFn fn) { QofBook *book = gnc_account_get_book (account); GNCPriceDB *pdb = gnc_pricedb_get_db (book); @@ -194,7 +194,7 @@ gnc_ui_account_get_balance_as_of_date (Account *account, return gnc_numeric_zero (); currency = xaccAccountGetCommodity (account); - balance = xaccAccountGetBalanceAsOfDate (account, date); + balance = fn (account, date); if (include_children) { @@ -210,7 +210,7 @@ gnc_ui_account_get_balance_as_of_date (Account *account, child = node->data; child_currency = xaccAccountGetCommodity (child); - child_balance = xaccAccountGetBalanceAsOfDate (child, date); + child_balance = fn (child, date); child_balance = gnc_pricedb_convert_balance_latest_price (pdb, child_balance, child_currency, @@ -228,6 +228,24 @@ gnc_ui_account_get_balance_as_of_date (Account *account, return balance; } +gnc_numeric +gnc_ui_account_get_balance_as_of_date (Account *account, + time64 date, + gboolean include_children) +{ + return account_get_balance_as_of_date (account, date, include_children, + xaccAccountGetBalanceAsOfDate); +} + +gnc_numeric +gnc_ui_account_get_reconciled_balance_as_of_date (Account *account, + time64 date, + gboolean include_children) +{ + return account_get_balance_as_of_date (account, date, include_children, + xaccAccountGetReconciledBalanceAsOfDate); +} + /******************************************************************** * Balance calculations related to owners diff --git a/libgnucash/app-utils/gnc-ui-balances.h b/libgnucash/app-utils/gnc-ui-balances.h index 8c8289ee8f..3479f74775 100644 --- a/libgnucash/app-utils/gnc-ui-balances.h +++ b/libgnucash/app-utils/gnc-ui-balances.h @@ -110,6 +110,10 @@ gnc_ui_account_get_print_report_balance (xaccGetBalanceInCurrencyFn fn, gnc_numeric gnc_ui_account_get_balance_as_of_date (Account *account, time64 date, gboolean include_children); +gnc_numeric +gnc_ui_account_get_reconciled_balance_as_of_date (Account *account, + time64 date, + gboolean include_children); /******************************************************************** * Balance calculations related to owners