標籤:
http://oracleseeker.com/2009/08/12/how_to_find_the_table_view_of_oaf_application_in_oracle_ebs/
在OAF頁面的尋找背景資料來源相對於在Form中顯得更加麻煩,同時也無法像Form中那樣能夠較為準確的定位,但是也能夠尋找出大部分的內容。
本文介紹如何使用OAF提供的診斷功能來快速尋找OAF頁面對應的資料庫物件:
- 關於本頁功能(About this Page)
- SQL Trace功能
一、使用關於本頁功能(About this Page)
前提:在使用者層設定預製檔案:Personalize Self-Service Defn 的值為Yes 來啟動個人化模式
步驟:
- 點擊OAF頁面左下角的“About this Page”連結
- 進入關於頁面中,展開Page Definition部分的頁面結構,頁面的結構會隨著頁面定義有所不同
- 或者選擇Business Component References Details部分中的View Object定義
- 查看View Object列中的資訊,組件引用的視圖對象會有連結,直接點選連結進入視圖對象頁面
- 視圖對象詳細資料中的SQL就是建立視圖對象的語句,查看它就可以知道頁面組件對應的後台資料來源
- 通過選擇不同的視圖對象查看對應的定義
執行個體(找出PO Document Types頁面中對應的後台資料庫物件):
- 點擊Document Types頁面左下角的About this Page連結
- 進入About Page頁面後,展開頁面定義部分為如下的結構
- 點擊PoAllDocumentTypesVO視圖對象連結進入視圖對象定義詳細頁面
- 另外也可以在About Page頁面中展開Business Component References Details,然後選擇下面的視圖對象:oracle.apps.po.setup.server.PoAllDocumentTypesVO
- 通過視圖對象詳細頁面可以得到SQL
?View Code SQL
二、使用SQL Trace功能
只要發生資料庫操作,都可以使用SQL Trace功能來追蹤資料庫操作統計,OAF頁面中也需要進行資料庫的增刪查操作,因此可以可以使用它來跟蹤。
前提:在使用者層設定預製檔案:FND: Diagnostics 的值為Yes,進入診斷模式
步驟:
- 選擇Diagnostic為Set Trace Level,點擊Go按鈕
- 設定SQL Trace的層級
- 進入OAF頁面中進行操作,並保證操作有查詢、插入、更新或刪除動作
- 操作完成後,再次進入關閉Trace模式,記錄產生的Trace ID號碼
- 以資料庫作業系統使用者,如ora02登陸資料庫伺服器
- 使用Tkprof工具格式化Trace結果檔案輸出
- 查看被格式化過的Trace檔案
- 得出資料來源
執行個體:
- 以系統管理員職責,在使用者層設定預製檔案:FND: Diagnostics 的值為Yes,進入診斷模式
- 以預置檔案設定的同一使用者登入首頁,在頁面的頂部點擊Global按鈕 Diagnostics
- 根據需要,選擇Trace打頭的幾個選項來進入SQL Trace模式,點擊Save按鈕
- 進入PO Document Types頁面更新Forward Method後儲存
- 再次進入Diagnostics關閉Trace,記錄下產生的最後一個Trace ID號碼16456
- 使用下面的SQL查詢出trace檔案的路徑
SELECT value
FROM v$parameter
WHERE name = ‘user_dump_dest’;
VALUE
———————————————————————–
/d02/db/tech_st/11.1.0/admin/VIS02_ebs006/diag/rdbms/vis02/VIS02/trace
- 以資料庫作業系統使用者(ora02)Telnet到資料庫伺服器,運行如下命令
[[email protected] ~]$ cd /d02/db/tech_st/11.1.0/admin/VIS02_ebs006/diag/rdbms/vis02/VIS02/trace
[[email protected] trace]$ ls -al *16456*
-rw-r–r– 1 ora02 dba 116421 Aug 11 17:48 16456_234_1.output
-rw-r–r– 1 ora02 dba 502101 Aug 11 17:35 VIS02_ora_16456_234.trc
-rw-r–r– 1 ora02 dba 17288 Aug 11 17:35 VIS02_ora_16456_234.trm
[[email protected] trace]$ tkprof VIS02_ora_16456_234.trc 16456_234_1.output
- 上面命令產生16456_234_1.output檔案,從伺服器下載檔案後,找出檔案中的UPDATE語句,其中對ICX類型的更新動作無需關注,16456_234_1.output檔案範例
- 找到如下的UPDATE語句
?View Code SQL
12345678 |
UPDATE po_document_types_all_b podocumenttypeeo SET last_update_date = :1, last_updated_by = :2, forwarding_mode_code = :3, last_update_login = :4 WHERE org_id = :5 AND document_type_code = :6 AND document_subtype = :7 |
–
Oracle EBS環境下尋找資料來源(OAF篇)