我有一个用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控件创建的组是组 - 我需要编写代码吗?创建一个功能?创建一个组表?
我不明白该怎么做
感谢
答案 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
函数检查特定组的分配给当前应用程序用户。