The Purpose of this Form Personalization is to restrict the list of responsibilities that a user can assign using the ‘Users’ function that access the form FNDSCAUS.
The implementation of this Form Personalization is divided in 3 steps:
1. Restrict the List of Values of the Responsibilities.
2. Make Read Only the Responsibility START_DATE and END_DATE.
3. Hide the Password Field.
Form Personalization Function Definition
Responsibility: System Administrator
Navigate: Application -> Function
Define a new function that is a copy of the existing ‘Users’ Function (FND_FNDSCAUS). This new function will be called XX_FND_FNDSCAUS:
Once the function is created, it should be added to one of the existing responsibility.
The form FNDSCAUS after the Form Personalization will look like this:
The standard List of Values (LoV) before the Form Personalization looks like this:
The List of Values (LoV) after the Form Personalization will look lik this:
Restrict the List of Values of the Responsibilities
Before to start with the Form Personalization, the following profile options should be set to the user making the Form Personalization:
o ‘FND: Diagnostics’ set to ‘Yes’
o ‘Hide Diagnostics menu entry’ set to ‘No’
o ‘Utilities:Diagnostics’ set to ‘Yes’
From the horizontal menu select: Help -> Diagnostics -> Custom Code -> Personalize
In order to restrict the list of responsibilities to be showed in the LoV, we will need to tune the query that generate that LoV modifying the conditions specified in the WHERE clause.
SELECT R.RESPONSIBILITY_NAME, A.APPLICATION_NAME, R.RESPONSIBILITY_ID, R.APPLICATION_ID FROM FND_APPLICATION_VL A, FND_RESPONSIBILITY_VL R WHERE ( R.APPLICATION_ID = A.APPLICATION_ID AND (R.VERSION = '4' OR R.VERSION = 'W' OR R.VERSION= 'M' OR R.VERSION = 'H') AND (R.END_DATE IS NULL OR (TRUNC(SYSDATE) BETWEEN R.START_DATE AND R.END_DATE)) ) AND (R.RESPONSIBILITY_NAME LIKE '%GB') ORDER BY RESPONSIBILITY_NAME
To customize the list of responsibilities in the LoV, the WHERE clause that should be modified is
AND (R.RESPONSIBILITY_NAME LIKE '%GB')
Make Read Only the Responsibility START_DATE and END_DATE
To prevent a user from removing the END_DATE of responsibilities already assigned to a user account, it would be needed to make the responsibility END_DATE field not editable. Same action will be taken for the responsibility START_DATE.
Hide the Password Field
To prevent a user from resetting the password of another user account (like SYSADMIN) it would be needed to hide the password.
If it helps leave your comment or feedback! Thank you!