Merge pull request #35410 from rohitwaghchaure/fixed-negative-reserved-qty-for-production-plan

fix: Negative value in Reserved Qty for Production Plan
diff --git a/erpnext/manufacturing/doctype/production_plan/production_plan.py b/erpnext/manufacturing/doctype/production_plan/production_plan.py
index e40539a..0800bdd 100644
--- a/erpnext/manufacturing/doctype/production_plan/production_plan.py
+++ b/erpnext/manufacturing/doctype/production_plan/production_plan.py
@@ -1534,7 +1534,7 @@
 		frappe.qb.from_(table)
 		.inner_join(child)
 		.on(table.name == child.parent)
-		.select(Sum(child.quantity * IfNull(child.conversion_factor, 1.0)))
+		.select(Sum(child.required_bom_qty * IfNull(child.conversion_factor, 1.0)))
 		.where(
 			(table.docstatus == 1)
 			& (child.item_code == item_code)
@@ -1552,6 +1552,9 @@
 		get_reserved_qty_for_production(item_code, warehouse, check_production_plan=True)
 	)
 
+	if reserved_qty_for_production > reserved_qty_for_production_plan:
+		return 0.0
+
 	return reserved_qty_for_production_plan - reserved_qty_for_production