Browse Source

Merge pull request #1818 from KanchanChauhan/save-as-in-report-builder

Save as button in report builder menu
version-14
Rushabh Mehta 9 years ago
committed by GitHub
parent
commit
2d15683bce
1 changed files with 42 additions and 34 deletions
  1. +42
    -34
      frappe/public/js/frappe/views/reports/reportview.js

+ 42
- 34
frappe/public/js/frappe/views/reports/reportview.js View File

@@ -558,49 +558,57 @@ frappe.views.ReportView = frappe.ui.Listing.extend({
}, true); }, true);
}, },



// save // save
make_save: function() { make_save: function() {
var me = this; var me = this;
if(frappe.user.is_report_manager()) { if(frappe.user.is_report_manager()) {
this.page.add_menu_item(__('Save'), function() {
// name
if(me.docname) {
var name = me.docname
} else {
var name = prompt(__('Select Report Name'));
if(!name) {
this.page.add_menu_item(__('Save'), function() { me.save_report('save') }, true);
this.page.add_menu_item(__('Save As'), function() { me.save_report('save_as') }, true);
}
},
save_report: function(save_type) {
var me = this;

var _save_report = function(name) {
// callback
return frappe.call({
method: 'frappe.desk.reportview.save_report',
args: {
name: name,
doctype: me.doctype,
json: JSON.stringify({
filters: me.filter_list.get_filters(),
columns: me.columns,
sort_by: me.sort_by_select.val(),
sort_order: me.sort_order_select.val(),
sort_by_next: me.sort_by_next_select.val(),
sort_order_next: me.sort_order_next_select.val()
})
},
callback: function(r) {
if(r.exc) {
msgprint(__("Report was not saved (there were errors)"));
return; return;
} }
if(r.message != me.docname)
frappe.set_route('Report', me.doctype, r.message);
} }
});
}


// callback
return frappe.call({
method: 'frappe.desk.reportview.save_report',
args: {
name: name,
doctype: me.doctype,
json: JSON.stringify({
filters: me.filter_list.get_filters(),
columns: me.columns,
sort_by: me.sort_by_select.val(),
sort_order: me.sort_order_select.val(),
sort_by_next: me.sort_by_next_select.val(),
sort_order_next: me.sort_order_next_select.val()
})
},
callback: function(r) {
if(r.exc) {
msgprint(__("Report was not saved (there were errors)"));
return;
}
if(r.message != me.docname)
frappe.set_route('Report', me.doctype, r.message);
}
});
}, true);
if(me.docname && save_type == "save") {
_save_report(me.docname);
} else {
frappe.prompt({fieldname: 'name', label: __('New Report name'), reqd: 1, fieldtype: 'Data'}, function(data) {
_save_report(data.name);
}, __('Save As'));
} }
},


},
make_delete: function() { make_delete: function() {
var me = this; var me = this;
if(this.can_delete) { if(this.can_delete) {
@@ -739,4 +747,4 @@ frappe.ui.ColumnPicker = Class.extend({
this.list.columns = columns; this.list.columns = columns;
this.list.run(); this.list.run();
} }
});
});

Loading…
Cancel
Save