From 90c28c0f6baa43a0b3d394ceb83eacd411c4a157 Mon Sep 17 00:00:00 2001 From: Priyal Date: Tue, 17 Mar 2026 15:53:55 +0530 Subject: [PATCH] fix: consider read permlevel access for select --- frappe/permissions.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/frappe/permissions.py b/frappe/permissions.py index 431935fba7..d719bfe6dd 100644 --- a/frappe/permissions.py +++ b/frappe/permissions.py @@ -868,7 +868,11 @@ def has_child_permission( return False permlevel = parent_meta.get_field(parentfield).permlevel - accessible_permlevels = parent_meta.get_permlevel_access(ptype, user=user) + # checking for select == checking for "select or read" + # select does not support access of higher permlevel child tables, but read does + accessible_permlevels = parent_meta.get_permlevel_access( + "read" if ptype == "select" else ptype, user=user + ) if permlevel > 0 and permlevel not in accessible_permlevels: push_perm_check_log( _("Insufficient Permission Level for {0}").format(frappe.bold(parent_doctype)), debug=debug