Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Wie kann ich Daten in einem Apex-Raster filtern, um bestimmte Dinge für bestimmte Benutzergruppen anzuzeigen?

Da Sie integrierte APEX-Gruppen verwenden, gibt es eine Funktion APEX_UTIL.GET_GROUPS_USER_BELONGS_TO das kann dir hier helfen. Es gibt eine durch Kommas getrennte Liste der Gruppen zurück, denen der Benutzer angehört. Sie könnten es also etwa so verwenden:

select id, name, sector
from employees
where ((','||apex_util.get_groups_user_belongs_to(:app_user)||',' like '%,ADMIN,%'
      and sector = 'A')
or (','||apex_util.get_groups_user_belongs_to(:app_user)||',' like '%,USER,%'
      and sector = 'H'))