前言:
有时候,因某些需要,必须知道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;
*/

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

  1. 如何启用Oracle EBS Form监控

    前言: 有时候,因某些需要,必须知道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. 开源 iOS 项目分类索引大全

    GitHub 上大概600个开源 iOS 项目的分类和介绍,对于你挑选和使用开源项目应该有帮助 系统基础库 Category/Util sstoolkit 一套Category类型的库,附带很多自定义 ...

  2. 将ImageView中的图片保存到本地相冊

    private void SaveImageToSysAlbum() { if (FileUtil.isSdCardExist()) { BitmapDrawable bmpDrawable = (B ...

  3. Erp第一章:初感

    Erp第一章:初感1.核心标志实现:内部集成.外部集成.内部集成包括实现产品研发.核心业务.数据采集:外部集成就是企业与供需链上的所有合作伙伴的共享信息集成.2.Erp难点在于打破传统企业四面墙,把流 ...

  4. asp.net页面与页面之间参数传递

    传值asp文件send.aspx 代码如下 复制代码 <form id="form1" runat="server" action="recei ...

  5. js(1)不太注意的一些小事件

    确认选择 除了向用户提供信息,我们还希望从用户那里获得信息.这里就用到了confirm 消息对话框. 语法:confirm(str); 参数说明: str: 在消息对话框中要显示的文本,返回的是布尔值 ...

  6. Gitlab管理下本地Git配置

    公司项目组用的是Gitlab,组内成员分配有有固定的git个人账户,不同成员有不同的模块编辑权限,使用前需要配置好本地的Git.对一直使用svn的小菜菜来说,这个还是需要一点步骤配置下才可以使用的.配 ...

  7. 使用 Chrome 来调试你的 Android App

    http://www.stormzhang.com/android/2015/03/05/android-debug-use-chrome/ 个人一直对Chrome情有独钟,Chrome除了更快之外, ...

  8. Android 更换系统字体......

    Android 更换系统字体...... 原文:http://vision-apps.blogspot.hk/2012/02/android-better-way-to-apply-custom-fo ...

  9. CSS 3 属性学习大纲

    1. Gradient 渐变 2. RGBA 颜色透明 3. Border-radius 圆角 4. text-shadow 文字阴影 5. box-shadow 图层阴影 6. Transform ...

  10. NodeJS学习笔记(一)——搭建开发框架Express,实现Web网站登录验证

    JS是脚本语言,脚本语言都需要一个解析器才能运行.对于写在HTML页面里的JS,浏览器充当了解析器的角色.而对于需要独立运行的JS,NodeJS就是一个解析器.每一种解析器都是一个运行环境,不但允许J ...