Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 4

The issue of disappearing responsibilities after applying a patch in Oracle E-Business Suite R12

is a serious one, as responsibilities are essential for users to access various functionalities. This
typically involves a disruption in the user-to-responsibility mappings in the database. Here’s how
you can diagnose and potentially resolve this issue:

Steps to Diagnose and Resolve Missing Responsibilities:

1. Check the Patch Documentation

 Review Patch Notes: Look at the patch documentation and README files to see if there
are any known issues or specific post-application steps related to user responsibilities.
 Known Bugs: Check if there are any known bugs associated with the patch that might
affect responsibilities.

2. Review Patch Application Logs

 Log Files: Examine the patch log files located in $APPL_TOP/admin/<SID>/log/ for any
errors or warnings related to the patch application. Look for any SQL scripts or data
changes that might have affected the responsibilities.

3. Check Security Profiles and Responsibilities Setup

 Profile Options: Ensure that no profile options or settings related to responsibilities were
inadvertently changed during the patch application. Check the profile options MO:
Security Profile and HR: Security Profile for any anomalies.
 Responsibility Definitions: Verify that the responsibilities are still defined in the system.
You can use the following query to check if responsibilities are still present in the
database:

Sql>
SELECT responsibility_id, responsibility_name
FROM fnd_responsibility
WHERE application_id = <Application_ID>;

4. Verify User-Responsibility Assignments

 Check User-Responsibility Links: Use the following SQL query to check if user-
responsibility assignments are still in place:

Sql>
SELECT fu.user_name, fr.responsibility_name
FROM fnd_user_resp_groups_direct fur,
fnd_responsibility_vl fr,
fnd_user fu
WHERE fur.responsibility_id = fr.responsibility_id
AND fur.user_id = fu.user_id
AND fur.user_id = <Your_User_ID>; -- replace with your user ID
 Check End Dates: Sometimes, responsibilities may have end dates set, making them
unavailable. Check if the end_date for the assignments has been altered:

Sql>
SELECT fu.user_name, fr.responsibility_name, fur.end_date
FROM fnd_user_resp_groups_direct fur,
fnd_responsibility_vl fr,
fnd_user fu
WHERE fur.responsibility_id = fr.responsibility_id
AND fur.user_id = fu.user_id
AND fur.end_date IS NOT NULL
AND fur.user_id = <Your_User_ID>; -- replace with your user ID

5. Check Concurrent Program Security

 Concurrent Program Settings: Verify that concurrent program security settings haven't
restricted access to responsibilities. Sometimes, these settings can change and restrict
visibility.

6. Recompile Security

 Run Concurrent Program: Run the Security List Maintenance concurrent program,
which refreshes the security data in Oracle EBS. This might help in resolving issues
where responsibilities are not displayed correctly.
o Navigate to System Administrator > Concurrent > Requests > Run.
o Submit the Security List Maintenance program.

7. Check Custom Roles and Menus

 Custom Roles: If you use custom roles or responsibilities, verify that they haven't been
modified or corrupted. Check if the custom roles still exist and have the correct menus
and functions assigned.
 Menu Assignments: Ensure that the responsibilities still have the correct menus and that
those menus have not been changed or removed.

8. Check for Missing or Disabled Responsibilities

 Query Disabled Responsibilities: Check if responsibilities are disabled:

Sql>
SELECT responsibility_id, responsibility_name, responsibility_key
FROM fnd_responsibility
WHERE enabled_flag = 'N';

9. Run Diagnostic Scripts


 Oracle Diagnostics: Use Oracle's diagnostic scripts or utilities to check for issues with
user-responsibility mappings. Oracle often provides scripts in the patch documentation or
through support channels.

10. Reapply the Patch

 Reapply Patch: In some cases, reapplying the patch can resolve issues if something went
wrong during the initial application.

11. Consult Oracle Support

 Raise a Service Request: If the above steps do not resolve the issue, raise a service
request with Oracle Support, providing detailed logs and steps taken. They can provide
specific guidance or scripts to diagnose and resolve the issue.

SQL Queries for Common Checks:

 Check All Responsibilities:

Sql>
SELECT responsibility_id, responsibility_name, responsibility_key,
description
FROM fnd_responsibility;

 Check User-Responsibility Assignments:

Sql>
SELECT fu.user_name, fr.responsibility_name
FROM fnd_user_resp_groups_direct fur,
fnd_responsibility_vl fr,
fnd_user fu
WHERE fur.responsibility_id = fr.responsibility_id
AND fur.user_id = fu.user_id
AND fu.user_name = '<Your_User_Name>'; -- replace with your username

 Check Responsibilities with End Dates:

Sql>
SELECT fu.user_name, fr.responsibility_name, fur.end_date
FROM fnd_user_resp_groups_direct fur,
fnd_responsibility_vl fr,
fnd_user fu
WHERE fur.responsibility_id = fr.responsibility_id
AND fur.user_id = fu.user_id
AND fur.end_date IS NOT NULL;

 Check for Disabled Responsibilities:

Sql>
SELECT responsibility_id, responsibility_name, enabled_flag
FROM fnd_responsibility
WHERE enabled_flag = 'N';

Example Scenario for Resolution:

Missing Responsibilities for All Users:

If responsibilities have disappeared for all users, it's likely a global issue, such as:

 A change in security profiles.


 A database issue affecting user-responsibility mappings.

In such a case, running the Security List Maintenance concurrent program and checking
global security settings would be a good starting point.

Missing Responsibilities for Specific Users:

If only specific users are missing responsibilities, focus on:

 User-responsibility assignments.
 End dates for those assignments.
 User profiles and security settings.

Conclusion:

After completing these steps, the issue with missing responsibilities should be diagnosed and
hopefully resolved. If problems persist, engaging Oracle Support with detailed logs and
diagnostic information will be the next best step.

You might also like