• 如何启用Oracle EBS Form监控


     

    前言:

    有时候,因某些需要,必须知道Oracle的Form被使用的情况,以方面我们做出决策;

    例如,如果某个Form被使用的次数非常多,那么,这个Form的相关SQL代码就应该优先处理,以减少服务器负荷,从而提供系统运行速度。

    或者,(特别是)在系统要升级的时候,这些数据就显得非常重要了:决定哪个Form应该留,哪个Form应该拿掉。

    当然,这个信息只是做出决策的参考数据而已。

    1. 在Oracle EBS上进行Form跟踪的技术方法:

    Oracle EBS的一个Profile 提供此功能:

    User_Profile_Option_Name = 登录:审计层(Sign-On:Audit Level)

    View_Name = FND_SIGNON_AUDIT_VIEW

    此Profile有4个可选值:

    ‘无’:不跟踪--A

    ‘用户’:只跟踪到哪个用户登陆

    ‘职责’:只跟踪到哪个用户以哪个职责登陆

    ‘表单’:跟踪哪个用户以哪个职责登陆后,运行哪个FORM--D

    启用此Profile后,可以在FND_SIGNON_AUDIT_VIEW中查询到相关数据

    通过PID或PROCESS_SPID与 v$process/v$session 关联

    2. 系统Profile设置:登录:审计层

    “登录:审计层”允许您选择审计登录至 Oracle 应用产品用户的层,并增加了四个审计层的功能:无、用户、责任和表单。

    “无”是默认值,

    表示不审计登录到 Oracle 应用产品的任何用户。

    在“用户”层的审计线索:

    登录至您的系统的用户

    用户登录和退出的时间

    占用的终端

    在“责任”层审计执行了“用户”层审计功能和线索:

    责任用户选择

    用户使用每个责任的时间量

    在“表单”层审计执行了“责任”层审计功能和线索:

    用户选择的表单

    用户使用每个表单的时间

    系统管理员在所有层均可进行查看、更新。

    用户无法查看或更改此预置文件选项。

    此预置文件选项在全部四个层均可查看和更新。

    是否可查看

    是否允许更新

    站点

    应用

    责任

    用户

    此预置文件选项的内部名称为 SIGNONAUDIT:LEVEL。

    参考连接:http://www.onejava.com/article/oracle/fnd/adupapp.htm

    系统配置实例:

    clip_image002

    clip_image004

    3. 如何监控客制化的Form:

    标准功能的Form,都会被只要设定Profile值,都会被监控的;

    但是,客制开发的Form,如果想被系统记录其使用情况和使用次数,必须写代码:

    在Pre-Form(或者WHEN-NEW-FORM-INSTANCE)正确输入下面语句,就可以记录每次User登录Form的信息(登录时间,次数等)了:

    FND_STANDARD.FORM_INFO('$Revision: 120.0 $', 'From_Name', 'Application_Short_Name',

    '$Date: 2010/11/02 23:25 $', '$Author: Sam.T $');

    例如,Form名称是:XYG_WIP_MOVE_SCH_QY

    注册的模组的简称是:XYG

    FND_STANDARD.FORM_INFO('$Revision: 120.0 $', 'XYG_WIP_MOVE_SCH_QY', 'XYG',

    '$Date: 2010/11/02 23:25 $', '$Author: Sam.T $');

    clip_image006

    只要User登录这个Form,就会被记录下来,方便以后统计Form的被使用次数等信息。

    逻辑是:只要在同一个权限登录一次Form,就会被记录一次。

    同时,用DB工具也可以方便查看目前用户使用Form的信息。

    例如,我打开一个Form下面这个Form:

    clip_image008

    clip_image010

    Form信息:

    clip_image012

    4. 相关脚本文件:

    ---记录Form的使用次数:

    SELECT A.*, B.FORM_NAME, B.DESCRIPTION

    FROM FND_LOGIN_RESP_FORMS A, FND_FORM_VL B

    WHERE A.FORM_ID = B.FORM_ID

    ---实时查看User的使用Form情况:

    SELECT * FROM FND_SIGNON_AUDIT_VIEW

    ---记录相关信息的PKG:FND_SIGNON

    -向Form使用次数的表格塞记录:

    /*

    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;

    */

  • 相关阅读:
    作妖系列——更改spyder黑色主题
    latex beamer 插入代码
    LaTeX 如何在文档的侧面插入图片实现"绕排"?
    svm
    约束优化方法之拉格朗日乘子法与KKT条件
    Latex algorithm
    对于连续目标函数的学习问题,当误差为正态分布,而且在没有任何先验知识的条件下,最大似然估计与最小均方误差等价
    R语言table()函数
    高性能Linux服务器配置
    深度学习
  • 原文地址:https://www.cnblogs.com/quanweiru/p/5074681.html
Copyright © 2020-2023  润新知