diff --git a/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.js b/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.js index 8e4214f2022..c083189eb27 100644 --- a/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.js +++ b/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.js @@ -21,31 +21,22 @@ frappe.ui.form.on("Bank Reconciliation Tool", { frm.trigger('bank_account'); }, + filter_by_reference_date: function (frm) { + if (frm.doc.filter_by_reference_date) { + frm.set_value("bank_statement_from_date", ""); + frm.set_value("bank_statement_to_date", ""); + } else { + frm.set_value("from_reference_date", ""); + frm.set_value("to_reference_date", ""); + } + }, + refresh: function (frm) { frappe.require("bank-reconciliation-tool.bundle.js", () => frm.trigger("make_reconciliation_tool") ); - frm.add_custom_button(__('Auto Reconcile'), function() { - frappe.call({ - method: "erpnext.accounts.doctype.bank_reconciliation_tool.bank_reconciliation_tool.auto_reconcile_vouchers", - args: { - bank_account: frm.doc.bank_account, - from_date: frm.doc.bank_statement_from_date, - to_date: frm.doc.bank_statement_to_date, - filtered_by_reference_date: frm.doc.filtered_by_reference_date, - from_reference_date: frm.doc.from_reference_date, - to_reference_date: frm.doc.to_reference_date, - }, - callback: function (r) { - } - }) - - } - ), - frm.upload_statement_button = frm.page.set_secondary_action( - __("Upload Bank Statement"), - () => + frm.add_custom_button(__("Upload Bank Statement"), () => frappe.call({ method: "erpnext.accounts.doctype.bank_statement_import.bank_statement_import.upload_bank_statement", @@ -67,6 +58,20 @@ frappe.ui.form.on("Bank Reconciliation Tool", { }, }) ); + + frm.add_custom_button(__('Auto Reconcile'), function() { + frappe.call({ + method: "erpnext.accounts.doctype.bank_reconciliation_tool.bank_reconciliation_tool.auto_reconcile_vouchers", + args: { + bank_account: frm.doc.bank_account, + from_date: frm.doc.bank_statement_from_date, + to_date: frm.doc.bank_statement_to_date, + filter_by_reference_date: frm.doc.filter_by_reference_date, + from_reference_date: frm.doc.from_reference_date, + to_reference_date: frm.doc.to_reference_date, + }, + }) + }); }, after_save: function (frm) { @@ -178,7 +183,7 @@ frappe.ui.form.on("Bank Reconciliation Tool", { ).$wrapper, bank_statement_from_date: frm.doc.bank_statement_from_date, bank_statement_to_date: frm.doc.bank_statement_to_date, - filtered_by_reference_date: frm.doc.filtered_by_reference_date, + filter_by_reference_date: frm.doc.filter_by_reference_date, from_reference_date: frm.doc.from_reference_date, to_reference_date: frm.doc.to_reference_date, bank_statement_closing_balance: diff --git a/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.json b/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.json index a1269489edc..80993d6608d 100644 --- a/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.json +++ b/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.json @@ -1,134 +1,134 @@ { - "actions": [], - "creation": "2020-12-02 10:13:02.148040", - "doctype": "DocType", - "editable_grid": 1, - "engine": "InnoDB", - "field_order": [ - "company", - "bank_account", - "column_break_1", - "bank_statement_from_date", - "bank_statement_to_date", - "column_break_2", - "filtered_by_reference_date", - "from_reference_date", - "to_reference_date", - "account_opening_balance", - "bank_statement_closing_balance", - "section_break_1", - "reconciliation_tool_cards", - "reconciliation_tool_dt", - "no_bank_transactions" - ], - "fields": [ + "actions": [], + "creation": "2020-12-02 10:13:02.148040", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "company", + "bank_account", + "column_break_1", + "bank_statement_from_date", + "bank_statement_to_date", + "from_reference_date", + "to_reference_date", + "filter_by_reference_date", + "column_break_2", + "account_opening_balance", + "bank_statement_closing_balance", + "section_break_1", + "reconciliation_tool_cards", + "reconciliation_tool_dt", + "no_bank_transactions" + ], + "fields": [ { - "fieldname": "company", - "fieldtype": "Link", - "label": "Company", - "options": "Company" + "fieldname": "company", + "fieldtype": "Link", + "label": "Company", + "options": "Company" }, { - "fieldname": "bank_account", - "fieldtype": "Link", - "label": "Bank Account", - "options": "Bank Account" + "fieldname": "bank_account", + "fieldtype": "Link", + "label": "Bank Account", + "options": "Bank Account" }, { - "fieldname": "column_break_1", - "fieldtype": "Column Break" + "fieldname": "column_break_1", + "fieldtype": "Column Break" }, { - "depends_on": "eval: doc.bank_account", - "fieldname": "bank_statement_from_date", - "fieldtype": "Date", - "label": "From Date" + "depends_on": "eval: doc.bank_account && !doc.filter_by_reference_date", + "fieldname": "bank_statement_from_date", + "fieldtype": "Date", + "label": "From Date" }, { - "depends_on": "eval: doc.bank_statement_from_date", - "fieldname": "bank_statement_to_date", - "fieldtype": "Date", - "label": "To Date" + "depends_on": "eval: doc.bank_account && !doc.filter_by_reference_date", + "fieldname": "bank_statement_to_date", + "fieldtype": "Date", + "label": "To Date" }, { - "fieldname": "column_break_2", - "fieldtype": "Column Break" + "fieldname": "column_break_2", + "fieldtype": "Column Break" }, { - "depends_on": "eval: doc.bank_statement_from_date", - "fieldname": "account_opening_balance", - "fieldtype": "Currency", - "label": "Account Opening Balance", - "options": "Currency", - "read_only": 1 + "depends_on": "eval: doc.bank_statement_from_date", + "fieldname": "account_opening_balance", + "fieldtype": "Currency", + "label": "Account Opening Balance", + "options": "Currency", + "read_only": 1 }, { - "depends_on": "eval: doc.bank_statement_to_date", - "fieldname": "bank_statement_closing_balance", - "fieldtype": "Currency", - "label": "Closing Balance", - "options": "Currency" + "depends_on": "eval: doc.bank_statement_to_date", + "fieldname": "bank_statement_closing_balance", + "fieldtype": "Currency", + "label": "Closing Balance", + "options": "Currency" }, { - "fieldname": "section_break_1", - "fieldtype": "Section Break", - "label": "Reconcile" + "fieldname": "section_break_1", + "fieldtype": "Section Break", + "label": "Reconcile" }, { - "fieldname": "reconciliation_tool_cards", - "fieldtype": "HTML" + "fieldname": "reconciliation_tool_cards", + "fieldtype": "HTML" }, { - "fieldname": "reconciliation_tool_dt", - "fieldtype": "HTML" + "fieldname": "reconciliation_tool_dt", + "fieldtype": "HTML" }, { - "fieldname": "no_bank_transactions", - "fieldtype": "HTML", - "options": "
No Matching Bank Transactions Found
" + "fieldname": "no_bank_transactions", + "fieldtype": "HTML", + "options": "
No Matching Bank Transactions Found
" }, { - "depends_on": "eval:doc.filtered_by_reference_date", - "fieldname": "from_reference_date", - "fieldtype": "Date", - "label": "From Reference Date" + "depends_on": "eval:doc.filter_by_reference_date", + "fieldname": "from_reference_date", + "fieldtype": "Date", + "label": "From Reference Date" }, { - "depends_on": "eval:doc.filtered_by_reference_date", - "fieldname": "to_reference_date", - "fieldtype": "Date", - "label": "To Reference Date" + "depends_on": "eval:doc.filter_by_reference_date", + "fieldname": "to_reference_date", + "fieldtype": "Date", + "label": "To Reference Date" }, { - "default": "0", - "fieldname": "filtered_by_reference_date", - "fieldtype": "Check", - "label": "Filtered by Reference Date" + "default": "0", + "fieldname": "filter_by_reference_date", + "fieldtype": "Check", + "label": "Filter by Reference Date" } - ], - "hide_toolbar": 1, - "index_web_pages_for_search": 1, - "issingle": 1, - "links": [], - "modified": "2022-12-03 15:40:05.330083", - "modified_by": "Administrator", - "module": "Accounts", - "name": "Bank Reconciliation Tool", - "owner": "Administrator", - "permissions": [ + ], + "hide_toolbar": 1, + "index_web_pages_for_search": 1, + "issingle": 1, + "links": [], + "modified": "2023-01-13 13:00:02.022919", + "modified_by": "Administrator", + "module": "Accounts", + "name": "Bank Reconciliation Tool", + "owner": "Administrator", + "permissions": [ { - "create": 1, - "delete": 1, - "email": 1, - "print": 1, - "read": 1, - "role": "System Manager", - "share": 1, - "write": 1 + "create": 1, + "delete": 1, + "email": 1, + "print": 1, + "read": 1, + "role": "System Manager", + "share": 1, + "write": 1 } - ], - "quick_entry": 1, - "sort_field": "modified", - "sort_order": "DESC", - "states": [] - } \ No newline at end of file + ], + "quick_entry": 1, + "sort_field": "modified", + "sort_order": "DESC", + "states": [] +} \ No newline at end of file diff --git a/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py b/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py index 053641d310a..558a1071a3f 100644 --- a/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py +++ b/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py @@ -271,7 +271,7 @@ def auto_reconcile_vouchers( bank_account, from_date=None, to_date=None, - filtered_by_reference_date=None, + filter_by_reference_date=None, from_reference_date=None, to_reference_date=None, ): @@ -285,7 +285,7 @@ def auto_reconcile_vouchers( document_types, from_date, to_date, - filtered_by_reference_date, + filter_by_reference_date, from_reference_date, to_reference_date, ) @@ -407,7 +407,7 @@ def get_linked_payments( document_types=None, from_date=None, to_date=None, - filtered_by_reference_date=None, + filter_by_reference_date=None, from_reference_date=None, to_reference_date=None, ): @@ -424,7 +424,7 @@ def get_linked_payments( document_types, from_date, to_date, - filtered_by_reference_date, + filter_by_reference_date, from_reference_date, to_reference_date, ) @@ -438,7 +438,7 @@ def check_matching( document_types, from_date, to_date, - filtered_by_reference_date, + filter_by_reference_date, from_reference_date, to_reference_date, ): @@ -450,7 +450,7 @@ def check_matching( document_types, from_date, to_date, - filtered_by_reference_date, + filter_by_reference_date, from_reference_date, to_reference_date, ) @@ -484,7 +484,7 @@ def get_queries( document_types, from_date, to_date, - filtered_by_reference_date, + filter_by_reference_date, from_reference_date, to_reference_date, ): @@ -505,7 +505,7 @@ def get_queries( account_from_to, from_date, to_date, - filtered_by_reference_date, + filter_by_reference_date, from_reference_date, to_reference_date, ) @@ -524,7 +524,7 @@ def get_matching_queries( account_from_to, from_date, to_date, - filtered_by_reference_date, + filter_by_reference_date, from_reference_date, to_reference_date, ): @@ -536,7 +536,7 @@ def get_matching_queries( transaction, from_date, to_date, - filtered_by_reference_date, + filter_by_reference_date, from_reference_date, to_reference_date, ) @@ -548,7 +548,7 @@ def get_matching_queries( transaction, from_date, to_date, - filtered_by_reference_date, + filter_by_reference_date, from_reference_date, to_reference_date, ) @@ -664,7 +664,7 @@ def get_pe_matching_query( transaction, from_date, to_date, - filtered_by_reference_date, + filter_by_reference_date, from_reference_date, to_reference_date, ): @@ -676,7 +676,7 @@ def get_pe_matching_query( filter_by_date = f"AND posting_date between '{from_date}' and '{to_date}'" order_by = " posting_date" filter_by_reference_no = "" - if cint(filtered_by_reference_date): + if cint(filter_by_reference_date): filter_by_date = f"AND reference_date between '{from_reference_date}' and '{to_reference_date}'" order_by = " reference_date" if frappe.flags.auto_reconcile_vouchers == True: @@ -715,7 +715,7 @@ def get_je_matching_query( transaction, from_date, to_date, - filtered_by_reference_date, + filter_by_reference_date, from_reference_date, to_reference_date, ): @@ -727,7 +727,7 @@ def get_je_matching_query( filter_by_date = f"AND je.posting_date between '{from_date}' and '{to_date}'" order_by = " je.posting_date" filter_by_reference_no = "" - if cint(filtered_by_reference_date): + if cint(filter_by_reference_date): filter_by_date = f"AND je.cheque_date between '{from_reference_date}' and '{to_reference_date}'" order_by = " je.cheque_date" if frappe.flags.auto_reconcile_vouchers == True: diff --git a/erpnext/public/js/bank_reconciliation_tool/data_table_manager.js b/erpnext/public/js/bank_reconciliation_tool/data_table_manager.js index 532f6a9f50a..f7c19a1b7ff 100644 --- a/erpnext/public/js/bank_reconciliation_tool/data_table_manager.js +++ b/erpnext/public/js/bank_reconciliation_tool/data_table_manager.js @@ -8,7 +8,7 @@ erpnext.accounts.bank_reconciliation.DataTableManager = class DataTableManager { this.bank_account, this.bank_statement_from_date, this.bank_statement_to_date, - this.filtered_by_reference_date, + this.filter_by_reference_date, this.from_reference_date, this.to_reference_date ); diff --git a/erpnext/public/js/bank_reconciliation_tool/dialog_manager.js b/erpnext/public/js/bank_reconciliation_tool/dialog_manager.js index 693041f47b2..4295c6909fe 100644 --- a/erpnext/public/js/bank_reconciliation_tool/dialog_manager.js +++ b/erpnext/public/js/bank_reconciliation_tool/dialog_manager.js @@ -7,7 +7,7 @@ erpnext.accounts.bank_reconciliation.DialogManager = class DialogManager { this.make_dialog(); this.bank_statement_from_date = bank_statement_from_date; this.bank_statement_to_date = bank_statement_to_date; - this.filtered_by_reference_date = filtered_by_reference_date; + this.filter_by_reference_date = filter_by_reference_date; this.from_reference_date = from_reference_date; this.to_reference_date = to_reference_date; } @@ -55,7 +55,7 @@ erpnext.accounts.bank_reconciliation.DialogManager = class DialogManager { document_types: document_types, from_date: this.bank_statement_from_date, to_date: this.bank_statement_to_date, - filtered_by_reference_date: this.filtered_by_reference_date, + filter_by_reference_date: this.filter_by_reference_date, from_reference_date:this.from_reference_date, to_reference_date:this.to_reference_date },