diff --git a/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.json b/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.json index 70e810439c2..8004659065e 100644 --- a/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.json +++ b/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.json @@ -326,7 +326,8 @@ "fieldname": "report", "fieldtype": "Select", "label": "Report", - "options": "General Ledger\nAccounts Receivable" + "options": "General Ledger\nAccounts Receivable", + "reqd": 1 }, { "default": "Today", @@ -372,7 +373,7 @@ } ], "links": [], - "modified": "2023-06-19 18:37:10.040570", + "modified": "2023-06-23 10:13:15.051950", "modified_by": "Administrator", "module": "Accounts", "name": "Process Statement Of Accounts", 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 db186d81a2d..08f4cf45d62 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 @@ -160,7 +160,7 @@ def get_html(doc, filters, entry, col, res, ageing): template_path = ( "erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.html" if doc.report == "General Ledger" - else "erpnext/accounts/report/accounts_receivable/accounts_receivable.html" + else "erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts_accounts_receivable.html" ) if doc.letter_head: diff --git a/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts_accounts_receivable.html b/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts_accounts_receivable.html new file mode 100644 index 00000000000..07e1896292d --- /dev/null +++ b/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts_accounts_receivable.html @@ -0,0 +1,348 @@ + + +
| {{ _(" ") }} | +{{ _(range1) }} | +{{ _(range2) }} | +{{ _(range3) }} | +{{ _(range4) }} | +{{ _(range5) }} | +{{ _(range6) }} | +{{ _("Total") }} | +
|---|---|---|---|---|---|---|---|
| {{ _("Total Outstanding") }} | ++ {{ format_number(balance_row["age"], null, 2) }} + | ++ {{ frappe.utils.fmt_money(balance_row["range1"], data[data.length-1]["currency"]) }} + | ++ {{ frappe.utils.fmt_money(balance_row["range2"], data[data.length-1]["currency"]) }} + | ++ {{ frappe.utils.fmt_money(balance_row["range3"], data[data.length-1]["currency"]) }} + | ++ {{ frappe.utils.fmt_money(balance_row["range4"], data[data.length-1]["currency"]) }} + | ++ {{ frappe.utils.fmt_money(balance_row["range5"], data[data.length-1]["currency"]) }} + | ++ {{ frappe.utils.fmt_money(flt(balance_row["outstanding"]), data[data.length-1]["currency"]) }} + | +{{ _("Future Payments") }} | ++ | + | + | + | + | + | + {{ frappe.utils.fmt_money(flt(balance_row[("future_amount")]), data[data.length-1]["currency"]) }} + | +
| {{ _("Cheques Required") }} | ++ | + | + | + | + | + | + {{ frappe.utils.fmt_money(flt(balance_row["outstanding"] - balance_row[("future_amount")]), data[data.length-1]["currency"]) }} | +
| {{ _("Date") }} | +{{ _("Age (Days)") }} | + + {% if(report.report_name == "Accounts Receivable" and filters.show_sales_person) %} +{{ _("Reference") }} | +{{ _("Sales Person") }} | + {% else %} +{{ _("Reference") }} | + {% endif %} + {% if not(filters.show_future_payments) %} ++ {% if (filters.customer or filters.supplier or filters.customer_name) %} + {{ _("Remarks") }} + {% else %} + {{ _("Party") }} + {% endif %} + | + {% endif %} +{{ _("Invoiced Amount") }} | + {% if not(filters.show_future_payments) %} +{{ _("Paid Amount") }} | ++ {% if report.report_name == "Accounts Receivable" %} + {{ _('Credit Note') }} + {% else %} + {{ _('Debit Note') }} + {% endif %} + | + {% endif %} +{{ _("Outstanding Amount") }} | + {% if(filters.show_future_payments) %} + {% if(report.report_name == "Accounts Receivable") %} +{{ _("Customer LPO No.") }} | + {% endif %} +{{ _("Future Payment Ref") }} | +{{ _("Future Payment Amount") }} | +{{ _("Remaining Balance") }} | + {% endif %} + {% else %} ++ {% if (filters.customer or filters.supplier or filters.customer_name) %} + {{ _("Remarks")}} + {% else %} + {{ _("Party") }} + {% endif %} + | +{{ _("Total Invoiced Amount") }} | +{{ _("Total Paid Amount") }} | ++ {% if report.report_name == "Accounts Receivable Summary" %} + {{ _('Credit Note Amount') }} + {% else %} + {{ _('Debit Note Amount') }} + {% endif %} + | +{{ _("Total Outstanding Amount") }} | + {% endif %} +|||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| {{ (data[i]["posting_date"]) }} | +{{ data[i]["age"] }} | +
+ {% if not(filters.show_future_payments) %}
+ {{ data[i]["voucher_type"] }}
+ + {% endif %} + {{ data[i]["voucher_no"] }} + |
+
+ {% if(report.report_name == "Accounts Receivable" and filters.show_sales_person) %}
+ {{ data[i]["sales_person"] }} | + {% endif %} + + {% if not (filters.show_future_payments) %} +
+ {% if(not(filters.customer or filters.supplier or filters.customer_name)) %}
+ {{ data[i]["party"] }}
+ {% if(data[i]["customer_name"] and data[i]["customer_name"] != data[i]["party"]) %}
+ {{ data[i]["customer_name"] }} + {% elif(data[i]["supplier_name"] != data[i]["party"]) %} + {{ data[i]["supplier_name"] }} + {% endif %} + {% endif %} +
+ {% if data[i]["remarks"] %}
+ {{ _("Remarks") }}:
+ {{ data[i]["remarks"] }}
+ {% endif %}
+
+ |
+ {% endif %}
+
+ + {{ frappe.utils.fmt_money(data[i]["invoiced"], currency=data[i]["currency"]) }} | + + {% if not(filters.show_future_payments) %} ++ {{ frappe.utils.fmt_money(data[i]["paid"], currency=data[i]["currency"]) }} | ++ {{ frappe.utils.fmt_money(data[i]["credit_note"], currency=data[i]["currency"]) }} | + {% endif %} ++ {{ frappe.utils.fmt_money(data[i]["outstanding"], currency=data[i]["currency"]) }} | + + {% if(filters.show_future_payments) %} + {% if(report.report_name == "Accounts Receivable") %} ++ {{ data[i]["po_no"] }} | + {% endif %} +{{ data[i]["future_ref"] }} | +{{ frappe.utils.fmt_money(data[i]["future_amount"], currency=data[i]["currency"]) }} | +{{ frappe.utils.fmt_money(data[i]["remaining_balance"], currency=data[i]["currency"]) }} | + {% endif %} + {% else %} ++ {% if not(filters.show_future_payments) %} + | + {% endif %} + {% if(report.report_name == "Accounts Receivable" and filters.show_sales_person) %} + | + {% endif %} + | + | {{ _("Total") }} | ++ {{ frappe.utils.fmt_money(data[i]["invoiced"], data[i]["currency"]) }} | + + {% if not(filters.show_future_payments) %} ++ {{ frappe.utils.fmt_money(data[i]["paid"], currency=data[i]["currency"]) }} | +{{ frappe.utils.fmt_money(data[i]["credit_note"], currency=data[i]["currency"]) }} | + {% endif %} ++ {{ frappe.utils.fmt_money(data[i]["outstanding"], currency=data[i]["currency"]) }} | + + {% if(filters.show_future_payments) %} + {% if(report.report_name == "Accounts Receivable") %} ++ {{ data[i]["po_no"] }} | + {% endif %} +{{ data[i]["future_ref"] }} | +{{ frappe.utils.fmt_money(data[i]["future_amount"], currency=data[i]["currency"]) }} | +{{ frappe.utils.fmt_money(data[i]["remaining_balance"], currency=data[i]["currency"]) }} | + {% endif %} + {% endif %} + {% else %} + {% if(data[i]["party"] or " ") %} + {% if not(data[i]["is_total_row"]) %} +
+ {% if(not(filters.customer | filters.supplier)) %}
+ {{ data[i]["party"] }}
+ {% if(data[i]["customer_name"] and data[i]["customer_name"] != data[i]["party"]) %}
+ {{ data[i]["customer_name"] }} + {% elif(data[i]["supplier_name"] != data[i]["party"]) %} + {{ data[i]["supplier_name"] }} + {% endif %} + {% endif %} + {{ _("Remarks") }}: + {{ data[i]["remarks"] }} + |
+ {% else %}
+ {{ _("Total") }} | + {% endif %} +{{ frappe.utils.fmt_money(data[i]["invoiced"], currency=data[i]["currency"]) }} | +{{ frappe.utils.fmt_money(data[i]["paid"], currency=data[i]["currency"]) }} | +{{ frappe.utils.fmt_money(data[i]["credit_note"], currency=data[i]["currency"]) }} | +{{ frappe.utils.fmt_money(data[i]["outstanding"], currency=data[i]["currency"]) }} | + {% endif %} + {% endif %} ++ | + | + | + | {{ frappe.utils.fmt_money(data|sum(attribute="invoiced"), currency=data[0]["currency"]) }} | +{{ frappe.utils.fmt_money(data|sum(attribute="paid"), currency=data[0]["currency"]) }} | +{{ frappe.utils.fmt_money(data|sum(attribute="credit_note"), currency=data[0]["currency"]) }} | +{{ frappe.utils.fmt_money(data|sum(attribute="outstanding"), currency=data[0]["currency"]) }} | + +
| 30 Days | +60 Days | +90 Days | +120 Days | +
|---|---|---|---|
| {{ frappe.utils.fmt_money(ageing.range1, currency=data[0]["currency"]) }} | +{{ frappe.utils.fmt_money(ageing.range2, currency=data[0]["currency"]) }} | +{{ frappe.utils.fmt_money(ageing.range3, currency=data[0]["currency"]) }} | +{{ frappe.utils.fmt_money(ageing.range4, currency=data[0]["currency"]) }} | +
{{ _("Printed On ") }}{{ frappe.utils.now() }}
diff --git a/erpnext/accounts/report/accounts_receivable/accounts_receivable.html b/erpnext/accounts/report/accounts_receivable/accounts_receivable.html index 07e1896292d..ed3b9915591 100644 --- a/erpnext/accounts/report/accounts_receivable/accounts_receivable.html +++ b/erpnext/accounts/report/accounts_receivable/accounts_receivable.html @@ -8,56 +8,51 @@ } -| {{ _(" ") }} | -{{ _(range1) }} | -{{ _(range2) }} | -{{ _(range3) }} | -{{ _(range4) }} | -{{ _(range5) }} | -{{ _(range6) }} | -{{ _("Total") }} | +{%= __(" ") %} | +{%= __(range1) %} | +{%= __(range2) %} | +{%= __(range3) %} | +{%= __(range4) %} | +{%= __(range5) %} | +{%= __(range6) %} | +{%= __("Total") %} |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| {{ _("Total Outstanding") }} | +{%= __("Total Outstanding") %} | - {{ format_number(balance_row["age"], null, 2) }} + {%= format_number(balance_row["age"], null, 2) %} | - {{ frappe.utils.fmt_money(balance_row["range1"], data[data.length-1]["currency"]) }} + {%= format_currency(balance_row["range1"], data[data.length-1]["currency"]) %} | - {{ frappe.utils.fmt_money(balance_row["range2"], data[data.length-1]["currency"]) }} + {%= format_currency(balance_row["range2"], data[data.length-1]["currency"]) %} | - {{ frappe.utils.fmt_money(balance_row["range3"], data[data.length-1]["currency"]) }} + {%= format_currency(balance_row["range3"], data[data.length-1]["currency"]) %} | - {{ frappe.utils.fmt_money(balance_row["range4"], data[data.length-1]["currency"]) }} + {%= format_currency(balance_row["range4"], data[data.length-1]["currency"]) %} | - {{ frappe.utils.fmt_money(balance_row["range5"], data[data.length-1]["currency"]) }} + {%= format_currency(balance_row["range5"], data[data.length-1]["currency"]) %} | - {{ frappe.utils.fmt_money(flt(balance_row["outstanding"]), data[data.length-1]["currency"]) }} + {%= format_currency(flt(balance_row["outstanding"]), data[data.length-1]["currency"]) %} | {{ _("Future Payments") }} | +{%= __("Future Payments") %} | @@ -114,10 +109,10 @@ | - {{ frappe.utils.fmt_money(flt(balance_row[("future_amount")]), data[data.length-1]["currency"]) }} + {%= format_currency(flt(balance_row[("future_amount")]), data[data.length-1]["currency"]) %} | |||
| {{ _("Cheques Required") }} | +{%= __("Cheques Required") %} | @@ -125,224 +120,168 @@ | - {{ frappe.utils.fmt_money(flt(balance_row["outstanding"] - balance_row[("future_amount")]), data[data.length-1]["currency"]) }} | + {%= format_currency(flt(balance_row["outstanding"] - balance_row[("future_amount")]), data[data.length-1]["currency"]) %}
| {{ _("Date") }} | -{{ _("Age (Days)") }} | + {% if(report.report_name === "Accounts Receivable" || report.report_name === "Accounts Payable") { %} +{%= __("Date") %} | +{%= __("Age (Days)") %} | - {% if(report.report_name == "Accounts Receivable" and filters.show_sales_person) %} -{{ _("Reference") }} | -{{ _("Sales Person") }} | - {% else %} -{{ _("Reference") }} | - {% endif %} - {% if not(filters.show_future_payments) %} -- {% if (filters.customer or filters.supplier or filters.customer_name) %} - {{ _("Remarks") }} - {% else %} - {{ _("Party") }} - {% endif %} - | - {% endif %} -{{ _("Invoiced Amount") }} | - {% if not(filters.show_future_payments) %} -{{ _("Paid Amount") }} | -- {% if report.report_name == "Accounts Receivable" %} - {{ _('Credit Note') }} - {% else %} - {{ _('Debit Note') }} - {% endif %} - | - {% endif %} -{{ _("Outstanding Amount") }} | - {% if(filters.show_future_payments) %} - {% if(report.report_name == "Accounts Receivable") %} -{{ _("Customer LPO No.") }} | - {% endif %} -{{ _("Future Payment Ref") }} | -{{ _("Future Payment Amount") }} | -{{ _("Remaining Balance") }} | - {% endif %} - {% else %} -- {% if (filters.customer or filters.supplier or filters.customer_name) %} - {{ _("Remarks")}} - {% else %} - {{ _("Party") }} - {% endif %} - | -{{ _("Total Invoiced Amount") }} | -{{ _("Total Paid Amount") }} | -- {% if report.report_name == "Accounts Receivable Summary" %} - {{ _('Credit Note Amount') }} - {% else %} - {{ _('Debit Note Amount') }} - {% endif %} - | -{{ _("Total Outstanding Amount") }} | - {% endif %} + {% if(report.report_name === "Accounts Receivable" && filters.show_sales_person) { %} +{%= __("Reference") %} | +{%= __("Sales Person") %} | + {% } else { %} +{%= __("Reference") %} | + {% } %} + {% if(!filters.show_future_payments) { %} +{%= (filters.customer || filters.supplier) ? __("Remarks"): __("Party") %} | + {% } %} +{%= __("Invoiced Amount") %} | + {% if(!filters.show_future_payments) { %} +{%= __("Paid Amount") %} | +{%= report.report_name === "Accounts Receivable" ? __('Credit Note') : __('Debit Note') %} | + {% } %} +{%= __("Outstanding Amount") %} | + {% if(filters.show_future_payments) { %} + {% if(report.report_name === "Accounts Receivable") { %} +{%= __("Customer LPO No.") %} | + {% } %} +{%= __("Future Payment Ref") %} | +{%= __("Future Payment Amount") %} | +{%= __("Remaining Balance") %} | + {% } %} + {% } else { %} +{%= (filters.customer || filters.supplier) ? __("Remarks"): __("Party") %} | +{%= __("Total Invoiced Amount") %} | +{%= __("Total Paid Amount") %} | +{%= report.report_name === "Accounts Receivable Summary" ? __('Credit Note Amount') : __('Debit Note Amount') %} | +{%= __("Total Outstanding Amount") %} | + {% } %}{{ (data[i]["posting_date"]) }} | -{{ data[i]["age"] }} | + {% if(report.report_name === "Accounts Receivable" || report.report_name === "Accounts Payable") { %} + {% if(data[i]["party"]) { %} +{%= frappe.datetime.str_to_user(data[i]["posting_date"]) %} | +{%= data[i]["age"] %} |
- {% if not(filters.show_future_payments) %}
- {{ data[i]["voucher_type"] }}
+ {% if(!filters.show_future_payments) { %}
+ {%= data[i]["voucher_type"] %}
- {% endif %} - {{ data[i]["voucher_no"] }} + {% } %} + {%= data[i]["voucher_no"] %} |
- {% if(report.report_name == "Accounts Receivable" and filters.show_sales_person) %}
- {{ data[i]["sales_person"] }} | - {% endif %} + {% if(report.report_name === "Accounts Receivable" && filters.show_sales_person) { %} +{%= data[i]["sales_person"] %} | + {% } %} - {% if not (filters.show_future_payments) %} + {% if(!filters.show_future_payments) { %}
- {% if(not(filters.customer or filters.supplier or filters.customer_name)) %}
- {{ data[i]["party"] }}
- {% if(data[i]["customer_name"] and data[i]["customer_name"] != data[i]["party"]) %}
- {{ data[i]["customer_name"] }} - {% elif(data[i]["supplier_name"] != data[i]["party"]) %} - {{ data[i]["supplier_name"] }} - {% endif %} - {% endif %} + {% if(!(filters.customer || filters.supplier)) { %} + {%= data[i]["party"] %} + {% if(data[i]["customer_name"] && data[i]["customer_name"] != data[i]["party"]) { %} + {%= data[i]["customer_name"] %} + {% } else if(data[i]["supplier_name"] != data[i]["party"]) { %} + {%= data[i]["supplier_name"] %} + {% } %} + {% } %}
{% if data[i]["remarks"] %}
- {{ _("Remarks") }}:
- {{ data[i]["remarks"] }}
- {% endif %}
+ {%= __("Remarks") %}:
+ {%= data[i]["remarks"] %}
+ {% } %}
|
- {% endif %}
+ {% } %}
- {{ frappe.utils.fmt_money(data[i]["invoiced"], currency=data[i]["currency"]) }} | + {%= format_currency(data[i]["invoiced"], data[i]["currency"]) %} - {% if not(filters.show_future_payments) %} + {% if(!filters.show_future_payments) { %}- {{ frappe.utils.fmt_money(data[i]["paid"], currency=data[i]["currency"]) }} | + {%= format_currency(data[i]["paid"], data[i]["currency"]) %}- {{ frappe.utils.fmt_money(data[i]["credit_note"], currency=data[i]["currency"]) }} | - {% endif %} + {%= format_currency(data[i]["credit_note"], data[i]["currency"]) %} + {% } %}- {{ frappe.utils.fmt_money(data[i]["outstanding"], currency=data[i]["currency"]) }} | + {%= format_currency(data[i]["outstanding"], data[i]["currency"]) %} - {% if(filters.show_future_payments) %} - {% if(report.report_name == "Accounts Receivable") %} + {% if(filters.show_future_payments) { %} + {% if(report.report_name === "Accounts Receivable") { %}- {{ data[i]["po_no"] }} | - {% endif %} -{{ data[i]["future_ref"] }} | -{{ frappe.utils.fmt_money(data[i]["future_amount"], currency=data[i]["currency"]) }} | -{{ frappe.utils.fmt_money(data[i]["remaining_balance"], currency=data[i]["currency"]) }} | - {% endif %} - {% else %} + {%= data[i]["po_no"] %} + {% } %} +{%= data[i]["future_ref"] %} | +{%= format_currency(data[i]["future_amount"], data[i]["currency"]) %} | +{%= format_currency(data[i]["remaining_balance"], data[i]["currency"]) %} | + {% } %} + {% } else { %}- {% if not(filters.show_future_payments) %} + {% if(!filters.show_future_payments) { %} | - {% endif %} - {% if(report.report_name == "Accounts Receivable" and filters.show_sales_person) %} + {% } %} + {% if(report.report_name === "Accounts Receivable" && filters.show_sales_person) { %} | - {% endif %} + {% } %} | - | {{ _("Total") }} | +{%= __("Total") %} | - {{ frappe.utils.fmt_money(data[i]["invoiced"], data[i]["currency"]) }} | + {%= format_currency(data[i]["invoiced"], data[i]["currency"] ) %} - {% if not(filters.show_future_payments) %} + {% if(!filters.show_future_payments) { %}- {{ frappe.utils.fmt_money(data[i]["paid"], currency=data[i]["currency"]) }} | -{{ frappe.utils.fmt_money(data[i]["credit_note"], currency=data[i]["currency"]) }} | - {% endif %} + {%= format_currency(data[i]["paid"], data[i]["currency"]) %} +{%= format_currency(data[i]["credit_note"], data[i]["currency"]) %} | + {% } %}- {{ frappe.utils.fmt_money(data[i]["outstanding"], currency=data[i]["currency"]) }} | + {%= format_currency(data[i]["outstanding"], data[i]["currency"]) %} - {% if(filters.show_future_payments) %} - {% if(report.report_name == "Accounts Receivable") %} + {% if(filters.show_future_payments) { %} + {% if(report.report_name === "Accounts Receivable") { %}- {{ data[i]["po_no"] }} | - {% endif %} -{{ data[i]["future_ref"] }} | -{{ frappe.utils.fmt_money(data[i]["future_amount"], currency=data[i]["currency"]) }} | -{{ frappe.utils.fmt_money(data[i]["remaining_balance"], currency=data[i]["currency"]) }} | - {% endif %} - {% endif %} - {% else %} - {% if(data[i]["party"] or " ") %} - {% if not(data[i]["is_total_row"]) %} + {%= data[i]["po_no"] %} + {% } %} +{%= data[i]["future_ref"] %} | +{%= format_currency(data[i]["future_amount"], data[i]["currency"]) %} | +{%= format_currency(data[i]["remaining_balance"], data[i]["currency"]) %} | + {% } %} + {% } %} + {% } else { %} + {% if(data[i]["party"]|| " ") { %} + {% if(!data[i]["is_total_row"]) { %}
- {% if(not(filters.customer | filters.supplier)) %}
- {{ data[i]["party"] }}
- {% if(data[i]["customer_name"] and data[i]["customer_name"] != data[i]["party"]) %}
- {{ data[i]["customer_name"] }} - {% elif(data[i]["supplier_name"] != data[i]["party"]) %} - {{ data[i]["supplier_name"] }} - {% endif %} - {% endif %} - {{ _("Remarks") }}: - {{ data[i]["remarks"] }} + {% if(!(filters.customer || filters.supplier)) { %} + {%= data[i]["party"] %} + {% if(data[i]["customer_name"] && data[i]["customer_name"] != data[i]["party"]) { %} + {%= data[i]["customer_name"] %} + {% } else if(data[i]["supplier_name"] != data[i]["party"]) { %} + {%= data[i]["supplier_name"] %} + {% } %} + {% } %} + {%= __("Remarks") %}: + {%= data[i]["remarks"] %} |
- {% else %}
- {{ _("Total") }} | - {% endif %} -{{ frappe.utils.fmt_money(data[i]["invoiced"], currency=data[i]["currency"]) }} | -{{ frappe.utils.fmt_money(data[i]["paid"], currency=data[i]["currency"]) }} | -{{ frappe.utils.fmt_money(data[i]["credit_note"], currency=data[i]["currency"]) }} | -{{ frappe.utils.fmt_money(data[i]["outstanding"], currency=data[i]["currency"]) }} | - {% endif %} - {% endif %} + {% } else { %} +{%= __("Total") %} | + {% } %} +{%= format_currency(data[i]["invoiced"], data[i]["currency"]) %} | +{%= format_currency(data[i]["paid"], data[i]["currency"]) %} | +{%= format_currency(data[i]["credit_note"], data[i]["currency"]) %} | +{%= format_currency(data[i]["outstanding"], data[i]["currency"]) %} | + {% } %} + {% } %} - {% endfor %} -- | - | - | - | {{ frappe.utils.fmt_money(data|sum(attribute="invoiced"), currency=data[0]["currency"]) }} | -{{ frappe.utils.fmt_money(data|sum(attribute="paid"), currency=data[0]["currency"]) }} | -{{ frappe.utils.fmt_money(data|sum(attribute="credit_note"), currency=data[0]["currency"]) }} | -{{ frappe.utils.fmt_money(data|sum(attribute="outstanding"), currency=data[0]["currency"]) }} | + {% } %}
|---|
| 30 Days | -60 Days | -90 Days | -120 Days | -
|---|---|---|---|
| {{ frappe.utils.fmt_money(ageing.range1, currency=data[0]["currency"]) }} | -{{ frappe.utils.fmt_money(ageing.range2, currency=data[0]["currency"]) }} | -{{ frappe.utils.fmt_money(ageing.range3, currency=data[0]["currency"]) }} | -{{ frappe.utils.fmt_money(ageing.range4, currency=data[0]["currency"]) }} | -
{{ _("Printed On ") }}{{ frappe.utils.now() }}
+{{ __("Printed On ") }}{%= frappe.datetime.str_to_user(frappe.datetime.get_datetime_as_string()) %}
\ No newline at end of file diff --git a/erpnext/patches.txt b/erpnext/patches.txt index 18bd10f45f8..8c0fa6bbcda 100644 --- a/erpnext/patches.txt +++ b/erpnext/patches.txt @@ -339,3 +339,4 @@ execute:frappe.delete_doc('DocType', 'Cash Flow Mapper', ignore_missing=True) execute:frappe.delete_doc('DocType', 'Cash Flow Mapping Template', ignore_missing=True) execute:frappe.delete_doc('DocType', 'Cash Flow Mapping Accounts', ignore_missing=True) erpnext.patches.v14_0.cleanup_workspaces +erpnext.patches.v14_0.set_report_in_process_SOA diff --git a/erpnext/patches/v14_0/set_report_in_process_SOA.py b/erpnext/patches/v14_0/set_report_in_process_SOA.py new file mode 100644 index 00000000000..1cb7e415d83 --- /dev/null +++ b/erpnext/patches/v14_0/set_report_in_process_SOA.py @@ -0,0 +1,10 @@ +# Copyright (c) 2022, Frappe Technologies Pvt. Ltd. and Contributors +# License: MIT. See LICENSE + +import frappe + + +def execute(): + process_soa = frappe.qb.DocType("Process Statement of Accounts") + q = frappe.qb.update(process_soa).set(process_soa.report, "General Ledger") + q.run()