mirror of
https://github.com/frappe/erpnext.git
synced 2026-06-06 13:49:13 +00:00
fix(material-request): get remaining qty on partial transaction with product bundle
(cherry picked from commit 6ade609dd6)
# Conflicts:
# erpnext/selling/doctype/sales_order/sales_order.py
# erpnext/stock/doctype/material_request_item/material_request_item.json
This commit is contained in:
committed by
Mergify
parent
9bba78f7a2
commit
ca2b361a3e
@@ -831,10 +831,22 @@ def get_requested_item_qty(sales_order):
|
|||||||
for d in frappe.db.get_all(
|
for d in frappe.db.get_all(
|
||||||
"Material Request Item",
|
"Material Request Item",
|
||||||
filters={"docstatus": 1, "sales_order": sales_order},
|
filters={"docstatus": 1, "sales_order": sales_order},
|
||||||
|
<<<<<<< HEAD
|
||||||
fields=["sales_order_item", "sum(qty) as qty", "sum(received_qty) as received_qty"],
|
fields=["sales_order_item", "sum(qty) as qty", "sum(received_qty) as received_qty"],
|
||||||
group_by="sales_order_item",
|
group_by="sales_order_item",
|
||||||
|
=======
|
||||||
|
fields=[
|
||||||
|
"sales_order_item",
|
||||||
|
"packed_item",
|
||||||
|
{"SUM": "qty", "as": "qty"},
|
||||||
|
{"SUM": "received_qty", "as": "received_qty"},
|
||||||
|
],
|
||||||
|
group_by="sales_order_item, packed_item",
|
||||||
|
>>>>>>> 6ade609dd6 (fix(material-request): get remaining qty on partial transaction with product bundle)
|
||||||
):
|
):
|
||||||
result[d.sales_order_item] = frappe._dict({"qty": d.qty, "received_qty": d.received_qty})
|
result[d.sales_order_item or d.packed_item] = frappe._dict(
|
||||||
|
{"qty": d.qty, "received_qty": d.received_qty}
|
||||||
|
)
|
||||||
|
|
||||||
return result
|
return result
|
||||||
|
|
||||||
@@ -892,7 +904,8 @@ def make_material_request(source_name, target_doc=None):
|
|||||||
"Sales Order": {"doctype": "Material Request", "validation": {"docstatus": ["=", 1]}},
|
"Sales Order": {"doctype": "Material Request", "validation": {"docstatus": ["=", 1]}},
|
||||||
"Packed Item": {
|
"Packed Item": {
|
||||||
"doctype": "Material Request Item",
|
"doctype": "Material Request Item",
|
||||||
"field_map": {"parent": "sales_order", "uom": "stock_uom"},
|
"field_map": {"parent": "sales_order", "uom": "stock_uom", "name": "packed_item"},
|
||||||
|
"condition": lambda item: get_remaining_qty(item) > 0,
|
||||||
"postprocess": update_item,
|
"postprocess": update_item,
|
||||||
},
|
},
|
||||||
"Sales Order Item": {
|
"Sales Order Item": {
|
||||||
|
|||||||
@@ -55,6 +55,7 @@
|
|||||||
"lead_time_date",
|
"lead_time_date",
|
||||||
"sales_order",
|
"sales_order",
|
||||||
"sales_order_item",
|
"sales_order_item",
|
||||||
|
"packed_item",
|
||||||
"col_break4",
|
"col_break4",
|
||||||
"production_plan",
|
"production_plan",
|
||||||
"material_request_plan_item",
|
"material_request_plan_item",
|
||||||
@@ -485,6 +486,56 @@
|
|||||||
"options": "currency",
|
"options": "currency",
|
||||||
"print_hide": 1,
|
"print_hide": 1,
|
||||||
"read_only": 1
|
"read_only": 1
|
||||||
|
<<<<<<< HEAD
|
||||||
|
=======
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "item_reorder_section",
|
||||||
|
"fieldtype": "Section Break",
|
||||||
|
"label": "Item Reorder"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "column_break_fdjh",
|
||||||
|
"fieldtype": "Column Break"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "reorder_level",
|
||||||
|
"fieldtype": "Float",
|
||||||
|
"label": "Reorder Level",
|
||||||
|
"read_only": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "reorder_qty",
|
||||||
|
"fieldtype": "Float",
|
||||||
|
"label": "Reorder Qty",
|
||||||
|
"read_only": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"description": "If the reorder check is set at the Group warehouse level, the available quantity becomes the sum of the projected quantities of all its child warehouses.",
|
||||||
|
"fieldname": "projected_on_hand",
|
||||||
|
"fieldtype": "Float",
|
||||||
|
"label": "Projected On Hand",
|
||||||
|
"read_only": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "picked_qty",
|
||||||
|
"fieldtype": "Float",
|
||||||
|
"hidden": 1,
|
||||||
|
"label": "Picked Qty",
|
||||||
|
"no_copy": 1,
|
||||||
|
"non_negative": 1,
|
||||||
|
"read_only": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "packed_item",
|
||||||
|
"fieldtype": "Data",
|
||||||
|
"hidden": 1,
|
||||||
|
"label": "Packed Item",
|
||||||
|
"no_copy": 1,
|
||||||
|
"print_hide": 1,
|
||||||
|
"read_only": 1,
|
||||||
|
"search_index": 1
|
||||||
|
>>>>>>> 6ade609dd6 (fix(material-request): get remaining qty on partial transaction with product bundle)
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"idx": 1,
|
"idx": 1,
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ class MaterialRequestItem(Document):
|
|||||||
material_request_plan_item: DF.Data | None
|
material_request_plan_item: DF.Data | None
|
||||||
min_order_qty: DF.Float
|
min_order_qty: DF.Float
|
||||||
ordered_qty: DF.Float
|
ordered_qty: DF.Float
|
||||||
|
packed_item: DF.Data | None
|
||||||
page_break: DF.Check
|
page_break: DF.Check
|
||||||
parent: DF.Data
|
parent: DF.Data
|
||||||
parentfield: DF.Data
|
parentfield: DF.Data
|
||||||
|
|||||||
Reference in New Issue
Block a user