菜單、請求組、配置文件與職責的查詢和分配
菜單查詢:
SELECT fm.menu_name 菜單名
,fm.type 菜單類型
,fmev.entry_sequence 序號
,fmev.prompt 顯示名稱
,fmev.description 描述
,fffv.function_name 功能名
,fffv.user_function_name 用戶功能名
FROM fnd_menu_entries_vl fmev
,fnd_form_functions_vl fffv
,fnd_menus fm
WHERE 1 = 1
AND fmev.menu_id = fm.menu_id
AND fffv.function_id(+) = fmev.function_id
AND fm.menu_name LIKE '%gl_inquiry%';
請求組查詢:
SELECT frg.request_group_name 請求組名字
,frg.request_group_code 請求組代碼
,fa1.application_name 請求組應用產品
,frg.description 請求組描述
,frgu.request_unit_type 請求類型
,
--此代碼必然爲P(請求),沒有寫查請求集的方法,後續補充
fcp.user_concurrent_program_name 請求名字
,fa2.application_name 請求應用產品
FROM fnd_request_groups frg
,fnd_request_group_units frgu
,fnd_application_vl fa1
,fnd_application_vl fa2
,fnd_concurrent_programs_vl fcp
WHERE 1 = 1
AND frg.request_group_name LIKE '%%'
--請求組名字,不填查出全部
AND frgu.request_group_id = frg.request_group_id
AND fa1.application_id = frg.application_id
AND fa2.application_id = frgu.application_id
AND frgu.request_unit_id = fcp.concurrent_program_id;
配置文件查詢:
SELECT profile_option_name 配置文件名
,user_profile_option_name 用戶配置文件名
,description 說明
,hierarchy_type 層次結構類型
,site_enabled_flag 地點可見
,site_update_allowed_flag 地點可更新
,app_enabled_flag 應用產品可見
,app_update_allowed_flag 應用產品可更新
,resp_enabled_flag 責任可見
,resp_update_allowed_flag 責任可更新
,server_enabled_flag 服務器可見
,server_update_allowed_flag 服務器可更新
,serverresp_enabled_flag 服務器職責可見
,serverresp_update_allowed_flag 服務器職責可更新
,org_enabled_flag 組織可見
,org_update_allowed_flag 組織可更新
,user_enabled_flag 用戶可見
,user_update_allowed_flag 用戶可更新
,start_date_active 有效起始日期
,end_date_active 有效截止日期
,user_visible_flag 用戶訪問可查看
,user_changeable_flag 用戶訪問可更新
,read_allowed_flag 可讀
,write_allowed_flag 可寫
,sql_validation sql驗證
,profile_option_id 配置文件配置情況id
FROM fnd_profile_options_vl
WHERE profile_option_name LIKE '%%'
菜單、請求組與職責關聯查詢
SELECT frv.responsibility_name 職責名
,frv.responsibility_key 職責代碼
,fa.application_name 應用產品
,fm.menu_name 菜單名
,frg.request_group_name 請求組名
FROM fnd_responsibility_vl frv
,fnd_application_vl fa
,fnd_menus fm
,fnd_request_groups frg
WHERE 1 = 1
AND frg.request_group_id(+) = frv.request_group_id
AND fm.menu_id = frv.menu_id
AND fa.application_id = frv.application_id;
配置文件與職責關聯查詢(不同配置文件需要單獨寫的,否則只能取到value,不能看到對應的值)
SELECT fst.responsibility_name 職責名
,fpo.profile_option_name 配置文件名
,tl.user_profile_option_name 用戶配置文件名
,lv.文件安全性 配置文件層級
,fpv.level_value 配置文件值
,gas.name 配置文件值對應含義
FROM fnd_profile_options fpo
,fnd_profile_option_values fpv
,fnd_profile_options_tl tl
,fnd_responsibility_tl fst
,gl_access_sets gas
,(SELECT 10001 level_id
,'地點' 文件安全性
FROM dual
UNION
SELECT 10002 level_id
,'應用產品' 文件安全性
FROM dual
UNION
SELECT 10003 level_id
,'責任' 文件安全性
FROM dual
UNION
SELECT 10004 level_id
,'用戶' 文件安全性
FROM dual
UNION
SELECT 10005 level_id
,'服務器' 文件安全性
FROM dual
UNION
SELECT 10006 level_id
,'組織' 文件安全性
FROM dual) lv
WHERE 1 = 1
AND fpv.profile_option_id = fpo.profile_option_id
AND tl.language = 'ZHS'
AND tl.profile_option_name = fpo.profile_option_name
AND tl.user_profile_option_name LIKE '%數據訪問權限集%'
AND gas.access_set_id = fpv.profile_option_value --數據訪問權限集ID
AND lv.level_id = fpv.level_id
AND fpv.level_value = fst.responsibility_id
AND fpv.application_id = fst.application_id
AND fst.language = 'ZHS';
職責
SELECT DISTINCT fst.responsibility_name 職責名
FROM fnd_responsibility_tl fst
WHERE 1 = 1
AND fst.language = 'ZHS'
AND fst.responsibility_name LIKE '%%';
用戶和職責
SELECT DISTINCT wur.user_name 用戶名
,fst.responsibility_name 職責名
FROM fnd_responsibility_tl fst
,wf_all_user_roles wur
WHERE 1 = 1
AND fst.language = 'ZHS'
-- AND FST.RESPONSIBILITY_NAME LIKE '%%'
--職責名字範圍
AND fst.responsibility_id = wur.role_orig_system_id
-- AND WUR.USER_NAME IN ('','')
--用戶名範圍
ORDER BY wur.user_name;