From 9bcadf8126620f71f3d14083d5a825990d7dfb4b Mon Sep 17 00:00:00 2001 From: Shreya Shah Date: Fri, 23 Mar 2018 15:04:37 +0530 Subject: [PATCH] Tax Id in some reports and print formats (#13373) * tax-id in sales and purchase registers * tax-id in general ledger print_format * tax-id in accounts payable * tax-id in accounts receivable --- .../report/accounts_payable/accounts_payable.js | 14 +++++++++++++- .../accounts_receivable/accounts_receivable.html | 5 +++++ .../accounts_receivable/accounts_receivable.js | 14 +++++++++++++- .../report/general_ledger/general_ledger.html | 7 +++++++ .../report/general_ledger/general_ledger.js | 12 ++++++++++++ .../report/purchase_register/purchase_register.py | 6 +++--- .../report/sales_register/sales_register.py | 5 +++-- 7 files changed, 56 insertions(+), 7 deletions(-) diff --git a/erpnext/accounts/report/accounts_payable/accounts_payable.js b/erpnext/accounts/report/accounts_payable/accounts_payable.js index 0c24feb96d5..63ef83263cc 100644 --- a/erpnext/accounts/report/accounts_payable/accounts_payable.js +++ b/erpnext/accounts/report/accounts_payable/accounts_payable.js @@ -14,7 +14,13 @@ frappe.query_reports["Accounts Payable"] = { "fieldname":"supplier", "label": __("Supplier"), "fieldtype": "Link", - "options": "Supplier" + "options": "Supplier", + on_change: () => { + var supplier = frappe.query_report_filters_by_name.supplier.get_value(); + frappe.db.get_value('Supplier', supplier, "tax_id", function(value) { + frappe.query_report_filters_by_name.tax_id.set_value(value["tax_id"]); + }); + } }, { "fieldname":"report_date", @@ -52,6 +58,12 @@ frappe.query_reports["Accounts Payable"] = { "fieldtype": "Int", "default": "90", "reqd": 1 + }, + { + "fieldname":"tax_id", + "label": __("Tax Id"), + "fieldtype": "Data", + "hidden": 1 } ], onload: function(report) { diff --git a/erpnext/accounts/report/accounts_receivable/accounts_receivable.html b/erpnext/accounts/report/accounts_receivable/accounts_receivable.html index d96fc996bce..10f326242b7 100644 --- a/erpnext/accounts/report/accounts_receivable/accounts_receivable.html +++ b/erpnext/accounts/report/accounts_receivable/accounts_receivable.html @@ -13,6 +13,11 @@

{%= __(report.report_name) %}

{%= filters.customer || filters.supplier %}

+
+ {% if (filters.tax_id) { %} + {%= __("Tax Id: ")%} {%= filters.tax_id %} + {% } %} +
{%= __(filters.ageing_based_on) %} {%= __("Until") %} diff --git a/erpnext/accounts/report/accounts_receivable/accounts_receivable.js b/erpnext/accounts/report/accounts_receivable/accounts_receivable.js index 67483984b9e..f44ea448e7b 100644 --- a/erpnext/accounts/report/accounts_receivable/accounts_receivable.js +++ b/erpnext/accounts/report/accounts_receivable/accounts_receivable.js @@ -14,7 +14,13 @@ frappe.query_reports["Accounts Receivable"] = { "fieldname":"customer", "label": __("Customer"), "fieldtype": "Link", - "options": "Customer" + "options": "Customer", + on_change: () => { + var customer = frappe.query_report_filters_by_name.customer.get_value(); + frappe.db.get_value('Customer', customer, "tax_id", function(value) { + frappe.query_report_filters_by_name.tax_id.set_value(value["tax_id"]); + }); + } }, { "fieldname":"customer_group", @@ -69,6 +75,12 @@ frappe.query_reports["Accounts Receivable"] = { "fieldname":"show_pdc_in_print", "label": __("Show PDC in Print"), "fieldtype": "Check", + }, + { + "fieldname":"tax_id", + "label": __("Tax Id"), + "fieldtype": "Data", + "hidden": 1 } ], diff --git a/erpnext/accounts/report/general_ledger/general_ledger.html b/erpnext/accounts/report/general_ledger/general_ledger.html index 9e1b884e1a8..880ac1d7854 100644 --- a/erpnext/accounts/report/general_ledger/general_ledger.html +++ b/erpnext/accounts/report/general_ledger/general_ledger.html @@ -8,6 +8,13 @@ {%= filters.account %} {% } %}
+ +
+ {% if (filters.tax_id) { %} + {%= __("Tax Id: ")%} {%= filters.tax_id %} + {% } %} +
+
{%= dateutil.str_to_user(filters.from_date) %} {%= __("to") %} diff --git a/erpnext/accounts/report/general_ledger/general_ledger.js b/erpnext/accounts/report/general_ledger/general_ledger.js index adefadd2db0..631f8263fe8 100644 --- a/erpnext/accounts/report/general_ledger/general_ledger.js +++ b/erpnext/accounts/report/general_ledger/general_ledger.js @@ -87,6 +87,12 @@ frappe.query_reports["General Ledger"] = { frappe.db.get_value(party_type, party, fieldname, function(value) { frappe.query_report_filters_by_name.party_name.set_value(value[fieldname]); }); + + if (party_type === "Customer" || party_type === "Supplier") { + frappe.db.get_value(party_type, party, "tax_id", function(value) { + frappe.query_report_filters_by_name.tax_id.set_value(value["tax_id"]); + }); + } } }, { @@ -95,6 +101,12 @@ frappe.query_reports["General Ledger"] = { "fieldtype": "Data", "hidden": 1 }, + { + "fieldname":"tax_id", + "label": __("Tax Id"), + "fieldtype": "Data", + "hidden": 1 + }, { "fieldname":"group_by_voucher", "label": __("Group by Voucher"), diff --git a/erpnext/accounts/report/purchase_register/purchase_register.py b/erpnext/accounts/report/purchase_register/purchase_register.py index 610475acfcb..d300980cc58 100644 --- a/erpnext/accounts/report/purchase_register/purchase_register.py +++ b/erpnext/accounts/report/purchase_register/purchase_register.py @@ -43,7 +43,7 @@ def _execute(filters=None, additional_table_columns=None, additional_query_colum row += [ supplier_details.get(inv.supplier), # supplier_type - inv.credit_to, inv.mode_of_payment, ", ".join(project), + inv.tax_id, inv.credit_to, inv.mode_of_payment, ", ".join(project), inv.bill_no, inv.bill_date, inv.remarks, ", ".join(purchase_order), ", ".join(purchase_receipt), company_currency ] @@ -83,7 +83,7 @@ def get_columns(invoice_list, additional_table_columns): columns += additional_table_columns columns += [ - _("Supplier Type") + ":Link/Supplier Type:120", _("Payable Account") + ":Link/Account:120", + _("Supplier Type") + ":Link/Supplier Type:120", _("Tax Id") + "::80", _("Payable Account") + ":Link/Account:120", _("Mode of Payment") + ":Link/Mode of Payment:80", _("Project") + ":Link/Project:80", _("Bill No") + "::120", _("Bill Date") + ":Date:80", _("Remarks") + "::150", _("Purchase Order") + ":Link/Purchase Order:100", @@ -143,7 +143,7 @@ def get_invoices(filters, additional_query_columns): conditions = get_conditions(filters) return frappe.db.sql(""" select - name, posting_date, credit_to, supplier, supplier_name, bill_no, bill_date, + name, posting_date, credit_to, supplier, supplier_name, tax_id, bill_no, bill_date, remarks, base_net_total, base_grand_total, outstanding_amount, mode_of_payment {0} from `tabPurchase Invoice` diff --git a/erpnext/accounts/report/sales_register/sales_register.py b/erpnext/accounts/report/sales_register/sales_register.py index f74ccc7cd8d..476551e0d67 100644 --- a/erpnext/accounts/report/sales_register/sales_register.py +++ b/erpnext/accounts/report/sales_register/sales_register.py @@ -47,6 +47,7 @@ def _execute(filters, additional_table_columns=None, additional_query_columns=No row +=[ inv.get("customer_group"), inv.get("territory"), + inv.get("tax_id"), inv.debit_to, ", ".join(mode_of_payments.get(inv.name, [])), inv.project, inv.owner, inv.remarks, ", ".join(sales_order), ", ".join(delivery_note),", ".join(cost_center), @@ -89,7 +90,7 @@ def get_columns(invoice_list, additional_table_columns): columns +=[ _("Customer Group") + ":Link/Customer Group:120", _("Territory") + ":Link/Territory:80", - _("Receivable Account") + ":Link/Account:120", _("Mode of Payment") + "::120", + _("Tax Id") + "::80", _("Receivable Account") + ":Link/Account:120", _("Mode of Payment") + "::120", _("Project") +":Link/Project:80", _("Owner") + "::150", _("Remarks") + "::150", _("Sales Order") + ":Link/Sales Order:100", _("Delivery Note") + ":Link/Delivery Note:100", _("Cost Center") + ":Link/Cost Center:100", _("Warehouse") + ":Link/Warehouse:100", @@ -161,7 +162,7 @@ def get_invoices(filters, additional_query_columns): conditions = get_conditions(filters) return frappe.db.sql(""" select name, posting_date, debit_to, project, customer, - customer_name, owner, remarks, territory, customer_group, + customer_name, owner, remarks, territory, tax_id, customer_group, base_net_total, base_grand_total, base_rounded_total, outstanding_amount {0} from `tabSales Invoice` where docstatus = 1 %s order by posting_date desc, name desc""".format(additional_query_columns or '') %