Add hint + improve code
This commit is contained in:
parent
b0dff8a0f6
commit
38778e2e78
@ -1,17 +1,16 @@
|
||||
CREATE OR REPLACE VIEW logs_overview AS
|
||||
WITH x AS (
|
||||
SELECT
|
||||
app.get_app_id() AS app_id,
|
||||
app.get_item('$RECENT_LOG_ID') AS recent_log_id,
|
||||
app.get_item('$FLAG') AS flag,
|
||||
app.get_item('$PAGE_ID') AS page_id,
|
||||
app.get_item('$USER_ID') AS user_id,
|
||||
app.get_item('$SESSION_ID') AS session_id,
|
||||
app.get_item('$MODULE_NAME') AS module_name,
|
||||
app.get_item('$ACTION_NAME') AS action_name,
|
||||
app.get_date_item('G_TODAY') AS today
|
||||
FROM users u
|
||||
WHERE u.user_id = app.get_user_id()
|
||||
SELECT /*+ MATERIALIZE */
|
||||
app.get_app_id() AS app_id,
|
||||
app.get_number_item('$RECENT_LOG_ID') AS recent_log_id,
|
||||
app.get_item('$FLAG') AS flag,
|
||||
app.get_number_item('$PAGE_ID') AS page_id,
|
||||
app.get_item('$USER_ID') AS user_id,
|
||||
app.get_number_item('$SESSION_ID') AS session_id,
|
||||
app.get_item('$MODULE_NAME') AS module_name,
|
||||
app.get_item('$ACTION_NAME') AS action_name,
|
||||
app.get_date_item('G_TODAY') AS today
|
||||
FROM DUAL
|
||||
)
|
||||
SELECT
|
||||
l.log_id,
|
||||
|
||||
@ -1,4 +1,10 @@
|
||||
CREATE OR REPLACE FORCE VIEW logs_tree AS
|
||||
WITH x AS (
|
||||
SELECT /*+ MATERIALIZE */
|
||||
app.get_app_id() AS app_id,
|
||||
app.get_log_tree_id() AS log_id
|
||||
FROM DUAL
|
||||
)
|
||||
SELECT
|
||||
l.log_id,
|
||||
l.log_parent,
|
||||
@ -15,9 +21,10 @@ SELECT
|
||||
l.session_id,
|
||||
l.created_at
|
||||
FROM logs l
|
||||
CROSS JOIN x
|
||||
CONNECT BY l.log_parent = PRIOR l.log_id
|
||||
START WITH l.log_id = app.get_log_tree_id()
|
||||
AND l.app_id IN (app.get_app_id(), 0)
|
||||
START WITH l.log_id = x.log_id
|
||||
AND l.app_id IN (x.app_id, 0)
|
||||
ORDER SIBLINGS BY l.log_id;
|
||||
--
|
||||
COMMENT ON TABLE logs_tree IS '[CORE - DASHBOARD] All messages related to selected tree id (`app.get_log_tree_id()`)';
|
||||
|
||||
@ -1,13 +1,10 @@
|
||||
CREATE OR REPLACE VIEW nav_regions AS
|
||||
WITH x AS (
|
||||
SELECT
|
||||
app.get_item('$PAGE_ID') AS page_id,
|
||||
app.get_item('$AUTH_SCHEME') AS auth_scheme,
|
||||
a.app_id
|
||||
FROM users u
|
||||
JOIN apps a
|
||||
ON a.app_id = app.get_app_id()
|
||||
WHERE u.user_id = app.get_user_id()
|
||||
SELECT /*+ MATERIALIZE */
|
||||
app.get_app_id() AS app_id,
|
||||
app.get_number_item('$PAGE_ID') AS page_id,
|
||||
app.get_item('$AUTH_SCHEME') AS auth_scheme
|
||||
FROM DUAL
|
||||
),
|
||||
c AS (
|
||||
SELECT
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
CREATE OR REPLACE VIEW obj_tables_ref_pages AS
|
||||
WITH x AS (
|
||||
SELECT
|
||||
app.get_app_id() AS app_id,
|
||||
app.get_item('$TABLE_NAME') AS table_name
|
||||
FROM users u
|
||||
WHERE u.user_id = app.get_user_id()
|
||||
SELECT /*+ MATERIALIZE */
|
||||
app.get_app_id() AS app_id,
|
||||
app.get_owner() AS owner_,
|
||||
app.get_item('$TABLE_NAME') AS table_name
|
||||
FROM DUAL
|
||||
)
|
||||
SELECT
|
||||
r.page_id,
|
||||
@ -31,7 +31,7 @@ WHERE r.query_type_code = 'TABLE'
|
||||
SELECT DISTINCT d.name AS view_name
|
||||
FROM user_dependencies d
|
||||
CROSS JOIN x
|
||||
WHERE d.referenced_owner = app.get_owner()
|
||||
WHERE d.referenced_owner = x.owner_
|
||||
AND d.type = 'VIEW'
|
||||
CONNECT BY NOCYCLE d.referenced_name = PRIOR d.name
|
||||
AND d.referenced_type = 'VIEW'
|
||||
|
||||
@ -1,15 +1,24 @@
|
||||
CREATE OR REPLACE VIEW sessions_overview AS
|
||||
WITH s AS (
|
||||
WITH x AS (
|
||||
SELECT /*+ MATERIALIZE */
|
||||
app.get_app_id() AS app_id,
|
||||
app.get_number_item('$SESSION_ID') AS session_id,
|
||||
app.get_item('$USER_ID') AS user_id,
|
||||
app.get_date_item('G_TODAY') AS today
|
||||
FROM DUAL
|
||||
),
|
||||
s AS (
|
||||
SELECT
|
||||
s.*,
|
||||
TRUNC(s.created_at) AS today
|
||||
FROM sessions s
|
||||
WHERE s.app_id = app.get_app_id()
|
||||
AND (s.session_id = app.get_item('$SESSION_ID') OR app.get_item('$SESSION_ID') IS NULL)
|
||||
AND (s.user_id = app.get_item('$USER_ID') OR app.get_item('$USER_ID') IS NULL)
|
||||
JOIN x
|
||||
ON s.app_id = x.app_id
|
||||
AND (s.session_id = x.session_id OR x.session_id IS NULL)
|
||||
AND (s.user_id = x.user_id OR x.user_id IS NULL)
|
||||
--
|
||||
AND s.created_at >= app.get_date_item('G_TODAY')
|
||||
AND s.created_at < app.get_date_item('G_TODAY') + 1
|
||||
AND s.created_at >= x.today
|
||||
AND s.created_at < x.today + 1
|
||||
),
|
||||
l AS (
|
||||
SELECT
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user