Thursday, 26 December 2013

Delete Responsibility using API

Step1: Please choose responsibility 


Step 2:  Pass the responsibility name as parameter to Delete  through API
/* Formatted on 12/30/2013 2:59:41 PM (QP5 v5.163.1008.3004) */

DECLARE
   v_user_name             VARCHAR2 (100) := 'LOKANADHAM';
   v_responsibility_name   VARCHAR2 (100) := :responsibility_name;
   v_application_name      VARCHAR2 (100) := NULL;
   v_responsibility_key    VARCHAR2 (100) := NULL;
   v_security_group        VARCHAR2 (100) := NULL;
BEGIN
   SELECT fa.application_short_name,
          fr.responsibility_key,
          frg.security_group_key
     INTO v_application_name, v_responsibility_key, v_security_group
     FROM fnd_responsibility fr,
          fnd_application fa,
          fnd_security_groups frg,
          fnd_responsibility_tl frt
    WHERE     fr.application_id = fa.application_id
          AND fr.data_group_id = frg.security_group_id
          AND fr.responsibility_id = frt.responsibility_id
          AND frt.LANGUAGE = USERENV ('LANG')
          AND frt.responsibility_name = v_responsibility_name;

   fnd_user_pkg.delresp (username         => v_user_name,
                         resp_app         => v_application_name,
                         resp_key         => v_responsibility_key,
                         security_group   => v_security_group);
   COMMIT;
   DBMS_OUTPUT.put_line (
         'Responsiblity '
      || v_responsibility_name
      || ' is removed from the user '
      || v_user_name
      || ' Successfully');
EXCEPTION
   WHEN OTHERS
   THEN
      DBMS_OUTPUT.put_line (
         'Error encountered while deleting responsibilty from the user and the error is '
         || SQLERRM);

END;

Parameter Screen




















Step 3: Cross Check the responsibility from front end










Step 4: Cross Check the responsibility from back end

  SELECT frt.responsibility_name, frt.description
    FROM fnd_user_resp_groups furg, fnd_user fu, fnd_responsibility_tl frt
   WHERE     furg.user_id = fu.user_id
         AND furg.responsibility_id = frt.responsibility_id
         AND fu.user_name = :user_name
ORDER BY frt.responsibility_name