From 5d6fdb8f05e8679fafa3a389de2e286e0091a91f Mon Sep 17 00:00:00 2001 From: rohitwaghchaure Date: Thu, 28 Dec 2017 12:55:21 +0530 Subject: [PATCH] Show zero rate column in the print if print_hide_if_no_value is disabled (#4694) --- frappe/www/printview.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/frappe/www/printview.py b/frappe/www/printview.py index c3be27f174..82af3e1f3c 100644 --- a/frappe/www/printview.py +++ b/frappe/www/printview.py @@ -398,7 +398,7 @@ def get_visible_columns(data, table_meta, df): doc = data[0] or frappe.new_doc(df.options) def add_column(col_df): return is_visible(col_df, doc) \ - and column_has_value(data, col_df.get("fieldname")) + and column_has_value(data, col_df.get("fieldname"), col_df) if df.get("visible_columns"): # columns specified by column builder @@ -418,10 +418,13 @@ def get_visible_columns(data, table_meta, df): return columns -def column_has_value(data, fieldname): +def column_has_value(data, fieldname, col_df): """Check if at least one cell in column has non-zero and non-blank value""" has_value = False + if col_df.fieldtype in ['Float', 'Currency'] and not col_df.print_hide_if_no_value: + return True + for row in data: value = row.get(fieldname) if value: