diff --git a/erpnext/controllers/accounts_controller.py b/erpnext/controllers/accounts_controller.py index 56ae25e92b..fe6b39dd05 100644 --- a/erpnext/controllers/accounts_controller.py +++ b/erpnext/controllers/accounts_controller.py @@ -1074,9 +1074,12 @@ def update_child_qty_rate(parent_doctype, trans_items, parent_doctype_name): for d in data: child_item = frappe.get_doc(parent_doctype + ' Item', d.get("docname")) - if flt(d.get("qty")) < child_item.delivered_qty: + if parent_doctype == "Sales Order" and flt(d.get("qty")) < child_item.delivered_qty: frappe.throw(_("Cannot set quantity less than delivered quantity")) + if parent_doctype == "Purchase Order" and flt(d.get("qty")) < child_item.received_qty: + frappe.throw(_("Cannot set quantity less than received quantity")) + child_item.qty = flt(d.get("qty")) if child_item.billed_amt > (flt(d.get("rate")) * flt(d.get("qty"))):