Run country fixtures if country changed in the company (#12494)
This commit is contained in:
parent
51293390e4
commit
d78e6e04ea
@ -34,6 +34,7 @@ class Company(Document):
|
||||
self.validate_currency()
|
||||
self.validate_coa_input()
|
||||
self.validate_perpetual_inventory()
|
||||
self.check_country_change()
|
||||
|
||||
def validate_abbr(self):
|
||||
if not self.abbr:
|
||||
@ -80,9 +81,12 @@ class Company(Document):
|
||||
if not frappe.db.sql("""select name from tabAccount
|
||||
where company=%s and docstatus<2 limit 1""", self.name):
|
||||
if not frappe.local.flags.ignore_chart_of_accounts:
|
||||
frappe.flags.country_change = True
|
||||
self.create_default_accounts()
|
||||
self.create_default_warehouses()
|
||||
install_country_fixtures(self.name)
|
||||
|
||||
if frappe.flags.country_change:
|
||||
install_country_fixtures(self.name)
|
||||
|
||||
if not frappe.db.get_value("Cost Center", {"is_group": 0, "company": self.name}):
|
||||
self.create_default_cost_center()
|
||||
@ -147,6 +151,13 @@ class Company(Document):
|
||||
frappe.msgprint(_("Set default inventory account for perpetual inventory"),
|
||||
alert=True, indicator='orange')
|
||||
|
||||
def check_country_change(self):
|
||||
frappe.flags.country_change = False
|
||||
|
||||
if not self.get('__islocal') and \
|
||||
self.country != frappe.db.get_value('Company', self.name, 'country'):
|
||||
frappe.flags.country_change = True
|
||||
|
||||
def set_default_accounts(self):
|
||||
self._set_default_account("default_cash_account", "Cash")
|
||||
self._set_default_account("default_bank_account", "Bank")
|
||||
|
Loading…
x
Reference in New Issue
Block a user