BugFix: Production Planning Tool - get_raw_materials
diff --git a/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.py b/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.py
index 3b529cb..ac4b0fa 100644
--- a/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.py
+++ b/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.py
@@ -243,10 +243,10 @@
"item_code": [qty_required, description, stock_uom, min_order_qty]
}
"""
- bom_wise_item_details = {}
item_list = []
-
+
for bom, so_wise_qty in bom_dict.items():
+ bom_wise_item_details = {}
if self.doc.use_multi_level_bom:
# get all raw materials with sub assembly childs
for d in webnotes.conn.sql("""select fb.item_code,
diff --git a/erpnext/stock/doctype/material_request/material_request.py b/erpnext/stock/doctype/material_request/material_request.py
index 28ec508..d3262c5 100644
--- a/erpnext/stock/doctype/material_request/material_request.py
+++ b/erpnext/stock/doctype/material_request/material_request.py
@@ -37,16 +37,16 @@
for so_no in so_items.keys():
for item in so_items[so_no].keys():
- already_indented = webnotes.conn.sql("""select sum(qty) from `tabMaterial Request Item`
+ already_indented = webnotes.conn.sql("""select sum(ifnull(qty, 0))
+ from `tabMaterial Request Item`
where item_code = %s and sales_order_no = %s and
docstatus = 1 and parent != %s""", (item, so_no, self.doc.name))
already_indented = already_indented and flt(already_indented[0][0]) or 0
- actual_so_qty = webnotes.conn.sql("""select sum(qty) from `tabSales Order Item`
- where parent = %s and item_code = %s and docstatus = 1
- group by parent""", (so_no, item))
+ actual_so_qty = webnotes.conn.sql("""select sum(ifnull(qty, 0)) from `tabSales Order Item`
+ where parent = %s and item_code = %s and docstatus = 1""", (so_no, item))
actual_so_qty = actual_so_qty and flt(actual_so_qty[0][0]) or 0
-
+
if actual_so_qty and (flt(so_items[so_no][item]) + already_indented > actual_so_qty):
webnotes.throw("You can raise indent of maximum qty: %s for item: %s against sales order: %s\
\n Anyway, you can add more qty in new row for the same item."