From e48829107d301762b6012065b2093544010247c3 Mon Sep 17 00:00:00 2001 From: Jan Kvetina Date: Sun, 9 Jan 2022 18:29:49 +0100 Subject: [PATCH] Filter logs by action_name, module_name --- apex/f770/application/pages/page_00901.sql | 47 +++++++++++++--------- views/logs_overview.sql | 13 +++--- 2 files changed, 37 insertions(+), 23 deletions(-) diff --git a/apex/f770/application/pages/page_00901.sql b/apex/f770/application/pages/page_00901.sql index c42f11f..d16050a 100644 --- a/apex/f770/application/pages/page_00901.sql +++ b/apex/f770/application/pages/page_00901.sql @@ -237,14 +237,15 @@ wwv_flow_api.create_region_column( ,p_source_expression=>'ACTION_NAME' ,p_data_type=>'VARCHAR2' ,p_is_query_only=>false -,p_item_type=>'NATIVE_TEXT_FIELD' +,p_item_type=>'NATIVE_DISPLAY_ONLY' ,p_heading=>'Action Name' ,p_heading_alignment=>'LEFT' ,p_display_sequence=>70 ,p_value_alignment=>'LEFT' -,p_attribute_05=>'BOTH' -,p_is_required=>false -,p_max_length=>32 +,p_attribute_02=>'VALUE' +,p_attribute_05=>'PLAIN' +,p_link_target=>'f?p=&APP_ID.:901:&SESSION.::&DEBUG.::P901_ACTION_NAME:&ACTION_NAME.' +,p_link_text=>'&ACTION_NAME.' ,p_enable_filter=>true ,p_filter_operators=>'C:S:CASE_INSENSITIVE:REGEXP' ,p_filter_is_required=>false @@ -266,14 +267,15 @@ wwv_flow_api.create_region_column( ,p_source_expression=>'MODULE_NAME' ,p_data_type=>'VARCHAR2' ,p_is_query_only=>false -,p_item_type=>'NATIVE_TEXT_FIELD' +,p_item_type=>'NATIVE_DISPLAY_ONLY' ,p_heading=>'Module Name' ,p_heading_alignment=>'LEFT' ,p_display_sequence=>80 ,p_value_alignment=>'LEFT' -,p_attribute_05=>'BOTH' -,p_is_required=>false -,p_max_length=>48 +,p_attribute_02=>'VALUE' +,p_attribute_05=>'PLAIN' +,p_link_target=>'f?p=&APP_ID.:901:&SESSION.::&DEBUG.::P901_MODULE_NAME:&MODULE_NAME.' +,p_link_text=>'&MODULE_NAME.' ,p_enable_filter=>true ,p_filter_operators=>'C:S:CASE_INSENSITIVE:REGEXP' ,p_filter_is_required=>false @@ -1137,14 +1139,6 @@ wwv_flow_api.create_ig_report_column( ,p_is_frozen=>false ,p_width=>95 ); -wwv_flow_api.create_ig_report_column( - p_id=>wwv_flow_api.id(10656671347503386) -,p_view_id=>wwv_flow_api.id(10654317349503375) -,p_display_seq=>3 -,p_column_id=>wwv_flow_api.id(10580463967928831) -,p_is_visible=>true -,p_is_frozen=>false -); wwv_flow_api.component_end; end; / @@ -1157,6 +1151,14 @@ wwv_flow_api.component_begin ( ,p_default_id_offset=>0 ,p_default_owner=>'CORE' ); +wwv_flow_api.create_ig_report_column( + p_id=>wwv_flow_api.id(10656671347503386) +,p_view_id=>wwv_flow_api.id(10654317349503375) +,p_display_seq=>3 +,p_column_id=>wwv_flow_api.id(10580463967928831) +,p_is_visible=>true +,p_is_frozen=>false +); wwv_flow_api.create_ig_report_column( p_id=>wwv_flow_api.id(10657573350503388) ,p_view_id=>wwv_flow_api.id(10654317349503375) @@ -1847,7 +1849,7 @@ wwv_flow_api.create_page_button( wwv_flow_api.create_page_item( p_id=>wwv_flow_api.id(10578593460928812) ,p_name=>'P901_USER_ID' -,p_item_sequence=>160 +,p_item_sequence=>200 ,p_item_plug_id=>wwv_flow_api.id(9263852973429039) ,p_display_as=>'NATIVE_HIDDEN' ,p_attribute_01=>'Y' @@ -1880,7 +1882,7 @@ wwv_flow_api.create_page_item( wwv_flow_api.create_page_item( p_id=>wwv_flow_api.id(10578916820928816) ,p_name=>'P901_SESSION_ID' -,p_item_sequence=>150 +,p_item_sequence=>190 ,p_item_plug_id=>wwv_flow_api.id(9263852973429039) ,p_display_as=>'NATIVE_HIDDEN' ,p_attribute_01=>'Y' @@ -1985,6 +1987,15 @@ wwv_flow_api.create_page_item( ,p_attribute_01=>'N' ,p_attribute_05=>'HTML' ); +wwv_flow_api.create_page_item( + p_id=>wwv_flow_api.id(14219165267378939) +,p_name=>'P901_MODULE_NAME' +,p_item_sequence=>160 +,p_item_plug_id=>wwv_flow_api.id(9263852973429039) +,p_use_cache_before_default=>'NO' +,p_display_as=>'NATIVE_HIDDEN' +,p_attribute_01=>'Y' +); wwv_flow_api.create_page_da_event( p_id=>wwv_flow_api.id(10634979944820464) ,p_name=>'TODAY_CHANGED' diff --git a/views/logs_overview.sql b/views/logs_overview.sql index 3a58c1e..bd1ea01 100644 --- a/views/logs_overview.sql +++ b/views/logs_overview.sql @@ -1,14 +1,15 @@ 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_app_id() AS app_id, - -- - TRUNC(COALESCE(app.get_date_item('$TODAY'), app.get_date_item('G_TODAY'), SYSDATE)) AS today + 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() ) @@ -29,12 +30,14 @@ SELECT l.created_at FROM logs l JOIN x - ON l.created_at >= x.today + ON l.created_at >= x.today AND l.created_at < x.today + 1 AND l.app_id = x.app_id AND l.log_id > NVL(x.recent_log_id, 0) AND l.flag = NVL(x.flag, l.flag) AND l.page_id = NVL(x.page_id, l.page_id) AND l.user_id = NVL(x.user_id, l.user_id) - AND l.session_id = NVL(x.session_id, l.session_id); + AND l.session_id = NVL(x.session_id, l.session_id) + AND (l.module_name = NVL(x.module_name, l.module_name) OR (l.module_name IS NULL AND x.module_name IS NULL)) + AND (l.action_name = NVL(x.action_name, l.action_name) OR (l.action_name IS NULL AND x.action_name IS NULL));