Merge pull request #35510 from s-aga-r/FIX-ISS-23-24-01141
fix: ignore `Non-Stock Item` while calculating `% Picked` in Sales Order
This commit is contained in:
commit
5ebf46a1b5
@ -415,10 +415,17 @@ class SalesOrder(SellingController):
|
|||||||
def update_picking_status(self):
|
def update_picking_status(self):
|
||||||
total_picked_qty = 0.0
|
total_picked_qty = 0.0
|
||||||
total_qty = 0.0
|
total_qty = 0.0
|
||||||
|
per_picked = 0.0
|
||||||
|
|
||||||
for so_item in self.items:
|
for so_item in self.items:
|
||||||
total_picked_qty += flt(so_item.picked_qty)
|
if cint(
|
||||||
total_qty += flt(so_item.stock_qty)
|
frappe.get_cached_value("Item", so_item.item_code, "is_stock_item")
|
||||||
per_picked = total_picked_qty / total_qty * 100
|
) or self.has_product_bundle(so_item.item_code):
|
||||||
|
total_picked_qty += flt(so_item.picked_qty)
|
||||||
|
total_qty += flt(so_item.stock_qty)
|
||||||
|
|
||||||
|
if total_picked_qty and total_qty:
|
||||||
|
per_picked = total_picked_qty / total_qty * 100
|
||||||
|
|
||||||
self.db_set("per_picked", flt(per_picked), update_modified=False)
|
self.db_set("per_picked", flt(per_picked), update_modified=False)
|
||||||
|
|
||||||
|
@ -288,6 +288,10 @@ class PickList(Document):
|
|||||||
for item in locations:
|
for item in locations:
|
||||||
if not item.item_code:
|
if not item.item_code:
|
||||||
frappe.throw("Row #{0}: Item Code is Mandatory".format(item.idx))
|
frappe.throw("Row #{0}: Item Code is Mandatory".format(item.idx))
|
||||||
|
if not cint(
|
||||||
|
frappe.get_cached_value("Item", item.item_code, "is_stock_item")
|
||||||
|
) and not frappe.db.exists("Product Bundle", {"new_item_code": item.item_code}):
|
||||||
|
continue
|
||||||
item_code = item.item_code
|
item_code = item.item_code
|
||||||
reference = item.sales_order_item or item.material_request_item
|
reference = item.sales_order_item or item.material_request_item
|
||||||
key = (item_code, item.uom, item.warehouse, item.batch_no, reference)
|
key = (item_code, item.uom, item.warehouse, item.batch_no, reference)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user