OAF_开发系列24_实现OAF更新记录显示Record History(案例)
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个性化功能来启用它。
2. 下面是Header和Table控件显示记录历史图标的效果
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/
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?