Merge pull request #39116 from ruthra-kumar/fix_multi_select_dialog_for_invoices
fix: typerror on multi select dialog
diff --git a/erpnext/accounts/party.py b/erpnext/accounts/party.py
index 008614e..caa1d85 100644
--- a/erpnext/accounts/party.py
+++ b/erpnext/accounts/party.py
@@ -114,14 +114,12 @@
set_account_and_due_date(party, account, party_type, company, posting_date, bill_date, doctype)
)
party = party_details[party_type.lower()]
-
- if not ignore_permissions and not (
- frappe.has_permission(party_type, "read", party)
- or frappe.has_permission(party_type, "select", party)
- ):
- frappe.throw(_("Not permitted for {0}").format(party), frappe.PermissionError)
-
party = frappe.get_doc(party_type, party)
+
+ if not ignore_permissions:
+ ptype = "select" if frappe.only_has_select_perm(party_type) else "read"
+ frappe.has_permission(party_type, ptype, party, throw=True)
+
currency = party.get("default_currency") or currency or get_company_currency(company)
party_address, shipping_address = set_address_details(