Oracle EBS側錄背後SQL方式_確認某個UI對應程式及Form名稱
記得之前在公司通靈鼎新Workflow GP過程也是十分艱難,畢竟無對外程式介面可以介接。
不像Tiptop可能還多少有提供程式介面能做二次開發。
最近在研究Oracle EBS如何得知某一個介面底層查詢邏輯、介面程式檔案位置諸如此類問題。
話說Oracle EBS 一整包68G下載解壓到安裝真的有夠久....
Oracle ENS中有所謂「列表值」 (LOV, List of values)
Step1.Help --> About Oracle Applications.
可確認Form Name、Form Path、登入使用者名稱
Step2.對於UI 輸入篩選條件並點擊“查找”按鈕
Step3.打開連接到EBS資料庫模式的資料庫Session後,執行下面的SQL。
檢索由特定用戶名稱在module名稱包含
特定表單名稱的會話中執行的上一個SQL語句。
SELECT (SELECT to_char(sql_fulltext) FROM v$sqlarea WHERE sql_id = ses.prev_sql_id) FROM v$session ses, v$sqlarea sq WHERE ses.module LIKE '%&form_name%'AND client_identifier = '&user_name'AND sq.sql_id(+) = ses.sql_id;
這部分子查詢
SELECT (SELECT to_char(sql_fulltext) FROM v$sqlarea WHERE sql_id = ses.prev_sql_id)
從v$sqlarea視圖中檢索sql_fulltext,並將其轉換為字符串,對應於ses.prev_sql_id的SQL語句。
- sql_fulltext包含SQL語句的全文。
- sql_id是SQL語句的標識符。
- v$session是一個包含當前會話信息的視圖。
- v$sqlarea是一個性能視圖,提供當前在共享SQL區域中的SQL語句的信息。
Ref:
How to find data (tables) in Oracle E-Business Suite (EBS) database
https://dataedo.com/kb/app-metadata/oracle-ebs/finding-data-in-oracle-ebs-database
Find the SQL behind List of Values(LOV) of an Ebusiness Suite screen
https://oracleappsdiary.blogspot.com/2015/08/find-sql-behind-list-of-valueslov-of_25.html
Finding SQL behind LOV
https://oebstech.wordpress.com/2017/08/17/sql-behind-lov/
留言
張貼留言