Merge pull request #2355 from saurabh6790/append_empty_field_dict

[fix] check for column field dict before appending child table data field
This commit is contained in:
Nabin Hait 2016-11-22 12:55:41 +05:30 committed by GitHub
commit f1f4f20cb9

View file

@ -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)