diff --git a/erpnext/setup/doctype/company/company.py b/erpnext/setup/doctype/company/company.py index 7181e90139e..553c0f5fc95 100644 --- a/erpnext/setup/doctype/company/company.py +++ b/erpnext/setup/doctype/company/company.py @@ -139,6 +139,7 @@ class Company(NestedSet): self.validate_abbr() self.validate_default_accounts() self.validate_currency() + self.validate_advance_account_currency() self.validate_coa_input() self.validate_perpetual_inventory() self.validate_provisional_account_for_non_stock_items() @@ -192,6 +193,29 @@ class Company(NestedSet): ).format(frappe.bold(account[0])) frappe.throw(error_message) + def validate_advance_account_currency(self): + if ( + self.default_advance_received_account + and frappe.get_cached_value("Account", self.default_advance_received_account, "account_currency") + != self.default_currency + ): + frappe.throw( + _("'{0}' should be in company currency {1}.").format( + frappe.bold("Default Advance Received Account"), frappe.bold(self.default_currency) + ) + ) + + if ( + self.default_advance_paid_account + and frappe.get_cached_value("Account", self.default_advance_paid_account, "account_currency") + != self.default_currency + ): + frappe.throw( + _("'{0}' should be in company currency {1}.").format( + frappe.bold("Default Advance Paid Account"), frappe.bold(self.default_currency) + ) + ) + def validate_currency(self): if self.is_new(): return