From 00ee694444709a780269587977d471a9dea3a444 Mon Sep 17 00:00:00 2001 From: Pandiyan P Date: Wed, 16 Sep 2026 11:47:51 +0530 Subject: [PATCH] fix(stock): filter item group defaults by company and non-group records (#58923) --- .../setup/doctype/item_group/item_group.js | 33 ++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/erpnext/setup/doctype/item_group/item_group.js b/erpnext/setup/doctype/item_group/item_group.js index 86e341c5ae0..d7972901203 100644 --- a/erpnext/setup/doctype/item_group/item_group.js +++ b/erpnext/setup/doctype/item_group/item_group.js @@ -76,7 +76,38 @@ frappe.ui.form.on("Item Group", { }; }; - ["expenses_added_to_stock_account", "expenses_added_to_stock_contra_account"].forEach((field) => { + frm.set_query("default_warehouse", "item_group_defaults", (doc, cdt, cdn) => { + const row = locals[cdt][cdn]; + return { + filters: { company: row.company, is_group: 0 }, + }; + }); + + frm.set_query("default_inventory_account", "item_group_defaults", (doc, cdt, cdn) => { + const row = locals[cdt][cdn]; + return { + filters: { company: row.company, account_type: "Stock", is_group: 0 }, + }; + }); + + frm.set_query("default_provisional_account", "item_group_defaults", (doc, cdt, cdn) => { + const row = locals[cdt][cdn]; + return { + filters: { + company: row.company, + root_type: ["in", ["Liability", "Asset"]], + is_group: 0, + }, + }; + }); + + [ + "purchase_expense_account", + "purchase_expense_contra_account", + "default_cogs_account", + "expenses_added_to_stock_account", + "expenses_added_to_stock_contra_account", + ].forEach((field) => { frm.fields_dict["item_group_defaults"].grid.get_field(field).get_query = function ( doc, cdt,