Adhoc Roles in Oracle Applications
Adhoc roles can be created through PL/SQL from database or they can be created from Applications using User Management Responsibility. If you use PL/SQL to create roles make sure you give all user names and role names in UPPER case to avoid some problems
- Script to Create a Adhoc Role
- Script to Add user to existing Adhoc Role
- Script to Remove user from existing Adhoc Role
- Using Adhoc roles in workflow notifications
- Adhoc Roles Tables
DECLARE
lv_role varchar2(100) := 'ERPSCHOOLS_DEMO_ROLE';
lv_role_desc varchar2(100) := ' ERPSCHOOLS_DEMO_ROLE';
BEGIN
wf_directory.CreateAdHocRole(lv_role,
lv_role_desc,
NULL,
NULL,
'Role Demo for erpschool users',
'MAILHTML',
'NAME1 NAME2', --USER NAME SHOULD BE IN CAPS
NULL,
NULL,
'ACTIVE',
NULL);
dbms_output.put_line('Created Role' ||' '||lv_role);
End;
/
Script to Add user to already existing Adhoc Role
DECLARE
v_role_name varchar2(100);
v_user_name varchar2(100);
BEGIN
v_role_name := 'ERPSCHOOLS_DEMO_ROLE';
v_user_name := 'NAME3';
WF_DIRECTORY.AddUsersToAdHocRole(v_role_name, v_user_name);
--USER NAMES SHOULD BE in CAPS
END;
Script to Remove user from existing Adhoc Role
DECLARE
v_role_name varchar2(100);
v_user_name varchar2(100);
BEGIN
v_role_name := 'ERPSCHOOLS_DEMO_ROLE';
v_user_name := 'NAME3';
WF_DIRECTORY.RemoveUsersFromAdHocRole(v_role_name, v_user_name); --USER NAMES in CAPS
END;
Using Adhoc roles in workflow notifications:
Navigation: File à Load Roles from Database
Select roles you want to use and then click OK.
Open the notification properties and then navigate to node tab, select performer as the role you just created and loaded from database.
- WF_ROLES
- WF_USER_ROLES
- WF_LOCAL_ROLES
- WF_USER_ROLE_ASSIGNMENTS