refactor: separate function for statement dict
diff --git a/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.py b/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.py
index e758ee1..6c959ba 100644
--- a/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.py
+++ b/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.py
@@ -48,6 +48,20 @@
def get_report_pdf(doc, consolidated=True):
+ statement_dict = get_statement_dict(doc)
+ if not bool(statement_dict):
+ return False
+ elif consolidated:
+ delimiter = '<div style="page-break-before: always;"></div>' if doc.include_break else ""
+ result = delimiter.join(list(statement_dict.values()))
+ return get_pdf(result, {"orientation": doc.orientation})
+ else:
+ for customer, statement_html in statement_dict.items():
+ statement_dict[customer] = get_pdf(statement_html, {"orientation": doc.orientation})
+ return statement_dict
+
+
+def get_statement_dict(doc, get_statement_dict=False):
statement_dict = {}
ageing = ""
@@ -78,18 +92,11 @@
if not res:
continue
- statement_dict[entry.customer] = get_html(doc, filters, entry, col, res, ageing)
+ statement_dict[entry.customer] = (
+ [res, ageing] if get_statement_dict else get_html(doc, filters, entry, col, res, ageing)
+ )
- if not bool(statement_dict):
- return False
- elif consolidated:
- delimiter = '<div style="page-break-before: always;"></div>' if doc.include_break else ""
- result = delimiter.join(list(statement_dict.values()))
- return get_pdf(result, {"orientation": doc.orientation})
- else:
- for customer, statement_html in statement_dict.items():
- statement_dict[customer] = get_pdf(statement_html, {"orientation": doc.orientation})
- return statement_dict
+ return statement_dict
def set_ageing(doc, entry):
@@ -103,7 +110,7 @@
"range3": 90,
"range4": 120,
"party_type": "Customer",
- "party": entry.customer,
+ "party": [entry.customer],
}
)
col1, ageing = get_ageing(ageing_filters)