From a5b7bff45a3e563113309e79c5af6625c07438bf Mon Sep 17 00:00:00 2001 From: Saurabh Date: Tue, 22 Nov 2016 11:53:11 +0530 Subject: [PATCH] [fix] check for column field dict before appending child table data field --- frappe/www/print.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/frappe/www/print.py b/frappe/www/print.py index 3db4a5cf81..d9a0121df4 100644 --- a/frappe/www/print.py +++ b/frappe/www/print.py @@ -232,6 +232,11 @@ def make_layout(doc, meta, format_data=None): def get_new_section(): return {'columns': [], 'has_data': False} + def append_empty_field_dict_to_page_column(page): + """ append empty columns dict to page layout """ + if not page[-1]['columns']: + page[-1]['columns'].append({'fields': []}) + for df in format_data or meta.fields: if format_data: # embellish df with original properties @@ -263,16 +268,13 @@ def make_layout(doc, meta, format_data=None): else: # add a column if not yet added - if not page[-1]['columns']: - page[-1]['columns'].append({'fields': []}) + append_empty_field_dict_to_page_column(page) if df.fieldtype=="HTML" and df.options: doc.set(df.fieldname, True) # show this field if is_visible(df, doc) and has_value(df, doc): - if page[-1]['columns'] == []: - # if no column, add one - page[-1]['columns'].append({'fields': []}) + append_empty_field_dict_to_page_column(page) page[-1]['columns'][-1]['fields'].append(df) @@ -293,6 +295,7 @@ def make_layout(doc, meta, format_data=None): # new page, with empty section and column page = [get_new_section()] layout.append(page) + append_empty_field_dict_to_page_column(page) # continue the table in a new page df = copy.copy(df)