如何根据用户权限显示不同的交互式网格查询



我使用Master Detail页面。我想只为管理员用户显示整个表。对于不是管理员的用户,我想显示sql查询,它将限制MD视图。

我试图在同一页面上创建另一个主控器详细信息,该详细信息仅对没有管理员角色的用户可见。第一个MD对他们来说是不可见的。(我使用了服务器端条件(是否存在其他方式来显示不同的查询,具体取决于用户角色。

我希望我把问题解释清楚了。提前感谢

看看包APEX_ACL,您可以在where子句中使用相关视图。

示例:管理员看到所有行,其他用户只看到KING 的行

SELECT *
FROM emp
WHERE 
-- user is admin ?
( EXISTS ( SELECT 1
FROM apex_appl_acl_user_roles
WHERE application_id = :APP_ID AND
user_name = :APP_USER AND
role_static_id = 'ADMINISTRATOR'
) ) OR
-- user is no admin 
( ename = 'KING' );

最新更新