diff --git a/frappe/email/doctype/auto_email_report/auto_email_report.js b/frappe/email/doctype/auto_email_report/auto_email_report.js index 62b562b97d..a6ceb08077 100644 --- a/frappe/email/doctype/auto_email_report/auto_email_report.js +++ b/frappe/email/doctype/auto_email_report/auto_email_report.js @@ -70,14 +70,18 @@ frappe.ui.form.on("Auto Email Report", { frm.trigger("show_filters"); } }, - show_filters: function (frm) { + show_filters: async function (frm) { var wrapper = $(frm.get_field("filters_display").wrapper); wrapper.empty(); + let reference_report = frappe.query_reports[frm.doc.report]; + if (!reference_report || !reference_report.filters) { + reference_report = await frappe.model.with_doc("Report", frm.doc.report); + } if ( frm.doc.report_type === "Custom Report" || (frm.doc.report_type !== "Report Builder" && - frappe.query_reports[frm.doc.report] && - frappe.query_reports[frm.doc.report].filters) + reference_report && + reference_report.filters) ) { // make a table to show filters var table = $( @@ -99,8 +103,8 @@ frappe.ui.form.on("Auto Email Report", { if ( frm.doc.report_type === "Custom Report" && - frappe.query_reports[frm.doc.reference_report] && - frappe.query_reports[frm.doc.reference_report].filters + reference_report && + reference_report.filters ) { if (frm.doc.filters) { filters = JSON.parse(frm.doc.filters); @@ -115,7 +119,7 @@ frappe.ui.form.on("Auto Email Report", { report_filters = frappe.query_reports[frm.doc.reference_report].filters; } else { filters = JSON.parse(frm.doc.filters || "{}"); - report_filters = frappe.query_reports[frm.doc.report].filters; + report_filters = reference_report.filters; } if (report_filters && report_filters.length > 0) {