mirror of
https://github.com/frappe/erpnext.git
synced 2026-05-15 11:09:17 +00:00
fix: Cascade deletion for Company
This commit is contained in:
@@ -300,6 +300,9 @@ doc_events = {
|
||||
},
|
||||
('Quotation', 'Sales Order', 'Sales Invoice'): {
|
||||
'validate': ["erpnext.erpnext_integrations.taxjar_integration.set_sales_tax"]
|
||||
},
|
||||
"Company": {
|
||||
"on_trash": "erpnext.regional.india.utils.delete_gst_settings_for_company"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -849,4 +849,17 @@ def get_depreciation_amount(asset, depreciable_value, row):
|
||||
|
||||
depreciation_amount = flt(depreciable_value * (flt(rate_of_depreciation) / 100))
|
||||
|
||||
return depreciation_amount
|
||||
return depreciation_amount
|
||||
|
||||
def delete_gst_settings_for_company(doc, method):
|
||||
if doc.country != 'India':
|
||||
return
|
||||
|
||||
gst_settings = frappe.get_doc("GST Settings")
|
||||
|
||||
for d in reversed(gst_settings.get('gst_accounts')):
|
||||
if d.company == doc.name:
|
||||
gst_settings.remove(d)
|
||||
|
||||
gst_settings.save()
|
||||
|
||||
|
||||
@@ -393,6 +393,10 @@ class Company(NestedSet):
|
||||
frappe.db.sql("delete from `tabPurchase Taxes and Charges Template` where company=%s", self.name)
|
||||
frappe.db.sql("delete from `tabItem Tax Template` where company=%s", self.name)
|
||||
|
||||
# delete Process Deferred Accounts if no GL Entry found
|
||||
if not frappe.db.get_value('GL Entry', {'company': self.name}):
|
||||
frappe.db.sql("delete from `tabProcess Deferred Accounting` where company=%s", self.name)
|
||||
|
||||
@frappe.whitelist()
|
||||
def enqueue_replace_abbr(company, old, new):
|
||||
kwargs = dict(queue="long", company=company, old=old, new=new)
|
||||
|
||||
Reference in New Issue
Block a user