Merge pull request #41739 from frappe/mergify/bp/version-15-hotfix/pr-41497

fix: correcting balance sheet calculation for zero liabilities and equity (backport #41497)
This commit is contained in:
ruthra kumar
2024-07-10 10:30:12 +05:30
committed by GitHub

View File

@@ -109,7 +109,7 @@ def get_provisional_profit_loss(
): ):
provisional_profit_loss = {} provisional_profit_loss = {}
total_row = {} total_row = {}
if asset and (liability or equity): if asset:
total = total_row_total = 0 total = total_row_total = 0
currency = currency or frappe.get_cached_value("Company", company, "default_currency") currency = currency or frappe.get_cached_value("Company", company, "default_currency")
total_row = { total_row = {
@@ -122,14 +122,20 @@ def get_provisional_profit_loss(
for period in period_list: for period in period_list:
key = period if consolidated else period.key key = period if consolidated else period.key
effective_liability = 0.0 total_assets = flt(asset[0].get(key))
if liability:
effective_liability += flt(liability[-2].get(key))
if equity:
effective_liability += flt(equity[-2].get(key))
provisional_profit_loss[key] = flt(asset[-2].get(key)) - effective_liability if liability or equity:
total_row[key] = effective_liability + provisional_profit_loss[key] effective_liability = 0.0
if liability:
effective_liability += flt(liability[0].get(key))
if equity:
effective_liability += flt(equity[0].get(key))
provisional_profit_loss[key] = total_assets - effective_liability
else:
provisional_profit_loss[key] = total_assets
total_row[key] = provisional_profit_loss[key]
if provisional_profit_loss[key]: if provisional_profit_loss[key]:
has_value = True has_value = True