fix: advance account validation in company master

(cherry picked from commit 1ad065fc54)
This commit is contained in:
ruthra kumar
2024-04-18 17:15:52 +05:30
committed by Mergify
parent fb4a75c5aa
commit dd67b0ee61

View File

@@ -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