diff --git a/erpnext/accounts/general_ledger.py b/erpnext/accounts/general_ledger.py index 57c8b964c23..b6424d0f5fb 100644 --- a/erpnext/accounts/general_ledger.py +++ b/erpnext/accounts/general_ledger.py @@ -196,6 +196,15 @@ def process_gl_map(gl_map, merge_entries=True, precision=None, from_repost=False def distribute_gl_based_on_cost_center_allocation(gl_map, precision=None, from_repost=False): + round_off_account, default_currency = frappe.get_cached_value( + "Company", gl_map[0].company, ["round_off_account", "default_currency"] + ) + if not precision: + precision = get_field_precision( + frappe.get_meta("GL Entry").get_field("debit"), + currency=default_currency, + ) + new_gl_map = [] for d in gl_map: cost_center = d.get("cost_center") @@ -213,6 +222,11 @@ def distribute_gl_based_on_cost_center_allocation(gl_map, precision=None, from_r new_gl_map.append(d) continue + if d.account == round_off_account: + d.cost_center = cost_center_allocation[0][0] + new_gl_map.append(d) + continue + for sub_cost_center, percentage in cost_center_allocation: gle = copy.deepcopy(d) gle.cost_center = sub_cost_center