From 5afc1947422947e14638ce18d1745c382318db4c Mon Sep 17 00:00:00 2001 From: Neil Lasrado Date: Thu, 14 Sep 2017 18:32:27 +0530 Subject: [PATCH] [BUG] Fixes make Production Order from Sales Order --- .../selling/doctype/sales_order/sales_order.js | 2 +- .../selling/doctype/sales_order/sales_order.py | 17 +++++++++-------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/erpnext/selling/doctype/sales_order/sales_order.js b/erpnext/selling/doctype/sales_order/sales_order.js index 6f70ebe07e..9b39ad011f 100644 --- a/erpnext/selling/doctype/sales_order/sales_order.js +++ b/erpnext/selling/doctype/sales_order/sales_order.js @@ -193,7 +193,7 @@ erpnext.selling.SalesOrderController = erpnext.selling.SellingController.extend( }); return; } - else if(!r.message.every(function(d) { return !!d.pending_qty })) { + else if(!r.message) { frappe.msgprint({ title: __('Production Order not created'), message: __('Production Order already created for all items with BOM'), diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py index c3e28d21c7..e0ce3a4795 100644 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -336,14 +336,15 @@ class SalesOrder(SellingController): bom = get_default_bom_item(i.item_code) if bom: stock_qty = i.qty if i.doctype == 'Packed Item' else i.stock_qty - items.append(dict( - item_code= i.item_code, - bom = bom, - warehouse = i.warehouse, - pending_qty= stock_qty - flt(frappe.db.sql('''select sum(qty) from `tabProduction Order` - where production_item=%s and sales_order=%s''', (i.item_code, self.name))[0][0]) - )) - + pending_qty= stock_qty - flt(frappe.db.sql('''select sum(qty) from `tabProduction Order` + where production_item=%s and sales_order=%s and docstatus<2''', (i.item_code, self.name))[0][0]) + if pending_qty: + items.append(dict( + item_code= i.item_code, + bom = bom, + warehouse = i.warehouse, + pending_qty = pending_qty + )) return items def on_recurring(self, reference_doc, subscription_doc):