Merge pull request #4334 from revant/patch-1
Mode of Payment validate
diff --git a/erpnext/accounts/doctype/mode_of_payment/mode_of_payment.py b/erpnext/accounts/doctype/mode_of_payment/mode_of_payment.py
index e827e48..36d54b6 100644
--- a/erpnext/accounts/doctype/mode_of_payment/mode_of_payment.py
+++ b/erpnext/accounts/doctype/mode_of_payment/mode_of_payment.py
@@ -5,6 +5,24 @@
import frappe
from frappe.model.document import Document
+from frappe import _
class ModeofPayment(Document):
- pass
+ def validate(self):
+ self.validate_accounts()
+ self.validate_repeating_companies()
+
+ def validate_repeating_companies(self):
+ """Error when Same Company is entered multiple times in accounts"""
+ accounts_list = []
+ for entry in self.accounts:
+ accounts_list.append(entry.company)
+
+ if len(accounts_list)!= len(set(accounts_list)):
+ frappe.throw(_("Same Company is entered more than once"))
+
+ def validate_accounts(self):
+ for entry in self.accounts:
+ """Error when Company of Ledger account doesn't match with Company Selected"""
+ if frappe.db.get_value("Account", entry.default_account, "company") != entry.company:
+ frappe.throw(_("Account does not match with Company"))