oracle ebs 数据源,Oracle EBS环境下查找数据源(Form篇)
關(guān)于在Oracle EBS環(huán)境下如何查找數(shù)據(jù)源的文章幾年前就已經(jīng)開始整理,但是其中關(guān)于OAF方面的一直沒有整理,導(dǎo)致這份文檔一直殘缺不全,
有很多次同事都向我索要相關(guān)文檔都未能如愿以償,新的一屆培訓(xùn)工作再次啟動,為了自己也能夠“一勞永逸”,將相關(guān)內(nèi)容整理發(fā)出。
在Oracle E-Business Suite 環(huán)境下進(jìn)行二次開發(fā),要求技術(shù)顧問對EBS系統(tǒng)的結(jié)構(gòu)和實(shí)現(xiàn)有一定的了解,同時熟悉系統(tǒng)的關(guān)鍵流程,進(jìn)而掌握后臺的表結(jié)構(gòu)設(shè)計,查找數(shù)據(jù)源需要達(dá)到的兩個目的是:
到對應(yīng)的數(shù)據(jù)庫對象:視圖或表
找到界面中字段對應(yīng)后臺的表列
本文先介紹如何查找Form界面對應(yīng)的數(shù)據(jù)源,快速找出FOrm界面后臺對應(yīng)的表/視圖以及對應(yīng)的列,
Form本身特有的特點(diǎn),致使查找Form界面所對應(yīng)的后臺數(shù)據(jù)源變得相對簡單方便。
一、使用“查看—> 歷史記錄”功能
“歷史紀(jì)錄”可以找出數(shù)據(jù)塊對應(yīng)的后臺數(shù)據(jù)庫對象,并不能找出字段所對應(yīng)的數(shù)據(jù)庫列。
適用場合:適用于基于數(shù)據(jù)庫塊的數(shù)據(jù)源查找
前提:光標(biāo)停留在需要查詢數(shù)據(jù)源的數(shù)據(jù)塊中,并按某個條件查詢出數(shù)據(jù)
步驟:
選擇菜單:Help –> Record History(幫助 –> 歷史紀(jì)錄)
查看彈出窗口中Table Name的值,這個值便是光標(biāo)所在數(shù)據(jù)塊對應(yīng)的后臺數(shù)據(jù)庫視圖或數(shù)據(jù)庫表
實(shí)例(查找用戶所對應(yīng)的后臺數(shù)據(jù)庫對象):
光標(biāo)定位于User Name字段
執(zhí)行查詢,查詢出SYSADMIN用戶信息
選擇菜單:Help –> Record History
彈出如下窗口,其中Table Name的值:FND_USER,既是后臺數(shù)據(jù)庫對象
限制:歷史紀(jì)錄”的方式只適用于基于數(shù)據(jù)庫塊的查詢;而對于非數(shù)據(jù)庫塊的后臺查詢沒有辦法使用,不能使用的地方會彈出如下的消息:
二、使用“查看 —> 診斷 –> 檢查”
通過檢查功能可以查找出字段對應(yīng)后臺數(shù)據(jù)庫列信息,因此使用此方法的需要先找出對應(yīng)的數(shù)據(jù)庫視圖或者表
步驟:
光標(biāo)停留在Form界面中的一個字段
選擇菜單:Help —> Diagnostics –> Examine
在彈出的窗口中輸入數(shù)據(jù)庫用戶APPS的密碼,確定
彈出窗口中Field對應(yīng)的值既是Form所對應(yīng)的字段,一般情況下,此值既是數(shù)據(jù)列的列名
實(shí)例(查找出User Name字段所對應(yīng)的后臺數(shù)據(jù)庫列):
光標(biāo)停留在User Name字段中
選擇菜單:HelpàDiagnosticsàExamine
彈出如下窗口,輸入數(shù)據(jù)庫用戶APPS的密碼,確定
彈出如下窗口,Filed的值:USER_NAME就是User Name字段所對應(yīng)的后臺數(shù)據(jù)庫列,因此本字段為:fnd_user.user_name
注意事項:使用此方法來查找數(shù)據(jù)列時,我們得到的只是Form字段的名稱,很多使用Form字段的名稱和所對應(yīng)的數(shù)據(jù)源列一致,但是在少數(shù)情況下,Form字段名稱和后臺數(shù)據(jù)庫列名存在差異,這個使用此方法就無法100%適用,而需要通過名稱等進(jìn)一步推測確認(rèn)。
三、使用”Last Query”功能
使用最后查詢可以找出在Form中最后執(zhí)行查詢的SQL語句,從而得知對應(yīng)的數(shù)據(jù)源以及相關(guān)數(shù)據(jù)庫列信息
適用場合:同時適用于基于數(shù)據(jù)庫塊和非數(shù)據(jù)庫塊的數(shù)據(jù)源查找
步驟:
在Form中進(jìn)行數(shù)據(jù)查詢
光標(biāo)停留在Form界面中的一個字段上
選擇菜單:Help –> Diagnostics –> Examine
在彈出的窗口中輸入數(shù)據(jù)庫用戶APPS的密碼,確定
彈出窗口中,選擇Block為:SYSTEM,Field為:LAST_QUERY
Value中的SQL語句既是Form中最后查詢的語句
實(shí)例(找出并發(fā)管理器對應(yīng)的后臺數(shù)據(jù)源):
進(jìn)入并發(fā)管理器界面,并進(jìn)行查詢(自動查詢),使用“歷史紀(jì)錄”方法無法得到表
選擇菜單:Help –> Diagnostics –> Examine,在彈出的窗口中輸入APPS用戶密碼
彈出窗口中,選擇Block為:SYSTEM,Field為:LAST_QUERY
取得Value為:
SELECT ROWID,
row_id,
concurrent_queue_name,
user_concurrent_queue_name,
target_node,
max_processes,
application_id,
concurrent_queue_id,
control_code,
manager_type
FROM fnd_concurrent_queues_vl
WHERE enabled_flag = 'Y'
ORDER BY decode(application_id, 0, decode(concurrent_queue_id, 1, 1, 4, 2)),
sign(max_processes) DESC,
concurrent_queue_name,
application_id
這樣可以取得數(shù)據(jù)庫視圖:FND_CONCURRENT_QUEUES_VL
限制:由于Last Query中查詢到的SQL語句是Form中最后一次查詢的語句,因此如果需要查找像主從關(guān)系中主塊數(shù)據(jù)源就沒有辦法適用
四、使用SQL Trace功能
使用SQL Trace功能,可以知道在Form操作過程中,對數(shù)據(jù)庫系統(tǒng)進(jìn)行了哪些查詢、DML和DDL操作,可以全面的查看與數(shù)據(jù)庫有關(guān)的操作和性能統(tǒng)計信息。
此方法是這些方法中功能最強(qiáng)大,同時也是最復(fù)雜的一個,而且它經(jīng)常成為性能調(diào)試中的一個得力工具。
步驟:
啟動Trace模式
在Form中進(jìn)行操作,并保證操作有查詢、插入、更新或刪除動作
關(guān)閉Trace模式
登陸數(shù)據(jù)庫服務(wù)器
使用Tkprof工具格式化Trace結(jié)果文件輸出
查看被格式化過的Trace文件
推測驗證數(shù)據(jù)源
實(shí)例(定義一個用戶時,找到后臺所進(jìn)行的DML操作,進(jìn)而找到后臺數(shù)據(jù)源):
打開Form界面進(jìn)入輸入狀態(tài),還是以上面使用的User界面為例
選擇菜單:Help –> Diagnostics –> Trace –> (Regular Trace, Trace with Binds, Trace with Waits, Trace with Binds and Waits)
記下Trace文件路徑及名稱
在界面上操作,輸入信息,保存
選擇菜單:Help –> Diagnostics –> Trace –> No Trace,失效Trace功能
使用數(shù)據(jù)庫操作系統(tǒng)用戶Telnet到數(shù)據(jù)庫服務(wù)器,切換到$ORACLE_HOME/admin/_/udump(上面所顯示的路徑)
使用Tkprof命令格式化Trace輸出:tkprof demo_ora_21088_SYSADMIN.trc demo_ora_21088.out
五、查看Form源代碼
對于Form應(yīng)用來說,如果上面的方法還不足以滿足需求的話,可能就需要采用最徹底的辦法了,直接查看Form的源代碼,我想這個方法是最能夠解決問題的方法了,但是由于需要查看源代碼,對于查看的人員就需要熟悉Form的開發(fā),因此一般情況下不先推薦使用它,但是對于如果希望完全搞清楚Form應(yīng)用后臺邏輯的情況下,也只能采用這種方式。
此方法在此就不做介紹了,此方法可以說只適合Form開發(fā)人員使用。
上面的方法是Oracle EBS二次開發(fā)中最常用最有效的方法,在Form相關(guān)的開發(fā)和應(yīng)用中,掌握的以上的方法基本上能夠解決絕大多數(shù)的問題。
后續(xù)將放出Oracle EBS環(huán)境下查找數(shù)據(jù)源的OAF篇。
總結(jié)
以上是生活随笔為你收集整理的oracle ebs 数据源,Oracle EBS环境下查找数据源(Form篇)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 国科大学习资料--自然语言处理(宗成庆)
- 下一篇: 计算机应用计算机电算化题库,2014年浙