Переглянути джерело

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

Save as button in report builder menu
version-14
Rushabh Mehta 9 роки тому
committed by GitHub
джерело
коміт
2d15683bce
1 змінених файлів з 42 додано та 34 видалено
  1. +42
    -34
      frappe/public/js/frappe/views/reports/reportview.js

+ 42
- 34
frappe/public/js/frappe/views/reports/reportview.js Переглянути файл

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


// save
make_save: function() {
var me = this;
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;
}
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() {
var me = this;
if(this.can_delete) {
@@ -739,4 +747,4 @@ frappe.ui.ColumnPicker = Class.extend({
this.list.columns = columns;
this.list.run();
}
});
});

Завантаження…
Відмінити
Зберегти