-
Notifications
You must be signed in to change notification settings - Fork 60
Expand file tree
/
Copy pathDIS Worksheet SQLs.sql
More file actions
59 lines (58 loc) · 2.31 KB
/
DIS Worksheet SQLs.sql
File metadata and controls
59 lines (58 loc) · 2.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
/*************************************************************************/
/* */
/* (c) 2010-2024 Enginatics GmbH */
/* www.enginatics.com */
/* */
/*************************************************************************/
-- Report Name: DIS Worksheet SQLs
-- Description: Discoverer worksheet SQL queries.
While the workbook documents are stored in a binary format in eul5_documents.doc_document and it's difficult extract their content (<a href="https://community.oracle.com/thread/2494216" rel="nofollow" target="_blank">https://community.oracle.com/thread/2494216</a>), there is an active trigger function
select ef.* from eul_us.eul5_functions ef where ef.fun_name='eul_trigger$post_save_document'
writing each worksheets' SQL query to table ams_discoverer_sql
-- Excel Examle Output: https://www.enginatics.com/example/dis-worksheet-sqls/
-- Library Link: https://www.enginatics.com/reports/dis-worksheet-sqls/
-- Run Report: https://demo.enginatics.com/
select
ads.workbook_name workbook,
ads.worksheet_name Worksheet,
xxen_util.dis_user_name(ads.workbook_owner_name) workbook_owner,
eqs.access_count,
eqs.last_accessed,
xxen_util.dis_worksheet_sql(ads.workbook_owner_name, ads.workbook_name, ads.worksheet_name) worksheet_sql,
xxen_util.user_name(ads.last_updated_by) last_updated_by,
xxen_util.client_time(ads.last_update_date) last_update_date
from
(
select distinct
ads.workbook_owner_name,
ads.workbook_name,
ads.worksheet_name,
max(ads.last_updated_by) over (partition by ads.workbook_owner_name, ads.workbook_name, ads.worksheet_name) last_updated_by,
max(ads.last_update_date) over (partition by ads.workbook_owner_name, ads.workbook_name, ads.worksheet_name) last_update_date
from
ams_discoverer_sql ads
where
1=1
) ads,
(
select
upper(eqs.qs_doc_owner) qs_doc_owner,
eqs.qs_doc_name,
eqs.qs_doc_details,
count(*) access_count,
max(eqs.qs_created_date) last_accessed
from
&eul.eul5_qpp_stats eqs
where
2=2
group by
upper(eqs.qs_doc_owner),
eqs.qs_doc_name,
eqs.qs_doc_details
) eqs
where
3=3 and
ads.workbook_name=eqs.qs_doc_name(+) and
ads.worksheet_name=eqs.qs_doc_details(+)
order by
ads.last_update_date desc