diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js index ec7e56ad3dd..e7f2998d2d7 100644 --- a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js +++ b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js @@ -559,12 +559,6 @@ cur_frm.fields_dict["items"].grid.get_field("cost_center").get_query = function }; }; -cur_frm.fields_dict["items"].grid.get_field("project").get_query = function (doc, cdt, cdn) { - return { - filters: [["Project", "status", "not in", "Completed, Cancelled"]], - }; -}; - frappe.ui.form.on("Purchase Invoice", { setup: function (frm) { frm.custom_make_buttons = { diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.js b/erpnext/buying/doctype/purchase_order/purchase_order.js index 78d9d34c940..436e788a7be 100644 --- a/erpnext/buying/doctype/purchase_order/purchase_order.js +++ b/erpnext/buying/doctype/purchase_order/purchase_order.js @@ -748,12 +748,6 @@ cur_frm.cscript.update_status = function (label, status) { }); }; -cur_frm.fields_dict["items"].grid.get_field("project").get_query = function (doc, cdt, cdn) { - return { - filters: [["Project", "status", "not in", "Completed, Cancelled"]], - }; -}; - if (cur_frm.doc.is_old_subcontracting_flow) { cur_frm.fields_dict["items"].grid.get_field("bom").get_query = function (doc, cdt, cdn) { var d = locals[cdt][cdn]; diff --git a/erpnext/buying/doctype/supplier_quotation/supplier_quotation.js b/erpnext/buying/doctype/supplier_quotation/supplier_quotation.js index 4beb17d7cf6..deb87234c50 100644 --- a/erpnext/buying/doctype/supplier_quotation/supplier_quotation.js +++ b/erpnext/buying/doctype/supplier_quotation/supplier_quotation.js @@ -126,9 +126,3 @@ erpnext.buying.SupplierQuotationController = class SupplierQuotationController e // for backward compatibility: combine new and previous states extend_cscript(cur_frm.cscript, new erpnext.buying.SupplierQuotationController({ frm: cur_frm })); - -cur_frm.fields_dict["items"].grid.get_field("project").get_query = function (doc, cdt, cdn) { - return { - filters: [["Project", "status", "not in", "Completed, Cancelled"]], - }; -}; diff --git a/erpnext/public/js/controllers/buying.js b/erpnext/public/js/controllers/buying.js index 5c3581ac2e4..394dcbca4f6 100644 --- a/erpnext/public/js/controllers/buying.js +++ b/erpnext/public/js/controllers/buying.js @@ -25,13 +25,15 @@ erpnext.buying = { }; }); - this.frm.set_query("project", function (doc) { - return { - filters: { - company: doc.company, - }, - }; - }); + const project_filters = { + query: "erpnext.controllers.queries.get_project_name", + filters: { + company: doc.company, + }, + }; + + this.frm.set_query("project", (_) => project_filters); + this.frm.set_query("project", "items", (_, __, ___) => project_filters); if ( this.frm.doc.__islocal &&