使用APEX_UTIL.CURRENT_USER_IN_GROUP确定只读与编辑

时间:2013-06-03 19:04:17

标签: oracle-apex

我有一个用Oracle Apex 4.2编写的应用程序 不同的用户可以访问不同的页面。 Apex内置的访问控制功能(ADMIN, EDIT, VIEW)负责管理不同用户可以看到的页面 但另一个要求是,某些用户可以看到某些页面而不能编辑它们,而其他用户可以编辑这些页面 我知道在项目级别有一个只读选项。我可以硬编码用户名,即

:APP_USER like 'Betty Boop%'

如何根据用户所属的访问控制组(ADMIN,EDIT,VIEW)设置要读取的项目

我知道有一个实用程序:APEX_UTIL.CURRENT_USER_IN_GROUP

但如果我做一些像READ ONLY PL / SQL Expression

那样的话
APEX_UTIL.CURRENT_USER_IN_GROUP('VIEW')

它没有做任何事情。
似乎APEX_UTIL.CURRENT_USER_IN_GROUP不知道Apex Access控件创建的组是组 - 我需要编写代码吗?创建一个功能?创建一个组表?

我不明白该怎么做

感谢

1 个答案:

答案 0 :(得分:0)

要使用APEX_UTIL.CURRENT_USER_IN_GROUP,您需要首先以工作区管理员身份创建用户组:Administration->Manage Users and Groups->Groups->Create User Group。 然后,您需要将组分配给您的应用程序用户:Groups->User Group Assigments。您应该阅读documentation了解更多详情。

然后,您将能够使用APEX_UTIL.CURRENT_USER_IN_GROUP函数检查特定组的分配给当前应用程序用户。