Hi all,
We can fnd_user_pkg api to create users and attach responsibilities all at one shot..
Here i am providing the code which will update or create new users and their repsonsibilities
This script need to be improved a bit more to meet your changes
/******************************************************************************/
create or replace package body XX_FND_USER_PKG as
procedure create_user(p_user_name in varchar2,
p_emp_num in varchar2,
p_resp_id in number) as
v_user_present varchar2(1):='N';
v_err varchar2(1):='N';
v_user_id number;
v_resp_present varchar2(1):='N';
v_empnum_err varchar2(1):='N';
v_resp_key varchar2(50);
v_application_name varchar2(50);
v_person_id number;
v_erromsg varchar2(1000);
begin
begin
select user_id
into v_user_id
from fnd_user
where user_name=p_user_name and sysdate>nvl(end_Date,trunc(sysdate));
exception
when no_data_found then
v_user_present:='N';
end;
if v_user_id is null then
begin
select person_id
into v_person_id
from per_all_people_f papf
where employee_number=p_emp_num
and sysdate between effective_start_Date and effective_End_Date
and rownum=1;
exception
when others then
v_empnum_err :='Y';
end;
if v_empnum_err='N' then
fnd_user_pkg.createuser(x_user_name => p_user_name
,x_owner => ''
,x_unencrypted_password => 'ganjam123'
,x_employee_id=>v_person_id);
end if;
end if;
if v_user_id is not null then
begin
select 'Y'
into v_resp_present
from fnd_user_resp_groups_direct
where user_id=v_user_id
and responsibility_id=p_resp_id;
exception
when no_data_found then
v_resp_present:='N';
end;
end if;
if v_resp_present ='N' then
begin
select responsibility_key,fa.application_short_name
into v_resp_key,v_application_name
from FND_RESPONSIBILITY FR,
fnd_application FA
where FR.application_id=fa.application_id
and responsibility_id=p_resp_id
and rownum=1;
exception
when others then
v_err:='Y';
end;
if v_err ='N' then
fnd_user_pkg.addresp(username => p_user_name
,resp_app => v_application_name
,resp_key => v_resp_key
,security_group => 'STANDARD'
,description => 'Auto Assignment'
,start_date => SYSDATE
,end_date => null);
end if;
end if;
end;
end XX_FND_USER_PKG;/
Subscribe to:
Post Comments (Atom)
4 comments:
hi i am vishnu
code created by u to 'create bulk users and attaching responsibility programatically' was really good provide some more ............
thanq
Post a Comment