From db525c2538dae80e2c04c3cf5be386e9ec293628 Mon Sep 17 00:00:00 2001 From: Rohit Waghchaure Date: Wed, 9 Jul 2025 16:16:43 +0530 Subject: [PATCH] feat: parent item group support in Stock Projected Qty report (cherry picked from commit 6e80d89d133b37d9be30c24550b838a227d9bac7) --- .../report/stock_projected_qty/stock_projected_qty.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/erpnext/stock/report/stock_projected_qty/stock_projected_qty.py b/erpnext/stock/report/stock_projected_qty/stock_projected_qty.py index 9b4520064d6..3193ba3de51 100644 --- a/erpnext/stock/report/stock_projected_qty/stock_projected_qty.py +++ b/erpnext/stock/report/stock_projected_qty/stock_projected_qty.py @@ -5,6 +5,7 @@ import frappe from frappe import _ from frappe.utils import flt, today +from frappe.utils.nestedset import get_descendants_of from pypika.terms import ExistsCriterion from erpnext.accounts.doctype.pos_invoice.pos_invoice import get_pos_reserved_qty @@ -21,6 +22,10 @@ def execute(filters=None): columns = get_columns() bin_list = get_bin_list(filters) item_map = get_item_map(filters.get("item_code"), include_uom) + item_groups = [] + if filters.get("item_group"): + item_groups.append(filters.item_group) + item_groups.extend(get_descendants_of("Item Group", filters.item_group)) warehouse_company = {} data = [] @@ -40,7 +45,7 @@ def execute(filters=None): if filters.brand and filters.brand != item.brand: continue - elif filters.item_group and filters.item_group != item.item_group: + elif item_groups and item.item_group not in item_groups: continue elif filters.company and filters.company != company: