fix: filter opening entries in first year in custom financial statement

(cherry picked from commit 3c8a066484)
This commit is contained in:
vorasmit
2026-04-17 22:27:48 +05:30
committed by Mergify
parent 9f04fcc190
commit 6bd6e62c8c

View File

@@ -468,6 +468,7 @@ class FinancialQueryBuilder:
self.periods = periods
self.company = filters.get("company")
self.account_meta = {} # {name: {account_name, account_number}}
self.ignore_opening_entries = False
def fetch_account_balances(self, accounts: list[dict]) -> dict[str, AccountData]:
"""
@@ -505,6 +506,8 @@ class FinancialQueryBuilder:
"""
Return opening balances for *all accounts* defaulting to zero.
"""
self.ignore_opening_entries = False
if frappe.get_single_value("Accounts Settings", "ignore_account_closing_balance"):
return self._get_opening_balances_from_gl(accounts)
@@ -526,6 +529,8 @@ class FinancialQueryBuilder:
closing_data = self._get_closing_balances(accounts, closing_voucher.name)
if sum(closing_data.values()) != 0.0:
# opening in current period
self.ignore_opening_entries = True
return self._rebase_closing_balances(closing_data, closing_voucher.period_end_date)
return self._get_opening_balances_from_gl(accounts)
@@ -620,7 +625,10 @@ class FinancialQueryBuilder:
.groupby(gl_table.account)
)
if not frappe.get_single_value("Accounts Settings", "ignore_is_opening_check_for_reporting"):
ignore_is_opening = frappe.get_single_value(
"Accounts Settings", "ignore_is_opening_check_for_reporting"
)
if self.ignore_opening_entries and not ignore_is_opening:
query = query.where(gl_table.is_opening == "No")
# Add period-specific columns