mirror of
https://github.com/frappe/erpnext.git
synced 2026-04-14 04:15:10 +00:00
fix: add validation for exchange gain/loss entries
(cherry picked from commit d992f67658)
This commit is contained in:
@@ -194,7 +194,8 @@ def get_gl_entries(filters, accounting_dimensions):
|
|||||||
voucher_type, voucher_subtype, voucher_no, {dimension_fields}
|
voucher_type, voucher_subtype, voucher_no, {dimension_fields}
|
||||||
cost_center, project, {transaction_currency_fields}
|
cost_center, project, {transaction_currency_fields}
|
||||||
against_voucher_type, against_voucher, account_currency,
|
against_voucher_type, against_voucher, account_currency,
|
||||||
against, is_opening, creation {select_fields}
|
against, is_opening, creation {select_fields},
|
||||||
|
transaction_currency
|
||||||
from `tabGL Entry`
|
from `tabGL Entry`
|
||||||
where company=%(company)s {get_conditions(filters)}
|
where company=%(company)s {get_conditions(filters)}
|
||||||
{order_by_statement}
|
{order_by_statement}
|
||||||
|
|||||||
@@ -101,13 +101,18 @@ def convert_to_presentation_currency(gl_entries, currency_info):
|
|||||||
account_currencies = list(set(entry["account_currency"] for entry in gl_entries))
|
account_currencies = list(set(entry["account_currency"] for entry in gl_entries))
|
||||||
|
|
||||||
for entry in gl_entries:
|
for entry in gl_entries:
|
||||||
|
transaction_currency = entry.get("transaction_currency")
|
||||||
debit = flt(entry["debit"])
|
debit = flt(entry["debit"])
|
||||||
credit = flt(entry["credit"])
|
credit = flt(entry["credit"])
|
||||||
debit_in_account_currency = flt(entry["debit_in_account_currency"])
|
debit_in_account_currency = flt(entry["debit_in_account_currency"])
|
||||||
credit_in_account_currency = flt(entry["credit_in_account_currency"])
|
credit_in_account_currency = flt(entry["credit_in_account_currency"])
|
||||||
account_currency = entry["account_currency"]
|
account_currency = entry["account_currency"]
|
||||||
|
|
||||||
if len(account_currencies) == 1 and account_currency == presentation_currency:
|
if (
|
||||||
|
len(account_currencies) == 1
|
||||||
|
and account_currency == presentation_currency
|
||||||
|
and (transaction_currency is None or account_currency == transaction_currency)
|
||||||
|
):
|
||||||
entry["debit"] = debit_in_account_currency
|
entry["debit"] = debit_in_account_currency
|
||||||
entry["credit"] = credit_in_account_currency
|
entry["credit"] = credit_in_account_currency
|
||||||
else:
|
else:
|
||||||
|
|||||||
Reference in New Issue
Block a user