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

How to display different interactive grid queries, depending on user privileges

我使用主从页面。我只想为管理员用户显示整个 table。对于不是管理员的用户,我想显示 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' );