fix: Auto email support for Custom Reports (#7441)

* fix: Added reference_report field

* fix: Auto email support for custom reports

* fix: Styling fixes

* fix: Use let instead of var
This commit is contained in:
Deepesh Garg 2019-05-10 18:17:47 +05:30 committed by Faris Ansari
parent efd5f52fde
commit eb4e2bce39
3 changed files with 70 additions and 5 deletions

View file

@ -100,7 +100,7 @@ class Report(Document):
columns = []
out = []
if self.report_type in ('Query Report', 'Script Report'):
if self.report_type in ('Query Report', 'Script Report', 'Custom Report'):
# query and script reports
data = frappe.desk.query_report.run(self.name, filters=filters, user=user)
for d in data.get('columns'):

View file

@ -54,9 +54,9 @@ frappe.ui.form.on('Auto Email Report', {
show_filters: function(frm) {
var wrapper = $(frm.get_field('filters_display').wrapper);
wrapper.empty();
if(frm.doc.report_type !== 'Report Builder'
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) {
&& frappe.query_reports[frm.doc.report].filters)) {
// make a table to show filters
var table = $('<table class="table table-bordered" style="cursor:pointer; margin:0px;"><thead>\
@ -65,7 +65,17 @@ frappe.ui.form.on('Auto Email Report', {
$('<p class="text-muted small">' + __("Click table to edit") + '</p>').appendTo(wrapper);
var filters = JSON.parse(frm.doc.filters || '{}');
var report_filters = frappe.query_reports[frm.doc.report].filters;
let report_filters;
if (frm.doc.report_type === 'Custom Report'
&& frappe.query_reports[frm.doc.reference_report]
&& frappe.query_reports[frm.doc.reference_report].filters) {
report_filters = frappe.query_reports[frm.doc.reference_report].filters;
} else {
report_filters = frappe.query_reports[frm.doc.report].filters;
}
if(report_filters && report_filters.length > 0) {
frm.set_value('filter_meta', JSON.stringify(report_filters));
}

View file

@ -21,6 +21,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "report",
"fieldtype": "Link",
"hidden": 0,
@ -55,6 +56,7 @@
"collapsible": 0,
"columns": 0,
"default": "User",
"fetch_if_empty": 0,
"fieldname": "user",
"fieldtype": "Link",
"hidden": 0,
@ -89,6 +91,7 @@
"collapsible": 0,
"columns": 0,
"default": "1",
"fetch_if_empty": 0,
"fieldname": "enabled",
"fieldtype": "Check",
"hidden": 0,
@ -121,6 +124,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "column_break_4",
"fieldtype": "Column Break",
"hidden": 0,
@ -153,6 +157,7 @@
"collapsible": 0,
"columns": 0,
"fetch_from": "report.report_type",
"fetch_if_empty": 0,
"fieldname": "report_type",
"fieldtype": "Read Only",
"hidden": 0,
@ -186,6 +191,41 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_from": "report.reference_report",
"fetch_if_empty": 0,
"fieldname": "reference_report",
"fieldtype": "Data",
"hidden": 1,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Reference Report",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "filter_data",
"fieldtype": "Section Break",
"hidden": 0,
@ -219,6 +259,7 @@
"collapsible": 0,
"columns": 0,
"default": "1",
"fetch_if_empty": 0,
"fieldname": "send_if_data",
"fieldtype": "Check",
"hidden": 0,
@ -254,6 +295,7 @@
"default": "",
"depends_on": "eval:doc.report_type=='Report Builder'",
"description": "Zero means send records updated at anytime",
"fetch_if_empty": 0,
"fieldname": "data_modified_till",
"fieldtype": "Int",
"hidden": 0,
@ -288,6 +330,7 @@
"columns": 0,
"default": "100",
"description": "",
"fetch_if_empty": 0,
"fieldname": "no_of_rows",
"fieldtype": "Int",
"hidden": 0,
@ -321,6 +364,7 @@
"collapsible": 1,
"columns": 0,
"depends_on": "eval:doc.report_type !== 'Report Builder'",
"fetch_if_empty": 0,
"fieldname": "report_filters",
"fieldtype": "Section Break",
"hidden": 0,
@ -353,6 +397,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "filters_display",
"fieldtype": "HTML",
"hidden": 0,
@ -385,6 +430,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "filters",
"fieldtype": "Text",
"hidden": 1,
@ -417,6 +463,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "filter_meta",
"fieldtype": "Text",
"hidden": 1,
@ -449,6 +496,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "email_settings",
"fieldtype": "Section Break",
"hidden": 0,
@ -481,6 +529,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "email_to",
"fieldtype": "Small Text",
"hidden": 0,
@ -515,6 +564,7 @@
"columns": 0,
"default": "Monday",
"depends_on": "eval:doc.frequency=='Weekly'",
"fetch_if_empty": 0,
"fieldname": "day_of_week",
"fieldtype": "Select",
"hidden": 0,
@ -548,6 +598,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "column_break_13",
"fieldtype": "Column Break",
"hidden": 0,
@ -579,6 +630,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "frequency",
"fieldtype": "Select",
"hidden": 0,
@ -612,6 +664,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "format",
"fieldtype": "Select",
"hidden": 0,
@ -645,6 +698,7 @@
"bold": 0,
"collapsible": 1,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "section_break_15",
"fieldtype": "Section Break",
"hidden": 0,
@ -677,6 +731,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "description",
"fieldtype": "Text Editor",
"hidden": 0,
@ -713,7 +768,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2018-11-13 01:59:17.816718",
"modified": "2019-05-09 21:45:36.944865",
"modified_by": "Administrator",
"module": "Email",
"name": "Auto Email Report",