OAF_开发系列24_实现OAF更新记录显示Record History(案例)

简介: 20150716 Created By BaoXinjian 一、摘要 OAF页面控件中显示记录历史信息有如下的限制: 1. 首先当然是后台的表结构中必须包含WHO字段列了 2. 基于的视图对象必须是非PL/SQL的可更新VO 3.

20150716 Created By BaoXinjian

一、摘要


OAF页面控件中显示记录历史信息有如下的限制:

1. 首先当然是后台的表结构中必须包含WHO字段列了

2. 基于的视图对象必须是非PL/SQL的可更新VO

3. 这个功能仅在Header、Table和Advanced Table 这3个控件中有用

4. 需要设置预置文件 FND: Record History Enabled (FND:启用历史记录) / FND_RECORD_HISTORY_ENABLED

 

由于(启用记录历史)是Header、Table和Advanced Table 控件的一个Boolean属性,

因此可以在开发OAF页面的时候通过设置(Record History Enabled)来启用历史记录功能,

也可以像OAF页面显示“历史记录”图标一文中描述的一样使用OAF个性化功能来启用它

二、案例分析


1. 启用方式

由于“启用记录历史”是Header、Table和Advanced Table 控件的一个Boolean属性。

因此可以在开发OAF页面的时候通过设置(Record History Enabled)来启用历史记录功能,也可以像通过OAF个性化功能来启用它。

jdev_enable_record_history

 

2. 下面是Header和Table控件显示记录历史图标的效果

header_record_history

table_record_history

 

3. 代码控制

实际上对于3个空间的Java类:OAHeaderBean, OATableBean 和 OAAdvancedTableBean 都有一个方法setRecordHistoryEnabled(boolean)。

在页面运行的时候processRequest()方法会调用它,当点击历史记录图标时会打开记录历史模式窗口,此时记录历史页面的控制器OARecordHistoryCO –> prcoessRequest()方法会从AM中取得当前行的。

然后利用实体行的row.getEntity()方法从实体对象中通过entityObject.getAttribute()方法来取得WHO字段的值。

 

三、运行测试


1. 修改Record History Enabled为True

2. 运行测试,显示Record History

3. 点看查看历史记录

 

Thanks and Regards

参考:OracleSeeker - http://oracleseeker.com/2009/08/27/show_record_history_in_oaf_page_view/

ERP技术讨论群: 288307890
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建
相关文章
|
11月前
|
Web App开发 XML 数据格式
SAP Fiori Elements List Report 表格新增列扩展方式的工作原理试读版
SAP Fiori Elements List Report 表格新增列扩展方式的工作原理试读版
SwiftUI—如何使列表同时支持删除和移动记录的功能
SwiftUI—如何使列表同时支持删除和移动记录的功能
143 0
SwiftUI—如何使列表同时支持删除和移动记录的功能
|
前端开发
Ember Data 之记录操作:创建、更新和删除
前面在《Ember.js 项目开发之 Ember Data》介绍了Ember Data 和 《Ember Data 之模型定义》、《Ember Data 之记录查询》,本文将继续介绍记录操作:创建、更新和删除。
131 0
如何找到ngrx action匹配的取数据代码 - 谈谈Spartacus Product Carousel控件数据的读取
如何找到ngrx action匹配的取数据代码 - 谈谈Spartacus Product Carousel控件数据的读取
如何找到ngrx action匹配的取数据代码 - 谈谈Spartacus Product Carousel控件数据的读取
|
NoSQL
随笔:sending data状态包含了使用内部临时表
这是一个我的随笔记录,这些过程非常有用,也非常明显。 欢迎关注我的《深入理解MySQL主从原理 32讲 》,如下: 语句如下: mysql> desc select id,count(*) from t110 group by id; +----+-------------+-------+...
888 0
[原]使用Query实现事务代码与后台配置菜单互查
关键字: 由事务代码查找后台菜单、获得后台配置菜单的事务代码、IMG Menu、TCode、T-Code、Transaction code 使用事务SQVI建立Table jion联接表CUS_ACTOBJ、CUS_IMGACT、CUS_IMGACH 对勾以下字段 使用菜单QuickView/Additional functions/genrate program | display report name生成ABAP程序,用SE38运行,或用SE93为此程序建立一个TCODE。
951 0
|
关系型数据库 测试技术
OAF_开发系列13_实现OAF通过Vector动态查询设置(案例)
20150715 Created By BaoXinjian 一、摘要 Oracle OAF Guide上介绍的标准客制化查询的方式,在多条件下进行查询 具体实现步骤如下 Step1.在controler中的processRequest 的方法中调用 (1).
1623 0
|
Web App开发
OAF_开发系列09_实现OAF预提取LOV设定(案例)
20150712 Created By BaoXinjian 一、摘要 1. 预取LOV(Look Ahead LOV) (1). 预取LOV最大的特点就是再也不需要每次都要烦人的弹出一个窗口让人选择了。
1142 0
|
SQL 数据库
OAF_开发系列03_实现OAF如何在保存前判断数据是否存在变更(案例)
2014-06-26 Created By BaoXinjian 一、摘要 在OAF的开发中,可能有这样的需求,在选择保存按钮时,如果存在改动的数据,则提交事务,保存到数据库中; 如果不存在改动的数据,就提示用户当前没有数据可更改; 解决时需要判断页面中所使用的视图对象是否发生过改动,存在多种方法   1. 调用OADBTransaction.isDirty()方法 此方法用于判断当前事务中,视图对象是否发生过变更。
1185 0