Merge branch 'develop' into patch_assdeprsch_gpa_ndb
This commit is contained in:
commit
72e9c05f46
@ -78,7 +78,6 @@ def validate_filters(filters):
|
|||||||
|
|
||||||
|
|
||||||
def get_data(filters):
|
def get_data(filters):
|
||||||
|
|
||||||
accounts = frappe.db.sql(
|
accounts = frappe.db.sql(
|
||||||
"""select name, account_number, parent_account, account_name, root_type, report_type, lft, rgt
|
"""select name, account_number, parent_account, account_name, root_type, report_type, lft, rgt
|
||||||
|
|
||||||
@ -118,12 +117,10 @@ def get_data(filters):
|
|||||||
ignore_closing_entries=not flt(filters.with_period_closing_entry),
|
ignore_closing_entries=not flt(filters.with_period_closing_entry),
|
||||||
)
|
)
|
||||||
|
|
||||||
total_row = calculate_values(
|
calculate_values(accounts, gl_entries_by_account, opening_balances)
|
||||||
accounts, gl_entries_by_account, opening_balances, filters, company_currency
|
|
||||||
)
|
|
||||||
accumulate_values_into_parents(accounts, accounts_by_name)
|
accumulate_values_into_parents(accounts, accounts_by_name)
|
||||||
|
|
||||||
data = prepare_data(accounts, filters, total_row, parent_children_map, company_currency)
|
data = prepare_data(accounts, filters, parent_children_map, company_currency)
|
||||||
data = filter_out_zero_value_rows(
|
data = filter_out_zero_value_rows(
|
||||||
data, parent_children_map, show_zero_values=filters.get("show_zero_values")
|
data, parent_children_map, show_zero_values=filters.get("show_zero_values")
|
||||||
)
|
)
|
||||||
@ -218,7 +215,7 @@ def get_rootwise_opening_balances(filters, report_type):
|
|||||||
return opening
|
return opening
|
||||||
|
|
||||||
|
|
||||||
def calculate_values(accounts, gl_entries_by_account, opening_balances, filters, company_currency):
|
def calculate_values(accounts, gl_entries_by_account, opening_balances):
|
||||||
init = {
|
init = {
|
||||||
"opening_debit": 0.0,
|
"opening_debit": 0.0,
|
||||||
"opening_credit": 0.0,
|
"opening_credit": 0.0,
|
||||||
@ -228,22 +225,6 @@ def calculate_values(accounts, gl_entries_by_account, opening_balances, filters,
|
|||||||
"closing_credit": 0.0,
|
"closing_credit": 0.0,
|
||||||
}
|
}
|
||||||
|
|
||||||
total_row = {
|
|
||||||
"account": "'" + _("Total") + "'",
|
|
||||||
"account_name": "'" + _("Total") + "'",
|
|
||||||
"warn_if_negative": True,
|
|
||||||
"opening_debit": 0.0,
|
|
||||||
"opening_credit": 0.0,
|
|
||||||
"debit": 0.0,
|
|
||||||
"credit": 0.0,
|
|
||||||
"closing_debit": 0.0,
|
|
||||||
"closing_credit": 0.0,
|
|
||||||
"parent_account": None,
|
|
||||||
"indent": 0,
|
|
||||||
"has_value": True,
|
|
||||||
"currency": company_currency,
|
|
||||||
}
|
|
||||||
|
|
||||||
for d in accounts:
|
for d in accounts:
|
||||||
d.update(init.copy())
|
d.update(init.copy())
|
||||||
|
|
||||||
@ -261,8 +242,28 @@ def calculate_values(accounts, gl_entries_by_account, opening_balances, filters,
|
|||||||
|
|
||||||
prepare_opening_closing(d)
|
prepare_opening_closing(d)
|
||||||
|
|
||||||
for field in value_fields:
|
|
||||||
total_row[field] += d[field]
|
def calculate_total_row(accounts, company_currency):
|
||||||
|
total_row = {
|
||||||
|
"account": "'" + _("Total") + "'",
|
||||||
|
"account_name": "'" + _("Total") + "'",
|
||||||
|
"warn_if_negative": True,
|
||||||
|
"opening_debit": 0.0,
|
||||||
|
"opening_credit": 0.0,
|
||||||
|
"debit": 0.0,
|
||||||
|
"credit": 0.0,
|
||||||
|
"closing_debit": 0.0,
|
||||||
|
"closing_credit": 0.0,
|
||||||
|
"parent_account": None,
|
||||||
|
"indent": 0,
|
||||||
|
"has_value": True,
|
||||||
|
"currency": company_currency,
|
||||||
|
}
|
||||||
|
|
||||||
|
for d in accounts:
|
||||||
|
if not d.parent_account:
|
||||||
|
for field in value_fields:
|
||||||
|
total_row[field] += d[field]
|
||||||
|
|
||||||
return total_row
|
return total_row
|
||||||
|
|
||||||
@ -274,7 +275,7 @@ def accumulate_values_into_parents(accounts, accounts_by_name):
|
|||||||
accounts_by_name[d.parent_account][key] += d[key]
|
accounts_by_name[d.parent_account][key] += d[key]
|
||||||
|
|
||||||
|
|
||||||
def prepare_data(accounts, filters, total_row, parent_children_map, company_currency):
|
def prepare_data(accounts, filters, parent_children_map, company_currency):
|
||||||
data = []
|
data = []
|
||||||
|
|
||||||
for d in accounts:
|
for d in accounts:
|
||||||
@ -305,6 +306,7 @@ def prepare_data(accounts, filters, total_row, parent_children_map, company_curr
|
|||||||
row["has_value"] = has_value
|
row["has_value"] = has_value
|
||||||
data.append(row)
|
data.append(row)
|
||||||
|
|
||||||
|
total_row = calculate_total_row(accounts, company_currency)
|
||||||
data.extend([{}, total_row])
|
data.extend([{}, total_row])
|
||||||
|
|
||||||
return data
|
return data
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user