Oracle Discoverer报表权限查询
SELECT * FROM (SELECT CASE
WHEN trunc(SYSDATE) BETWEEN fu.start_date AND
nvl(fu.end_date, trunc(SYSDATE)) THEN
fu.user_name
ELSE
eeu.eu_username
END user_name,
fu.description,
ed.doc_name
FROM eul10.eul5_eul_users eeu,
eul10.eul5_access_privs eap,
eul10.eul5_documents ed,
fnd_user fu
WHERE eap.gd_doc_id = ed.doc_id
AND eap.ap_eu_id = eeu.eu_id
--AND EEU.EU_ROLE_FLAG = 0 --用户
AND to_char(fu.user_id) = substr(eeu.eu_username, 2)
UNION ALL
SELECT CASE
WHEN trunc(SYSDATE) BETWEEN r.start_date AND
nvl(r.end_date, trunc(SYSDATE)) THEN
r.responsibility_name
ELSE
eeu.eu_username
END user_name,
NULL description,
ed.doc_name
FROM eul10.eul5_eul_users eeu,
eul10.eul5_access_privs eap,
eul10.eul5_documents ed,
fnd_responsibility_vl r
WHERE eap.gd_doc_id = ed.doc_id
AND eap.ap_eu_id = eeu.eu_id
--AND EEU.EU_ROLE_FLAG = 1 --职责
AND to_char(r.responsibility_id) =
substr(eeu.eu_username, 2, instr(eeu.eu_username, '#', 1, 2) - 2)
AND to_char(r.application_id) =
substr(eeu.eu_username, instr(eeu.eu_username, '#', 1, 2) + 1))
WHERE doc_name LIKE '%现金流量%'
Oracle Discoverer报表权限查询
http://localhost:8091//archives/oraclediscoverer%E6%8A%A5%E8%A1%A8%E6%9D%83%E9%99%90%E6%9F%A5%E8%AF%A2