fix: Support dynamic filter for Reports w/o js config

This commit is contained in:
Suraj Shetty 2023-08-11 12:38:41 +05:30
parent a1f3114305
commit 15bbe03d43

View file

@ -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) {