1. 程式人生 > >從form取資料

從form取資料

1.知道FORM名稱,查詢出具體掛在什麼職責下,要求通過查詢結果可以一步步展開對應職責直接找到該FORM,輸入條件為FORM名稱

--1
SELECT form.form_name,
       --form.form_id,
       --func.function_id,
       --func.function_name,
       --menu.MENU_ID,
       menu.PROMPT,
       resp.RESPONSIBILITY_NAME
  FROM fnd_form_vl form
  JOIN fnd_form_functions_vl func
    ON form.form_id = func.form_id
  JOIN fnd_menu_entries_vl menu
    ON menu.function_id = func.FUNCTION_ID
    join fnd_responsibility_vl resp
    on resp.MENU_ID = menu.MENU_ID
 WHERE upper(form_name) = 'CUXAMFINE';

2.併發程式可以在什麼地方進行提交。查詢結果要求  :併發程式名稱,簡稱,職責,可執行,程式包  等
輸入條件可以是 併發程式名稱、資料庫程式包

--2
 --根據程式名稱查詢
 SELECT pro.user_concurrent_program_name 程式名稱,
        pro.concurrent_program_name      簡稱,
        --pro.executable_id,
        exec.execution_file_name 程式包,
        exec.executable_name     可執行,
        --groups.request_group_id,
        resp.responsibility_name 職責
   FROM fnd_concurrent_programs_vl pro
   JOIN fnd_executables_form_v exec
     ON exec.executable_id = pro.executable_id
   JOIN fnd_request_group_units group_units
     ON group_units.request_unit_id = pro.concurrent_program_id
   JOIN fnd_request_groups groups
     ON groups.request_group_id = group_units.request_group_id
   JOIN fnd_responsibility_vl resp
     ON resp.request_group_id = groups.request_group_id
  WHERE  pro.user_concurrent_program_name = 'Task Purge Program';
 --根據程式包查詢
SELECT pro.user_concurrent_program_name 程式名稱,
       pro.concurrent_program_name      簡稱,
       --pro.executable_id,
       exec.execution_file_name 程式包,
       exec.executable_name     可執行,
       --groups.request_group_id,
       resp.responsibility_name 職責
  FROM fnd_concurrent_programs_vl pro
  JOIN fnd_executables_form_v exec
    ON exec.executable_id = pro.executable_id
  JOIN fnd_request_group_units group_units
    ON group_units.request_unit_id = pro.concurrent_program_id
  JOIN fnd_request_groups groups
    ON groups.request_group_id = group_units.request_group_id
  JOIN fnd_responsibility_vl resp
    ON resp.request_group_id = groups.request_group_id
   AND exec.execution_file_name = 'CAC_TASK_PURGE_PVT.PURGE_STANDALONE_TASKS';

3.後臺查詢請求執行歷史。請求起止執行時間,請求執行時間,請求號碼,引數,請求階段、狀態,提交職責,提交人

--3
SELECT  req_sum.requested_start_date,
        req_sum.actual_completion_date,
        req_sum.actual_completion_date - req_sum.requested_start_date runtime,
       --requested_by,
       --req_sum.responsibility_id,
       req_sum.request_id,
       req_sum.ARGUMENT_TEXT,
       req_sum.PHASE_CODE,
       req_sum.status_code,
       req_sum.requestor,
       resp.RESPONSIBILITY_NAME
  FROM fnd_conc_req_summary_v req_sum, 
       fnd_responsibility_vl resp
  where req_sum.RESPONSIBILITY_ID = resp.RESPONSIBILITY_ID;

4.查詢使用者對應的職責,使用者、使用者說明、職責、職責分配起止日期。

--4
SELECT fnd_user.user_name,
       fnd_user.description,
       resp.responsibility_name,
       indirect.start_date,
       indirect.end_date
  FROM fnd_user_resp_groups_indirect indirect,
       fnd_user,
       fnd_responsibility_vl         resp
 WHERE indirect.user_id = fnd_user.user_id
   AND resp.responsibility_id = indirect.responsibility_id
 ORDER BY fnd_user.user_name;

5.查詢關鍵性彈性域結構
關鍵性彈性域表,標題,程式碼,結構,結構程式碼,段編號,段說明,對應的資料庫欄位,值集等。

--5
SELECT flex.application_table_name, --表名
       flex.id_flex_name, --標題
       flex.id_flex_code, --程式碼
       flex.set_defining_column_name ,-- 結構列
       stru.id_flex_structure_code, --結構程式碼
       segments.segment_num, --段編號
       segments.segment_name, --段說明
       segments.application_column_name, --對應的資料庫欄位
      --segments.flex_value_set_id ,--值集id
      value_set.flex_value_set_name --值集
  FROM fnd_id_flexs              flex,
       fnd_id_flex_structures_vl stru,
       fnd_id_flex_segments_vl   segments,
       fnd_flex_value_sets value_set
 WHERE flex.id_flex_code = stru.id_flex_code
   AND segments.id_flex_num = stru.id_flex_num
   and segments.ID_FLEX_CODE = stru.ID_FLEX_CODE
   and value_set.flex_value_set_id = segments.FLEX_VALUE_SET_ID
   AND flex.id_flex_code = 'GLLE'
   order by stru.id_flex_structure_code,segments.segment_num;

6.查詢說明性彈性域
表、標題、上下文、段編號、段說明、對應的資料庫欄位、值集等

--6
SELECT desc_flex.title, --標題
       desc_flex.application_table_name, --表
       desc_flex.form_context_prompt, --上下文
       col_usage.column_seq_num, --段編號
       col_usage.end_user_column_name, --段說明
       col_usage.application_column_name, --對應的資料庫欄位
       --col_usage.flex_value_set_id ,--值集id
       value_set.flex_value_set_name --值集
  FROM fnd_descriptive_flexs_vl    desc_flex,
       fnd_descr_flex_col_usage_vl col_usage,
       fnd_flex_value_sets         value_set
 WHERE desc_flex.descriptive_flexfield_name = col_usage.descriptive_flexfield_name
   AND value_set.flex_value_set_id = col_usage.flex_value_set_id
   AND desc_flex.descriptive_flexfield_name LIKE 'BATCH_USSGL_TRANSACTION_CODE';

7.查詢系統鎖住的物件,SESSION_ID、物件名稱等

--7
SELECT o.object_name,
       s.machine,
       s.sid,
       s.serial#
  FROM v$locked_object l,
       dba_objects     o,
       v$session       s
 WHERE l.object_id  =  o.object_id
   AND l.session_id = s.sid;

8.根據請求ID,查詢請求當前正在執行的SQL

--8
SELECT sql_text
  FROM v$sqltext_with_newlines
 WHERE hash_value IN (SELECT sql_hash_value
                        FROM v$session
                       WHERE paddr IN (SELECT addr
                                         FROM v$process
                                        WHERE spid = (SELECT b.oracle_process_id
                                                        FROM apps.fnd_concurrent_requests b
                                                       WHERE b.request_id = &req_number)))
 ORDER BY piece;

9.根據SESSION_ID,查詢SESSION正在執行的SQL

SELECT sql_text
  FROM v$sqltext_with_newlines
 WHERE hash_value IN (SELECT sql_hash_value
                        FROM v$session sess
                       WHERE sess.SID = &session_id);