fix: Mandatory bank account error fix (#20733)

* fix: Mandatory bank account error fix

* fix: SQL condition
diff --git a/erpnext/accounts/doctype/bank_reconciliation/bank_reconciliation.py b/erpnext/accounts/doctype/bank_reconciliation/bank_reconciliation.py
index 52bbe33..2436b15 100644
--- a/erpnext/accounts/doctype/bank_reconciliation/bank_reconciliation.py
+++ b/erpnext/accounts/doctype/bank_reconciliation/bank_reconciliation.py
@@ -13,9 +13,11 @@
 
 class BankReconciliation(Document):
 	def get_payment_entries(self):
-		if not (self.bank_account and self.from_date and self.to_date):
-			msgprint(_("Bank Account, From Date and To Date are Mandatory"))
-			return
+		if not (self.from_date and self.to_date):
+			frappe.throw(_("From Date and To Date are Mandatory"))
+
+		if not self.account:
+			frappe.throw(_("Account is mandatory to get payment entries"))
 
 		condition = ""
 		if not self.include_reconciled_entries:
@@ -37,6 +39,11 @@
 			order by t1.posting_date ASC, t1.name DESC
 		""", {"condition":condition, "account": self.account, "from": self.from_date, "to": self.to_date}, as_dict=1)
 
+		condition = ''
+
+		if self.bank_account:
+			condition += 'and bank_account = %(bank_account)s'
+
 		payment_entries = frappe.db.sql("""
 			select
 				"Payment Entry" as payment_document, name as payment_entry,
@@ -49,10 +56,10 @@
 			where
 				(paid_from=%(account)s or paid_to=%(account)s) and docstatus=1
 				and posting_date >= %(from)s and posting_date <= %(to)s
-				and bank_account = %(bank_account)s
+				{condition}
 			order by
 				posting_date ASC, name DESC
-		""", {"account": self.account, "from":self.from_date,
+		""".format(condition=condition), {"account": self.account, "from":self.from_date,
 				"to": self.to_date, "bank_account": self.bank_account}, as_dict=1)
 
 		pos_entries = []