SELECT DISTINCT
(SELECT DISTINCT
b.ba_name ||'-->'||o.obj_name bu
from noetix_apps.eul5_objs o
left join noetix_apps.eul5_expressions e on o.obj_id = e.it_obj_id
left join noetix_apps.eul5_elem_xrefs x on e.exp_id = x.ex_to_id
left join noetix_apps.eul5_documents d on d.doc_id = x.ex_from_id
left join noetix_apps.EUL5_ba_obj_links l on l.bol_obj_id = o.obj_id
left join noetix_apps.EUL5_bas b on b.ba_id = l.bol_ba_id
WHERE b.ba_name like '%'
AND UPPER(e.exp_name) like UPPER('%') --folder item
AND UPPER(b.ba_name) like UPPER('%%') --business area
AND UPPER(o.obj_name) like UPPER('%%') --folder
AND UPPER(d.doc_name) = Upper(disco_docs.doc_name)
) "Business Area --> Folder Name"
,disco_docs.doc_name "Discoverer Workbook",
TRUNC (disco_docs.doc_created_date) "Workbook Create Date",
CASE
WHEN INSTR
(disco_docs.doc_created_by,
'#'
) = 0
THEN disco_docs.doc_created_by
WHEN INSTR (disco_docs.doc_created_by, '#') > 0
AND INSTR (disco_docs.doc_created_by, '#', 2) = 0
THEN (SELECT fu.user_name
FROM fnd_user fu
WHERE fu.user_id =
SUBSTR (disco_docs.doc_created_by, 2, 5))
ELSE NULL
END "Workbook Owner/Creator",
(SELECT MAX(QS.QS_CREATED_DATE)
FROM noetix_apps.EUL5_QPP_STATS QS
WHERE qs.QS_DOC_NAME = disco_docs.doc_name) last_used
,(SELECT rtrim (xmlagg (xmlelement (e, (CASE WHEN INSTR(disco_users.eu_username,'#') = 0
THEN disco_users.eu_username
WHEN INSTR (disco_users.eu_username, '#') > 0 AND INSTR (disco_users.eu_username, '#', 2) = 0
THEN (SELECT fu.user_name
FROM fnd_user fu
WHERE fu.user_id =
SUBSTR (disco_users.eu_username, 2, 5))
END ) || ',')).extract ('//text()'), ',') Acces_to_user
FROM noetix_apps.eul5_access_privs disco_shares
,noetix_apps.eul5_eul_users disco_users
WHERE disco_docs.doc_id = disco_shares.gd_doc_id
AND disco_users.eu_username(+) NOT IN ('EUL5', 'PUBLIC')
AND disco_users.eu_id(+) = disco_shares.ap_eu_id
AND (INSTR(disco_users.eu_username,'#') = 0 OR INSTR (disco_users.eu_username, '#') > 0 AND INSTR (disco_users.eu_username, '#', 2) = 0)
) "Access to FND Users"
,(SELECT rtrim (xmlagg (xmlelement (e, (CASE WHEN INSTR(disco_users.eu_username,'#') = 0
THEN NULL
WHEN INSTR (disco_users.eu_username, '#') > 0 AND INSTR (disco_users.eu_username, '#', 2) = 0
THEN NULL
ELSE (SELECT resp.responsibility_name
FROM fnd_responsibility_vl resp
WHERE resp.responsibility_id =
SUBSTR (disco_users.eu_username, 2, 5)
)
END ) || ',')).extract ('//text()'), ',')
FROM noetix_apps.eul5_access_privs disco_shares
,noetix_apps.eul5_eul_users disco_users
WHERE disco_docs.doc_id = disco_shares.gd_doc_id
AND disco_users.eu_username(+) NOT IN ('EUL5', 'PUBLIC')
AND disco_users.eu_id(+) = disco_shares.ap_eu_id
AND not(INSTR(disco_users.eu_username,'#') = 0 OR INSTR (disco_users.eu_username, '#') > 0 AND INSTR (disco_users.eu_username, '#', 2) = 0)
) "Access to Responsibilities"
FROM noetix_apps.eul5_documents disco_docs
,noetix_apps.eul5_access_privs disco_shares
,noetix_apps.eul5_eul_users disco_users
WHERE disco_docs.doc_id = disco_shares.gd_doc_id
AND disco_users.eu_username(+) NOT IN ('EUL5', 'PUBLIC')
AND disco_users.eu_id(+) = disco_shares.ap_eu_id
AND Upper(disco_docs.doc_name) LIKE Upper('%%ECO%FEE%');