From 0e5c709f7b9d96ac4642d6926d27f17b066e0a3d Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Mon, 5 May 2025 18:01:29 +0530 Subject: [PATCH] fix: backward compatibility for renamed group_by filter on reports (backport #47362) (#47403) fix: backward compatibility for renamed group_by filter on reports (#47362) * fix: backward compatibility for renamed group_by filter in general ledger report * fix: backward compatibility for renamed group_by filter in supplier quotation comparison report (cherry picked from commit d4ffa54136b87b39af64de13406fc1ef4ce16cbe) Co-authored-by: Diptanil Saha --- erpnext/accounts/report/general_ledger/general_ledger.py | 4 ++++ .../supplier_quotation_comparison.py | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/erpnext/accounts/report/general_ledger/general_ledger.py b/erpnext/accounts/report/general_ledger/general_ledger.py index 967bd1ce503..28554125b67 100644 --- a/erpnext/accounts/report/general_ledger/general_ledger.py +++ b/erpnext/accounts/report/general_ledger/general_ledger.py @@ -63,6 +63,10 @@ def validate_filters(filters, account_details): if not account_details.get(account): frappe.throw(_("Account {0} does not exists").format(account)) + if not filters.get("categorize_by") and filters.get("group_by"): + filters["categorize_by"] = filters["group_by"] + filters["categorize_by"] = filters["categorize_by"].replace("Group by", "Categorize by") + if filters.get("account") and filters.get("categorize_by") == "Categorize by Account": filters.account = frappe.parse_json(filters.get("account")) for account in filters.account: diff --git a/erpnext/buying/report/supplier_quotation_comparison/supplier_quotation_comparison.py b/erpnext/buying/report/supplier_quotation_comparison/supplier_quotation_comparison.py index 3b445675e57..20267e9ae10 100644 --- a/erpnext/buying/report/supplier_quotation_comparison/supplier_quotation_comparison.py +++ b/erpnext/buying/report/supplier_quotation_comparison/supplier_quotation_comparison.py @@ -15,6 +15,8 @@ def execute(filters=None): if not filters: return [], [] + validate_filters(filters) + columns = get_columns(filters) supplier_quotation_data = get_data(filters) @@ -24,6 +26,12 @@ def execute(filters=None): return columns, data, message, chart_data +def validate_filters(filters): + if not filters.get("categorize_by") and filters.get("group_by"): + filters["categorize_by"] = filters["group_by"] + filters["categorize_by"] = filters["categorize_by"].replace("Group by", "Categorize by") + + def get_data(filters): sq = frappe.qb.DocType("Supplier Quotation") sq_item = frappe.qb.DocType("Supplier Quotation Item")