Adding Mutiple Responsibilty to User from Back End in Oracle Apps
This script can to used to assign multiple responsibilities to a user in Oracle Apps
SCRIPT:
/***************************************************************************
-- AUTHOR NAME : Himanshu Singh
-- DATE WRITTEN : 09-AUG-2021
-- DESCRIPTION : This Script would add the Responsibility to the User.
-- MAINTAINANCE HISTORY :
-- DATE NAME REMARKS
--------- --------- ---------
***************************************************************************/
DECLARE
v_user_name VARCHAR2 (20) := 'HISINGH';
v_description VARCHAR2 (100)
:= 'Adding Responsibility to user using script';
v_appl_shrt_name VARCHAR2 (20);
v_appl_name VARCHAR2 (50);
v_resp_key VARCHAR2 (50);
l_count NUMBER := 0;
-- List of Responsibility that would be added
CURSOR cur_resp_names
IS
SELECT 'Application developer' RESP_NAME FROM DUAL
UNION
SELECT 'iProcurement' FROM DUAL
UNION
SELECT 'Functional Administrator' FROM DUAL
UNION
SELECT 'Discoverer Superuser' FROM DUAL
UNION
SELECT 'System Administrator' FROM DUAL
UNION
SELECT 'Alert Manager' FROM DUAL
UNION
SELECT 'Payables Manager' FROM DUAL
UNION
SELECT 'Purchasing Super User' FROM DUAL
UNION
SELECT 'Receivables Manager' FROM DUAL
UNION
SELECT 'Order Management Super User' FROM DUAL;
BEGIN
FOR rec IN cur_resp_names
LOOP
SELECT fav.application_short_name,
fav.application_name,
frv.responsibility_key
INTO v_appl_shrt_name, v_appl_name, v_resp_key
FROM FND_APPLICATION_VL fav, FND_RESPONSIBILITY_VL frv
WHERE frv.application_id = fav.application_id
AND frv.responsibility_name = rec.RESP_NAME;
-- Standard Package call that would add the Responsibility against the User
fnd_user_pkg.addresp (username => v_user_name,
resp_app => v_appl_shrt_name,
resp_key => v_resp_key,
security_group => 'STANDARD',
description => v_description,
start_date => SYSDATE,
end_date => NULL);
DBMS_OUTPUT.
put_line (
'The responsibility '
|| rec.RESP_NAME
|| ' is added to the user '
|| v_user_name);
l_count := l_count + 1;
END LOOP;
COMMIT;
DBMS_OUTPUT.PUT_LINE ('Total Number Of Resp Added: ' || l_count);
EXCEPTION
WHEN OTHERS
THEN
DBMS_OUTPUT.
put_line (
'Responsibility IS NOT added due to '
|| SQLCODE
|| '; '
|| SUBSTR (SQLERRM, 1, 250));
ROLLBACK;
END;
/
Note: Please note, you can also create a temporary table and put all responsibility name in that and call that in cursor.
Post a Comment
Post a Comment