fix: Get data when grouped by invoice and otherwise

This commit is contained in:
GangaManoj
2021-08-25 02:52:18 +05:30
parent ae6e69ebd4
commit 70244cee89

View File

@@ -41,10 +41,16 @@ def execute(filters=None):
columns = get_columns(group_wise_columns, filters) columns = get_columns(group_wise_columns, filters)
for idx, src in enumerate(gross_profit_data.grouped_data): if filters.group_by == 'Invoice':
row = [] get_data_when_grouped_by_invoice(columns, gross_profit_data, filters, group_wise_columns, data)
for col in group_wise_columns.get(scrub(filters.group_by)):
row.append(src.get(col)) else:
get_data_when_not_grouped_by_invoice(gross_profit_data, filters, group_wise_columns, data)
return columns, data
def get_data_when_grouped_by_invoice(columns, gross_profit_data, filters, group_wise_columns, data):
column_names = get_column_names()
# to display item as Item Code: Item Name # to display item as Item Code: Item Name
columns[0] = 'Sales Invoice:Link/Item:300' columns[0] = 'Sales Invoice:Link/Item:300'
@@ -62,18 +68,17 @@ def execute(filters=None):
data.append(row) data.append(row)
else: def get_data_when_not_grouped_by_invoice(gross_profit_data, filters, group_wise_columns, data):
for src in gross_profit_data.grouped_data: for idx, src in enumerate(gross_profit_data.grouped_data):
row = [] row = []
row.append(filters.currency)
for col in group_wise_columns.get(scrub(filters.group_by)): for col in group_wise_columns.get(scrub(filters.group_by)):
row.append(src.get(col)) row.append(src.get(col))
row.append(filters.currency)
if idx == len(gross_profit_data.grouped_data)-1:
row[0] = frappe.bold("Total")
data.append(row) data.append(row)
return columns, data
def get_columns(group_wise_columns, filters): def get_columns(group_wise_columns, filters):
columns = [] columns = []
column_map = frappe._dict({ column_map = frappe._dict({