fix display unclosed values for trial/balance/sheet
This commit is contained in:
parent
d97200cb5a
commit
ea3b342dde
@ -14,17 +14,31 @@ def execute(filters=None):
|
|||||||
liability = get_data(filters.company, "Liability", "Credit", period_list, only_current_fiscal_year=False)
|
liability = get_data(filters.company, "Liability", "Credit", period_list, only_current_fiscal_year=False)
|
||||||
equity = get_data(filters.company, "Equity", "Credit", period_list, only_current_fiscal_year=False)
|
equity = get_data(filters.company, "Equity", "Credit", period_list, only_current_fiscal_year=False)
|
||||||
|
|
||||||
provisional_profit_loss = get_provisional_profit_loss(asset, liability, equity,
|
provisional_profit_loss,total_credit = get_provisional_profit_loss(asset, liability, equity,
|
||||||
period_list, filters.company)
|
period_list, filters.company)
|
||||||
|
|
||||||
message = check_opening_balance(asset, liability, equity)
|
message,opening_balance = check_opening_balance(asset, liability, equity)
|
||||||
|
|
||||||
data = []
|
data = []
|
||||||
data.extend(asset or [])
|
data.extend(asset or [])
|
||||||
data.extend(liability or [])
|
data.extend(liability or [])
|
||||||
data.extend(equity or [])
|
data.extend(equity or [])
|
||||||
|
if opening_balance and round(opening_balance,2) !=0:
|
||||||
|
unclosed ={
|
||||||
|
"account_name": "'" + _("Unclosed Fiscal Years Profit / Loss (Credit)") + "'",
|
||||||
|
"account": None,
|
||||||
|
"warn_if_negative": True,
|
||||||
|
"currency": frappe.db.get_value("Company", filters.company, "default_currency")
|
||||||
|
}
|
||||||
|
for period in period_list:
|
||||||
|
unclosed[period.key] = opening_balance
|
||||||
|
provisional_profit_loss[period.key] = provisional_profit_loss[period.key] - opening_balance
|
||||||
|
unclosed["total"]=opening_balance
|
||||||
|
data.append(unclosed)
|
||||||
|
|
||||||
if provisional_profit_loss:
|
if provisional_profit_loss:
|
||||||
data.append(provisional_profit_loss)
|
data.append(provisional_profit_loss)
|
||||||
|
data.append(total_credit)
|
||||||
|
|
||||||
columns = get_columns(filters.periodicity, period_list, company=filters.company)
|
columns = get_columns(filters.periodicity, period_list, company=filters.company)
|
||||||
|
|
||||||
@ -34,14 +48,20 @@ def execute(filters=None):
|
|||||||
|
|
||||||
def get_provisional_profit_loss(asset, liability, equity, period_list, company):
|
def get_provisional_profit_loss(asset, liability, equity, period_list, company):
|
||||||
if asset and (liability or equity):
|
if asset and (liability or equity):
|
||||||
total=0
|
total = total_total=0
|
||||||
|
currency = frappe.db.get_value("Company", company, "default_currency")
|
||||||
provisional_profit_loss = {
|
provisional_profit_loss = {
|
||||||
"account_name": "'" + _("Provisional Profit / Loss (Credit)") + "'",
|
"account_name": "'" + _("Provisional Profit / Loss (Credit)") + "'",
|
||||||
"account": None,
|
"account": None,
|
||||||
"warn_if_negative": True,
|
"warn_if_negative": True,
|
||||||
"currency": frappe.db.get_value("Company", company, "default_currency")
|
"currency": currency
|
||||||
|
}
|
||||||
|
total_row = {
|
||||||
|
"account_name": "'" + _("Total (Credit)") + "'",
|
||||||
|
"account": None,
|
||||||
|
"warn_if_negative": True,
|
||||||
|
"currency": currency
|
||||||
}
|
}
|
||||||
|
|
||||||
has_value = False
|
has_value = False
|
||||||
|
|
||||||
for period in period_list:
|
for period in period_list:
|
||||||
@ -52,6 +72,7 @@ def get_provisional_profit_loss(asset, liability, equity, period_list, company):
|
|||||||
effective_liability += flt(equity[-2].get(period.key))
|
effective_liability += flt(equity[-2].get(period.key))
|
||||||
|
|
||||||
provisional_profit_loss[period.key] = flt(asset[-2].get(period.key)) - effective_liability
|
provisional_profit_loss[period.key] = flt(asset[-2].get(period.key)) - effective_liability
|
||||||
|
total_row[period.key] = effective_liability + provisional_profit_loss[period.key]
|
||||||
|
|
||||||
if provisional_profit_loss[period.key]:
|
if provisional_profit_loss[period.key]:
|
||||||
has_value = True
|
has_value = True
|
||||||
@ -59,8 +80,12 @@ def get_provisional_profit_loss(asset, liability, equity, period_list, company):
|
|||||||
total += flt(provisional_profit_loss[period.key])
|
total += flt(provisional_profit_loss[period.key])
|
||||||
provisional_profit_loss["total"] = total
|
provisional_profit_loss["total"] = total
|
||||||
|
|
||||||
|
total_total += flt(total_row[period.key])
|
||||||
|
total_row["total"] = total_total
|
||||||
|
|
||||||
if has_value:
|
if has_value:
|
||||||
return provisional_profit_loss
|
return provisional_profit_loss, total_row
|
||||||
|
return None,total_row
|
||||||
|
|
||||||
def check_opening_balance(asset, liability, equity):
|
def check_opening_balance(asset, liability, equity):
|
||||||
# Check if previous year balance sheet closed
|
# Check if previous year balance sheet closed
|
||||||
@ -73,7 +98,8 @@ def check_opening_balance(asset, liability, equity):
|
|||||||
opening_balance -= flt(equity[0].get("opening_balance", 0))
|
opening_balance -= flt(equity[0].get("opening_balance", 0))
|
||||||
|
|
||||||
if opening_balance:
|
if opening_balance:
|
||||||
return _("Previous Financial Year is not closed")
|
return _("Previous Financial Year is not closed"),opening_balance
|
||||||
|
return None,None
|
||||||
|
|
||||||
def get_chart_data(columns, asset, liability, equity):
|
def get_chart_data(columns, asset, liability, equity):
|
||||||
x_intervals = ['x'] + [d.get("label") for d in columns[2:]]
|
x_intervals = ['x'] + [d.get("label") for d in columns[2:]]
|
||||||
|
@ -87,8 +87,7 @@ def get_opening_balances(filters):
|
|||||||
|
|
||||||
|
|
||||||
def get_rootwise_opening_balances(filters, report_type):
|
def get_rootwise_opening_balances(filters, report_type):
|
||||||
additional_conditions = " and posting_date >= %(year_start_date)s" \
|
additional_conditions = ""
|
||||||
if report_type == "Profit and Loss" else ""
|
|
||||||
|
|
||||||
if not flt(filters.with_period_closing_entry):
|
if not flt(filters.with_period_closing_entry):
|
||||||
additional_conditions += " and ifnull(voucher_type, '')!='Period Closing Voucher'"
|
additional_conditions += " and ifnull(voucher_type, '')!='Period Closing Voucher'"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user