diff --git a/frappe/desk/reportview.py b/frappe/desk/reportview.py index 2073eba2c1..abb759c533 100644 --- a/frappe/desk/reportview.py +++ b/frappe/desk/reportview.py @@ -102,6 +102,11 @@ def export_query(): frappe.permissions.can_export(doctype, raise_exception=True) + if 'selected_items' in form_params: + si = json.loads(frappe.form_dict.get('selected_items')) + form_params["filters"] = {"name": ("in", si)} + + del form_params["selected_items"] db_query = DatabaseQuery(doctype) ret = db_query.execute(**form_params) diff --git a/frappe/public/js/frappe/views/reports/reportview.js b/frappe/public/js/frappe/views/reports/reportview.js index c15ae2e2a5..b1c8c32ead 100644 --- a/frappe/public/js/frappe/views/reports/reportview.js +++ b/frappe/public/js/frappe/views/reports/reportview.js @@ -699,11 +699,10 @@ frappe.views.ReportView = frappe.ui.BaseList.extend({ } var export_btn = this.page.add_menu_item(__('Export'), function() { var args = me.get_args(); - + selected_items = me.get_checked_items() frappe.prompt({fieldtype:"Select", label: __("Select File Type"), fieldname:"file_format_type", options:"Excel\nCSV", default:"Excel", reqd: 1}, function(data) { - args.cmd = 'frappe.desk.reportview.export_query'; args.file_format_type = data.file_format_type; @@ -711,6 +710,9 @@ frappe.views.ReportView = frappe.ui.BaseList.extend({ args.add_totals_row = 1; } + if(selected_items.length >= 1) { + args.selected_items = $.map(selected_items, function(d) { return d.name; }); + } open_url_post(frappe.request.url, args); }, __("Export Report: " + me.doctype), __("Download"));