前言:

有时候,因某些需要,必须知道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

系统配置实例:

(见文档)





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 $');





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

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

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



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

(见文档)





Form信息:

(见文档)







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;

*/

来自:http://www.itpub.net/thread-1369624-1-8.html

如何启用Oracle EBS Form监控的更多相关文章

  1. 如何启用Oracle EBS Form监控【Z】

    前言: 有时候,因某些需要,必须知道Oracle的Form被使用的情况,以方面我们做出决策: 例如,如果某个Form被使用的次数非常多,那么,这个Form的相关SQL代码就应该优先处理,以减少服务器负 ...

  2. Oracle EBS Form 发布到Server端的注意事项

    前段时间在本地XP系统上测试了一些整合javabean的Form例子,想着发布到服务器段去看看能否运行正常,一开始以为会和本地XP系统一样,部署到相关的目录下进行一些配置就可以了,但实际过程却和想象的 ...

  3. Oracle EBS Form Builder使用Java beans创建窗体

    最近有个项目,需要研究一下Oracle的E-Business Sutie(EBS),对于以前没接触此套件的我来说,简直太痛苦了.在网上找了一堆资料,试着进行Form二次开发,也遇到各类奇葩问题.目前遇 ...

  4. Oracle EBS - Form DEV Env

    1. 创建文件夹resource与forms, 以便存放pll与forms(主要用到APSTAND.fmb, APPSTAND.fmb, TEMPLATE.fmb)文件; 2. 修改注册表 HKEY_ ...

  5. oracle ebs form开发总结

    item的布局千万不要去乱动,只要调好长宽和y轴的坐标就好了.form内部集成了很多代码对布局进行动态的调整,而且有一些代码的长宽什么的还是写死了的,我们一动,form可能就识别不了了,然后就显示出来 ...

  6. Oracle EBS FORM 更改记录状态

    get到一个新的思路. 因为validate触发器是无法做go_block或者loop操作的,因此可以尝试修改数据块属性,将状态更新为改动的,触发 ON-UPDATE 触发器,将循环或者跳转语句加入到 ...

  7. How to set window title name on Oracle EBS Form?

    --1. 置換掉原來Winodw Property上的Title String ex. SET_WINDOW_PROPERTY('XXDII_INV_MISC_TXN_V',TITLE,:misc_t ...

  8. ORACLE EBS FORM 二次开发常用小技巧

    1.锁住当前行 Set_Item_Instance_Property('main.import_flag', CURRENT_RECORD, UPDATE_ALLOWED, PROPERTY_OFF) ...

  9. Oracle EBS FORM lov

    存在一种情况: 一个LOV的值当前有效,因此填入保存.但突然无效后,当查询该界面时就会弹出LOV框使其修改. 解决方案: 1. 非常粗暴,不设置校验,在LOV对应的item强行将校验设置为NO. 2. ...

随机推荐

  1. Python开发——利用正则表达式实现计算器算法

    Python开发--利用正则表达式实现计算器算法 (1)不使用eval()等系统自带的计算方法 (2)实现四则混合运算.括号优先级解析 思路: 1.字符串预处理,将所有空格去除 2.判断是否存在括号运 ...

  2. 学习sharding-jdbc 分库分表扩展框架

    先丢代码地址 https://gitee.com/a247292980/sharding-jdbc 再丢pom.xml的dependency <properties> <projec ...

  3. electron-vue 初体验

    注意事项 首先确保node和npm是最新版本 避免使用镜像(我淘宝镜像安装有报错现象) 避免window的一些坑 若上一项检查完成,我们可以继续设置所需的构建工具.使用 windows-build-t ...

  4. 在Linux系统上获取命令帮助信息和划分man文档

    使用历史命令history 打完以后前面会有顺序号的比如1 cd2 ls3 pwd如果需要重新执行cd命令则可以执行 !3 命令 命令补全功能 比如你要执行history命令 可以打上histo+键 ...

  5. VLAN之间单臂路由通信

    实验目的 理解单臂路由的应用场景 掌握路由器子接口的配置方法 掌握子接口封装VLAN的配置方法 理解单臂路由的工作原理 实验原理 单臂路由解决用户需要跨越VLAN实现通信的情况. 原理:通过一台路由器 ...

  6. 关于熊猫认证软件IOS安装步骤教程(适用于其他软件)

    IOS运行企业版应用教程 1.扫描二维码之后微信进入界面,如下图所示:点击右上角三个点   2.弹出分享界面,如图所示:点击苹果自带浏览器(sarfari)     3.进入苹果自带浏览器后如图所示, ...

  7. ubuntu15.10 安装 virtualbox5.0

    首先安装依赖包.ubuntu15.01安装的时候会出现这个错误: virtualbox-); however: Package libvpx1 is not installed 而且sudo apt- ...

  8. 解放双手——Android的自动化构建及发布

    在一个App从开发到测试的过程中,我有很长一段时间都是这样做的:打包,上传到tower,在tower上编写本次更新说明,通知测试.一般情况下,打包及上传的过程大概也就2分钟.除此之外,由于项目代码有作 ...

  9. JVM性能参数调优实践,不会执行Full GC,网站无停滞

    原文来自:http://bbs.csdn.net/topics/310110257 本文只做整理记录,供个人学习. 1 JVM参数调优是个很头痛的问题,设置的不好,JVM不断执行Full GC,导致整 ...

  10. (译)快速指南:用UIViewPropertyAnimator做动画

    翻译自:QUICK GUIDE: ANIMATIONS WITH UIVIEWPROPERTYANIMATOR 译者:Haley_Wong iOS 10 带来了一大票有意思的新特性,像 UIViewP ...