20150716 Created By BaoXinjianoracle
1、摘要post
OAF頁面控件中顯示記錄歷史信息有以下的限制:測試
1. 首先固然是後臺的表結構中必須包含WHO字段列了 spa
2. 基於的視圖對象必須是非PL/SQL的可更新VO 對象
3. 這個功能僅在Header、Table和Advanced Table 這3個控件中有用 blog
4. 須要設置預置文件 FND: Record History Enabled (FND:啓用歷史記錄) / FND_RECORD_HISTORY_ENABLED 開發
因爲(啓用記錄歷史)是Header、Table和Advanced Table 控件的一個Boolean屬性,get
所以能夠在開發OAF頁面的時候經過設置(Record History Enabled)來啓用歷史記錄功能,it
也能夠像OAF頁面顯示「歷史記錄」圖標一文中描述的同樣使用OAF個性化功能來啓用它
table
2、案例分析
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字段的值。
3、運行測試
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/