Friday, March 13, 2009

Adding Responsibility to user from Backend

Use the following API to add responsibility to a user from backend.                       

 

 

 

set serveroutput on

 

DECLARE

 

p_user_name VARCHAR2(50)      := '&Enter_UserName';

p_resp_name VARCHAR2(50)      := '&Enter_ResponsibilityName';

p_user_id   NUMBER(10)              := 0;

p_responsibility_id NUMBER(10)   := 0;

p_application_id NUMBER(10)      := 0;

 

BEGIN

 

            BEGIN

                        SELECT USER_ID

                        INTO p_user_id

                        FROM FND_USER

                        WHERE UPPER(USER_NAME) = UPPER(p_user_name);

            EXCEPTION

            WHEN NO_DATA_FOUND THEN

                        dbms_output.put_line('User not found');

                        raise;

            WHEN OTHERS THEN

                        dbms_output.put_line('Error finding User.');

                        raise;

            END;

 

            BEGIN

                        SELECT application_id, responsibility_id

                        INTO p_application_id, p_responsibility_id

                        FROM FND_RESPONSIBILITY_TL

                        WHERE UPPER(RESPONSIBILITY_NAME) LIKE UPPER(p_resp_name);

            EXCEPTION

            WHEN NO_DATA_FOUND THEN

                        dbms_output.put_line('Responsibility not found.');

                        raise;

            WHEN TOO_MANY_ROWS

                        dbms_output.put_line('More than one responsibility found with this name.');

                        raise;

            WHEN OTHERS THEN

                        dbms_output.put_line('Error finding responsibility.');

                        raise;

            END;

 

            BEGIN

                        fnd_user_resp_groups_api.insert_assignment(user_id                            => p_user_id

                                                                                    ,responsibility_id             => p_responsibility_id

                                                                                    ,responsibility_application_id => p_application_id

                                                                                    ,security_group_id             => 0

                                                                                    ,start_date                    => SYSDATE - 1

                                                                                    ,end_date                      => NULL

                                                                                    ,description                   => 'Loaded from Backend.');

                        commit;

            EXCEPTION

            WHEN OTHERS THEN

                        dbms_output.put_line('Error calling the API');

                        raise;

            END;

           

 

END;

 

 

 

 

Hope this helps.

 

Ravi Parupudi
Senior Applications Developer
eBusiness Solution Center

Network Rail
Desk 2/251, 4 Travis Street
Manchester Sqare One
Manchester M12NY, UK

Extn: 085 50379
Work: +44 161 880 3379
Mobile: +44 759 075 0143
Email: ravi.parupudi@networkrail.co.uk

 

No comments:

Post a Comment