Objective:
Sometimes, due to certain needs, we need to know what Oracle's form is used in order to make decisions.
For example, if a form is used in a very high number of times, the associated SQL code for this form should be prioritized to reduce server load and thus provide a system run speed.
Or, (especially) when the system is going to be upgraded, this data is very important: decide which form should be left and which form should be taken away.
Of course, this information is only the reference data for making decisions. 1. Technical method for form tracking on Oracle EBS:
A profile of Oracle EBS provides this capability:
User_profile_option_name = Login: Audit layer (Sign-on:audit level)
View_name = Fnd_signon_audit_view
This profile has 4 selectable values:
' None ': Do Not track--a
' User ': only track which user logged in
' Duty ': only track which user is logged in with which responsibility
' Forms ': track which user is logged in and which form--d to run
When this profile is enabled, the relevant data can be queried in the Fnd_signon_audit_view
The PID or process_spid is associated with the V$process/v$session 2. System profile settings: Login: Audit layer
"Login: Audit Layer" Allows you to select an audit layer to log on to Oracle app product users and add four audit layer capabilities: None, user, responsibility, and form.
"None" is the default value,
Indicates that any user logged into the Oracle app product is not audited.
Audit trail at the "user" level:
Users who log on to your system
User logon and Exit time
Occupied terminal
In the "responsibility" layer audit performed the "User" layer audit function and clues:
Responsible User Selection
The amount of time each responsibility is used by the user
In the "Forms" layer audit performed the "responsibility" layer audit function and clues:
User-Selected forms
When the user uses each form
System administrators can view and update at all levels.
Users cannot view or change this preset file option.
This preset file option can be viewed and updated in all four tiers.
Layer |
Whether you can view |
Whether to allow updates |
Site |
Is |
Is |
Application |
Is |
Is |
Responsibility |
Is |
Is |
User |
Is |
Is |
The internal name of this preset file option is signonaudit:level.
Reference connection: http://www.onejava.com/article/oracle/fnd/adupapp.htm
System Configuration Example:
3. How to monitor the custom form:
Standard function of the form, will be set as long as the profile value, will be monitored;
However, custom-developed form, if you want to be recorded by the system usage and usage times, must write code:
In Pre-form (or when-new-form-instance) Enter the following statement correctly, you can record each user login Form information (login time, number of times, etc.):
Fnd_standard. Form_info (' $Revision: 120.0 $ ', ' from_name ', ' application_short_name ',
' $Date: 2010/11/02 23:25 $ ', ' $Author: sam.t $ ');
For example, the form name is:xyg_wip_move_sch_qy
The name of the registered module is: XYG
Fnd_standard. Form_info (' $Revision: 120.0 $ ', ' xyg_wip_move_sch_qy ', ' xyg ',
' $Date: 2010/11/02 23:25 $ ', ' $Author: sam.t $ ');
As long as the user login to the form, it will be recorded, convenient to later statistics form The number of times used and other information.
The logic is: Just log in once with the same permission form , it will be recorded once.
At the same time, the DB tool can also be used to easily view the current user's use of form information.
For example, I open a form under this form:
Form information:
4. Related script files:
---Record the number of times a form is used:
SELECT a.*, B.form_name, b.description
From Fnd_login_resp_forms A, FND_FORM_VL B
WHERE a.form_id = b.form_id
---View the user's usage form in real time:
SELECT * from Fnd_signon_audit_view
Pkg:fnd_signon of---record related information
-table plug records to form usage times:
/*
INSERT into Fnd_login_resp_forms (login_id
, login_resp_id
, form_appl_id
, form_id
, start_time
)
SELECT Audit_form. login_id
, Audit_form. login_resp_id
, a.application_id
, f.form_id
, Sysdate
From Fnd_form F, Fnd_application A
WHERE f.form_name = Audit_form. Form_name
and f.application_id = a.application_id
and A.application_short_name = Audit_form. form_application;
*/
How to enable Oracle EBS form monitoring