DECLARE v_user FND_USER.USER_NAME%TYPE; v_user_id PLS_INTEGER; CURSOR c_get_user ( cp_username IN VARCHAR2 ) IS SELECT user_orig_system_id user_id , user_orig_system orig_system FROM wf_local_user_roles WHERE user_name = cp_username; CURSOR c_get_resp IS SELECT name , orig_system , orig_system_id , partition_id FROM wf_roles WHERE display_name = 'System Administrator' AND orig_system = 'FND_RESP'; r_resp c_get_resp%ROWTYPE; r_user c_get_user%ROWTYPE; BEGIN v_user := UPPER('&username'); OPEN c_get_user ( cp_username => v_user ); FETCH c_get_user INTO r_user; CLOSE c_get_user; OPEN c_get_resp; FETCH c_get_resp INTO r_resp; CLOSE c_get_resp; INSERT INTO wf_local_user_roles ( user_name , role_name , user_orig_system , user_orig_system_id , role_orig_system , role_orig_system_id , start_date , expiration_date , security_group_id , partition_id , owner_tag , created_by , creation_date , last_updated_by , last_update_date , last_update_login , assignment_type , parent_orig_system , parent_orig_system_id , user_start_date , role_start_date , user_end_date , role_end_date , effective_start_date , effective_end_date ) VALUES ( v_user , r_resp.name , r_user.orig_system , r_user.user_id , r_resp.orig_system , r_resp.orig_system_id , SYSDATE - 1 , NULL , 0 , r_resp.partition_id , 'SYSADMIN' , 0 , SYSDATE - 1 , 0 , SYSDATE - 1 , 0 , 'D' , r_resp.orig_system , r_resp.orig_system_id , SYSDATE - 1 , TO_DATE('01/01/1951','DD/MM/YYYY') , NULL , NULL , SYSDATE - 1 , NULL ); END; /