feat: add bank account in payroll entry (#19021)
* fix(journal-entry): change fieldname from bank account no to bank account
* fix: add payroll entry in bank dashboard
* fix: fetch account from bank account
* fix: minor changes
* patch: check for bank account no column before updating
* fix: use rename field function
diff --git a/erpnext/accounts/doctype/bank_account/bank_account_dashboard.py b/erpnext/accounts/doctype/bank_account/bank_account_dashboard.py
index 3d149eb..a959cea 100644
--- a/erpnext/accounts/doctype/bank_account/bank_account_dashboard.py
+++ b/erpnext/accounts/doctype/bank_account/bank_account_dashboard.py
@@ -9,12 +9,11 @@
'non_standard_fieldnames': {
'Customer': 'default_bank_account',
'Supplier': 'default_bank_account',
- 'Journal Entry': 'bank_account_no'
},
'transactions': [
{
'label': _('Payments'),
- 'items': ['Payment Entry', 'Payment Request', 'Payment Order']
+ 'items': ['Payment Entry', 'Payment Request', 'Payment Order', 'Payroll Entry']
},
{
'label': _('Party'),
diff --git a/erpnext/accounts/doctype/journal_entry/journal_entry.js b/erpnext/accounts/doctype/journal_entry/journal_entry.js
index 3dbf4d4..5d88bfa 100644
--- a/erpnext/accounts/doctype/journal_entry/journal_entry.js
+++ b/erpnext/accounts/doctype/journal_entry/journal_entry.js
@@ -7,7 +7,7 @@
frappe.ui.form.on("Journal Entry", {
setup: function(frm) {
- frm.add_fetch("bank_account_no", "account", "account");
+ frm.add_fetch("bank_account", "account", "account");
},
refresh: function(frm) {
diff --git a/erpnext/accounts/doctype/journal_entry_account/journal_entry_account.json b/erpnext/accounts/doctype/journal_entry_account/journal_entry_account.json
index 8728950..c846ba2 100644
--- a/erpnext/accounts/doctype/journal_entry_account/journal_entry_account.json
+++ b/erpnext/accounts/doctype/journal_entry_account/journal_entry_account.json
@@ -10,7 +10,7 @@
"account_type",
"balance",
"col_break1",
- "bank_account_no",
+ "bank_account",
"party_type",
"party",
"party_balance",
@@ -90,12 +90,6 @@
"fieldtype": "Column Break"
},
{
- "fieldname": "bank_account_no",
- "fieldtype": "Link",
- "label": "Bank Account No",
- "options": "Bank Account"
- },
- {
"fieldname": "party_type",
"fieldtype": "Link",
"label": "Party Type",
@@ -266,11 +260,17 @@
{
"fieldname": "dimension_col_break",
"fieldtype": "Column Break"
+ },
+ {
+ "fieldname": "bank_account",
+ "fieldtype": "Link",
+ "label": "Bank Account",
+ "options": "Bank Account"
}
],
"idx": 1,
"istable": 1,
- "modified": "2019-07-16 17:12:08.238334",
+ "modified": "2019-09-12 12:16:17.588399",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Journal Entry Account",
diff --git a/erpnext/hr/doctype/payroll_entry/payroll_entry.json b/erpnext/hr/doctype/payroll_entry/payroll_entry.json
index 5ae5374..9356f3e 100644
--- a/erpnext/hr/doctype/payroll_entry/payroll_entry.json
+++ b/erpnext/hr/doctype/payroll_entry/payroll_entry.json
@@ -37,8 +37,9 @@
"cost_center",
"account",
"payment_account",
- "section_break2",
"amended_from",
+ "column_break_33",
+ "bank_account",
"salary_slips_created",
"salary_slips_submitted"
],
@@ -206,16 +207,13 @@
{
"allow_on_submit": 1,
"description": "Select Payment Account to make Bank Entry",
+ "fetch_from": "bank_account.account",
"fieldname": "payment_account",
"fieldtype": "Link",
"label": "Payment Account",
"options": "Account"
},
{
- "fieldname": "section_break2",
- "fieldtype": "Section Break"
- },
- {
"fieldname": "amended_from",
"fieldtype": "Link",
"label": "Amended From",
@@ -248,11 +246,21 @@
{
"fieldname": "dimension_col_break",
"fieldtype": "Column Break"
+ },
+ {
+ "fieldname": "bank_account",
+ "fieldtype": "Link",
+ "label": "Bank Account",
+ "options": "Bank Account"
+ },
+ {
+ "fieldname": "column_break_33",
+ "fieldtype": "Column Break"
}
],
"icon": "fa fa-cog",
"is_submittable": 1,
- "modified": "2019-05-25 22:47:49.977955",
+ "modified": "2019-09-12 15:46:31.436381",
"modified_by": "Administrator",
"module": "HR",
"name": "Payroll Entry",
diff --git a/erpnext/hr/doctype/payroll_entry/payroll_entry.py b/erpnext/hr/doctype/payroll_entry/payroll_entry.py
index 97cfc84..2de01e6 100644
--- a/erpnext/hr/doctype/payroll_entry/payroll_entry.py
+++ b/erpnext/hr/doctype/payroll_entry/payroll_entry.py
@@ -39,7 +39,7 @@
and for which salary structure exists
"""
cond = self.get_filter_condition()
- cond += self.get_joining_releiving_condition()
+ cond += self.get_joining_relieving_condition()
condition = ''
if self.payroll_frequency:
@@ -93,7 +93,7 @@
return cond
- def get_joining_releiving_condition(self):
+ def get_joining_relieving_condition(self):
cond = """
and ifnull(t1.date_of_joining, '0000-00-00') <= '%(end_date)s'
and ifnull(t1.relieving_date, '2199-12-31') >= '%(start_date)s'
@@ -341,6 +341,7 @@
journal_entry.set("accounts", [
{
"account": self.payment_account,
+ "bank_account": self.bank_account,
"credit_in_account_currency": payment_amount
},
{
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 8b3da8e..a001d16 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -635,4 +635,5 @@
erpnext.patches.v12_0.generate_leave_ledger_entries
erpnext.patches.v12_0.move_credit_limit_to_customer_credit_limit
erpnext.patches.v12_0.add_variant_of_in_item_attribute_table
-erpnext.patches.v12_0.create_default_energy_point_rules
+erpnext.patches.v12_0.rename_bank_account_field_in_journal_entry_account
+erpnext.patches.v12_0.create_default_energy_point_rules
\ No newline at end of file
diff --git a/erpnext/patches/v12_0/rename_bank_account_field_in_journal_entry_account.py b/erpnext/patches/v12_0/rename_bank_account_field_in_journal_entry_account.py
new file mode 100644
index 0000000..4230cb8
--- /dev/null
+++ b/erpnext/patches/v12_0/rename_bank_account_field_in_journal_entry_account.py
@@ -0,0 +1,17 @@
+# Copyright (c) 2019, Frappe and Contributors
+# License: GNU General Public License v3. See license.txt
+
+from __future__ import unicode_literals
+import frappe
+from frappe.model.utils.rename_field import rename_field
+
+def execute():
+ ''' Change the fieldname from bank_account_no to bank_account '''
+ if not frappe.get_meta("Journal Entry Account").has_field("bank_account"):
+ frappe.reload_doc("Accounts", "doctype", "Journal Entry Account")
+ update_journal_entry_account_fieldname()
+
+def update_journal_entry_account_fieldname():
+ ''' maps data from old field to the new field '''
+ if frappe.db.has_column('Journal Entry Account', 'bank_account_no'):
+ rename_field("Journal Entry Account", "bank_account_no", "bank_account")
\ No newline at end of file