|
@@ -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(); |
|
|
} |
|
|
} |
|
|
}); |
|
|
|
|
|
|
|
|
}); |