From 70944cabb33ba770b19c4b923026c50166bc544f Mon Sep 17 00:00:00 2001 From: Vimal Patel Date: Wed, 7 Jun 2023 12:25:52 +0100 Subject: [PATCH] fix: New Dashboard Chart throws TypeError: format requires a mapping closes #21250 --- frappe/desk/query_report.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/frappe/desk/query_report.py b/frappe/desk/query_report.py index 6f4bc716aa..814f556a0d 100644 --- a/frappe/desk/query_report.py +++ b/frappe/desk/query_report.py @@ -165,7 +165,8 @@ def get_script(report_name): script += f"\n\n//# sourceURL={scrub(report.name)}__custom" if not script: - script = "frappe.query_reports['%s']={}" % report_name + filters = json.dumps([prepare_filter(filter) for filter in report.filters]) + script = "frappe.query_reports['%s']={ 'filters': %s}" % (report_name, filters) return { "script": render_include(script), @@ -174,6 +175,18 @@ def get_script(report_name): } +def prepare_filter(filter): + filter = { + "fieldname": filter.fieldname, + "label": filter.label, + "fieldtype": filter.fieldtype, + "width": "80", + "options": filter.options, + "reqd": 1 + } + return filter + + @frappe.whitelist() @frappe.read_only() def run(