delete the auto created batch

This commit is contained in:
Rohit Waghchaure 2020-01-23 17:36:52 +05:30
parent 4f4dbf1996
commit 8996b7d8a4
4 changed files with 13 additions and 9 deletions

View File

@ -866,7 +866,7 @@ class PurchaseInvoice(BuyingController):
# because updating ordered qty in bin depends upon updated ordered qty in PO # because updating ordered qty in bin depends upon updated ordered qty in PO
if self.update_stock == 1: if self.update_stock == 1:
self.update_stock_ledger() self.update_stock_ledger()
self.unlink_reference_from_batch() self.delete_auto_created_batches()
self.make_gl_entries_on_cancel() self.make_gl_entries_on_cancel()
self.update_project() self.update_project()

View File

@ -234,12 +234,16 @@ class StockController(AccountsController):
frappe.throw(_("{0} {1}: Cost Center is mandatory for Item {2}").format( frappe.throw(_("{0} {1}: Cost Center is mandatory for Item {2}").format(
_(self.doctype), self.name, item.get("item_code"))) _(self.doctype), self.name, item.get("item_code")))
def unlink_reference_from_batch(self): def delete_auto_created_batches(self):
frappe.db.sql(""" UPDATE `tabBatch` for d in self.items:
SET reference_doctype = NULL, reference_name = NULL if not d.batch_no: continue
WHERE
reference_doctype = %s and reference_name = %s d.batch_no = None
""", (self.doctype, self.name)) d.db_set("batch_no", None)
for data in frappe.get_all("Batch",
{'reference_name': self.name, 'reference_doctype': self.doctype}):
frappe.delete_doc("Batch", data.name)
def get_sl_entries(self, d, args): def get_sl_entries(self, d, args):
sl_dict = frappe._dict({ sl_dict = frappe._dict({

View File

@ -195,7 +195,7 @@ class PurchaseReceipt(BuyingController):
# because updating ordered qty in bin depends upon updated ordered qty in PO # because updating ordered qty in bin depends upon updated ordered qty in PO
self.update_stock_ledger() self.update_stock_ledger()
self.make_gl_entries_on_cancel() self.make_gl_entries_on_cancel()
self.unlink_reference_from_batch() self.delete_auto_created_batches()
def get_current_stock(self): def get_current_stock(self):
for d in self.get('supplied_items'): for d in self.get('supplied_items'):

View File

@ -110,7 +110,7 @@ class StockEntry(StockController):
self.update_cost_in_project() self.update_cost_in_project()
self.update_transferred_qty() self.update_transferred_qty()
self.update_quality_inspection() self.update_quality_inspection()
self.unlink_reference_from_batch() self.delete_auto_created_batches()
def set_job_card_data(self): def set_job_card_data(self):
if self.job_card and not self.work_order: if self.job_card and not self.work_order: