[fix] Customize Form - Report Hide (#2937)
- Hide fields from report builder selection if report hide is selected - Remove field from being shown in the report builder if report hide is selected
This commit is contained in:
parent
9f24dc98e4
commit
e50e5f15ef
3 changed files with 23 additions and 3 deletions
|
|
@ -37,6 +37,23 @@ def get_form_params():
|
|||
else:
|
||||
data["save_user_settings"] = True
|
||||
|
||||
for field in fields:
|
||||
key = field.split(" as ")[0]
|
||||
|
||||
if "." in key:
|
||||
parenttype, fieldname = key.split(".")[0][4:-1], key.split(".")[1].strip("`")
|
||||
else:
|
||||
parenttype = doctype
|
||||
fieldname = fieldname.strip("`")
|
||||
|
||||
df = frappe.get_meta(parenttype).get_field(fieldname)
|
||||
|
||||
report_hide = df.report_hide if df else None
|
||||
|
||||
# remove the field from the query if the report hide flag is set
|
||||
if report_hide:
|
||||
fields.remove(field)
|
||||
|
||||
|
||||
# queries must always be server side
|
||||
data.query = None
|
||||
|
|
|
|||
|
|
@ -843,7 +843,8 @@ frappe.ui.FieldSelect = Class.extend({
|
|||
// main table
|
||||
var main_table_fields = std_filters.concat(frappe.meta.docfield_list[me.doctype]);
|
||||
$.each(frappe.utils.sort(main_table_fields, "label", "string"), function(i, df) {
|
||||
if(frappe.perm.has_perm(me.doctype, df.permlevel, "read"))
|
||||
// show fields where user has read access and if report hide flag is not set
|
||||
if(frappe.perm.has_perm(me.doctype, df.permlevel, "read") && !df.report_hide)
|
||||
me.add_field_option(df);
|
||||
});
|
||||
|
||||
|
|
@ -852,7 +853,8 @@ frappe.ui.FieldSelect = Class.extend({
|
|||
if(table_df.options) {
|
||||
var child_table_fields = [].concat(frappe.meta.docfield_list[table_df.options]);
|
||||
$.each(frappe.utils.sort(child_table_fields, "label", "string"), function(i, df) {
|
||||
if(frappe.perm.has_perm(me.doctype, df.permlevel, "read"))
|
||||
// show fields where user has read access and if report hide flag is not set
|
||||
if(frappe.perm.has_perm(me.doctype, df.permlevel, "read") && !df.report_hide)
|
||||
me.add_field_option(df);
|
||||
});
|
||||
}
|
||||
|
|
|
|||
|
|
@ -151,7 +151,8 @@ frappe.views.ReportView = frappe.ui.BaseList.extend({
|
|||
var columns = [['name', this.doctype],];
|
||||
$.each(frappe.meta.docfield_list[this.doctype], function(i, df) {
|
||||
if((df.in_standard_filter || df.in_list_view) && df.fieldname!='naming_series'
|
||||
&& !in_list(frappe.model.no_value_type, df.fieldtype)) {
|
||||
&& !in_list(frappe.model.no_value_type, df.fieldtype)
|
||||
&& !df.report_hide) {
|
||||
columns.push([df.fieldname, df.parent]);
|
||||
}
|
||||
});
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue