Triggers page

This commit is contained in:
Jan Kvetina 2022-01-09 18:31:01 +01:00
parent 61df374116
commit 8e0e838fe4
3 changed files with 625 additions and 0 deletions

View File

@ -0,0 +1,562 @@
prompt --application/pages/page_00952
begin
-- Manifest
-- PAGE: 00952
-- Manifest End
wwv_flow_api.component_begin (
p_version_yyyy_mm_dd=>'2021.04.15'
,p_release=>'21.1.6'
,p_default_workspace_id=>9014660246496943
,p_default_application_id=>770
,p_default_id_offset=>0
,p_default_owner=>'CORE'
);
wwv_flow_api.create_page(
p_id=>952
,p_user_interface_id=>wwv_flow_api.id(9169746885570061)
,p_name=>'#fa-table-play Triggers'
,p_alias=>'TRIGGERS'
,p_step_title=>'Triggers'
,p_autocomplete_on_off=>'OFF'
,p_group_id=>wwv_flow_api.id(9240371448352386)
,p_step_template=>wwv_flow_api.id(9463753933679086)
,p_page_template_options=>'#DEFAULT#'
,p_required_role=>wwv_flow_api.id(9556407311505078)
,p_last_updated_by=>'DEV'
,p_last_upd_yyyymmddhh24miss=>'20220109171511'
);
wwv_flow_api.create_page_plug(
p_id=>wwv_flow_api.id(14219049972378938)
,p_plug_name=>'Triggers'
,p_icon_css_classes=>'fa-table-play'
,p_region_template_options=>'#DEFAULT#'
,p_plug_template=>wwv_flow_api.id(9070356145569920)
,p_plug_display_sequence=>10
,p_include_in_reg_disp_sel_yn=>'Y'
,p_plug_display_point=>'BODY'
,p_plug_query_options=>'DERIVED_REPORT_COLUMNS'
,p_attribute_01=>'N'
,p_attribute_02=>'HTML'
);
wwv_flow_api.create_page_plug(
p_id=>wwv_flow_api.id(36621748366912731)
,p_plug_name=>'Triggers'
,p_region_name=>'TRIGGERS'
,p_region_template_options=>'#DEFAULT#'
,p_component_template_options=>'#DEFAULT#'
,p_plug_template=>wwv_flow_api.id(9078290074569925)
,p_plug_display_sequence=>20
,p_include_in_reg_disp_sel_yn=>'Y'
,p_plug_display_point=>'BODY'
,p_query_type=>'TABLE'
,p_query_table=>'USER_OBJ_TRIGGERS'
,p_include_rowid_column=>false
,p_plug_source_type=>'NATIVE_IG'
,p_plug_query_options=>'DERIVED_REPORT_COLUMNS'
,p_prn_content_disposition=>'ATTACHMENT'
,p_prn_document_header=>'APEX'
,p_prn_units=>'MILLIMETERS'
,p_prn_paper_size=>'A4'
,p_prn_width=>297
,p_prn_height=>210
,p_prn_orientation=>'HORIZONTAL'
,p_prn_page_header=>'Triggers'
,p_prn_page_header_font_color=>'#000000'
,p_prn_page_header_font_family=>'Helvetica'
,p_prn_page_header_font_weight=>'normal'
,p_prn_page_header_font_size=>'12'
,p_prn_page_footer_font_color=>'#000000'
,p_prn_page_footer_font_family=>'Helvetica'
,p_prn_page_footer_font_weight=>'normal'
,p_prn_page_footer_font_size=>'12'
,p_prn_header_bg_color=>'#EEEEEE'
,p_prn_header_font_color=>'#000000'
,p_prn_header_font_family=>'Helvetica'
,p_prn_header_font_weight=>'bold'
,p_prn_header_font_size=>'10'
,p_prn_body_bg_color=>'#FFFFFF'
,p_prn_body_font_color=>'#000000'
,p_prn_body_font_family=>'Helvetica'
,p_prn_body_font_weight=>'normal'
,p_prn_body_font_size=>'10'
,p_prn_border_width=>.5
,p_prn_page_header_alignment=>'CENTER'
,p_prn_page_footer_alignment=>'CENTER'
,p_prn_border_color=>'#666666'
);
wwv_flow_api.create_region_column(
p_id=>wwv_flow_api.id(36621948513912733)
,p_name=>'TABLE_NAME'
,p_source_type=>'DB_COLUMN'
,p_source_expression=>'TABLE_NAME'
,p_data_type=>'VARCHAR2'
,p_is_query_only=>true
,p_item_type=>'NATIVE_LINK'
,p_heading=>'Table Name'
,p_heading_alignment=>'LEFT'
,p_display_sequence=>10
,p_value_alignment=>'LEFT'
,p_link_target=>'f?p=&APP_ID.:951:&SESSION.::&DEBUG.::P951_TABLE,P951_RESET:&TABLE_NAME.,Y'
,p_link_text=>'&TABLE_NAME.'
,p_enable_filter=>true
,p_filter_operators=>'C:S:CASE_INSENSITIVE:REGEXP'
,p_filter_is_required=>false
,p_filter_text_case=>'MIXED'
,p_filter_lov_type=>'NONE'
,p_use_as_row_header=>false
,p_enable_sort_group=>true
,p_enable_control_break=>true
,p_enable_hide=>true
,p_is_primary_key=>false
,p_include_in_export=>true
,p_escape_on_http_output=>true
);
wwv_flow_api.create_region_column(
p_id=>wwv_flow_api.id(36623318596912746)
,p_name=>'COUNT_INSERTED'
,p_source_type=>'DB_COLUMN'
,p_source_expression=>'COUNT_INSERTED'
,p_data_type=>'NUMBER'
,p_is_query_only=>true
,p_item_type=>'NATIVE_LINK'
,p_heading=>'Inserted'
,p_heading_alignment=>'RIGHT'
,p_display_sequence=>50
,p_value_alignment=>'RIGHT'
,p_link_target=>'f?p=&APP_ID.:901:&SESSION.::&DEBUG.:901:P901_FLAG,P901_MODULE:G,&TRIGGER_NAME.'
,p_link_text=>'&COUNT_INSERTED.'
,p_enable_filter=>true
,p_filter_is_required=>false
,p_filter_lov_type=>'NONE'
,p_use_as_row_header=>false
,p_enable_sort_group=>true
,p_enable_control_break=>true
,p_enable_hide=>true
,p_is_primary_key=>false
,p_include_in_export=>true
,p_escape_on_http_output=>true
);
wwv_flow_api.create_region_column(
p_id=>wwv_flow_api.id(36623435398912747)
,p_name=>'COUNT_UPDATED'
,p_source_type=>'DB_COLUMN'
,p_source_expression=>'COUNT_UPDATED'
,p_data_type=>'NUMBER'
,p_is_query_only=>true
,p_item_type=>'NATIVE_LINK'
,p_heading=>'Updated'
,p_heading_alignment=>'RIGHT'
,p_display_sequence=>60
,p_value_alignment=>'RIGHT'
,p_link_target=>'f?p=&APP_ID.:901:&SESSION.::&DEBUG.:901:P901_FLAG,P901_MODULE:G,&TRIGGER_NAME.'
,p_link_text=>'&COUNT_UPDATED.'
,p_enable_filter=>true
,p_filter_is_required=>false
,p_filter_lov_type=>'NONE'
,p_use_as_row_header=>false
,p_enable_sort_group=>true
,p_enable_control_break=>true
,p_enable_hide=>true
,p_is_primary_key=>false
,p_include_in_export=>true
,p_escape_on_http_output=>true
);
wwv_flow_api.create_region_column(
p_id=>wwv_flow_api.id(36623453734912748)
,p_name=>'COUNT_DELETED'
,p_source_type=>'DB_COLUMN'
,p_source_expression=>'COUNT_DELETED'
,p_data_type=>'NUMBER'
,p_is_query_only=>true
,p_item_type=>'NATIVE_LINK'
,p_heading=>'Deleted'
,p_heading_alignment=>'RIGHT'
,p_display_sequence=>70
,p_value_alignment=>'RIGHT'
,p_link_target=>'f?p=&APP_ID.:901:&SESSION.::&DEBUG.:901:P901_FLAG,P901_MODULE:G,&TRIGGER_NAME.'
,p_link_text=>'&COUNT_DELETED.'
,p_enable_filter=>true
,p_filter_is_required=>false
,p_filter_lov_type=>'NONE'
,p_use_as_row_header=>false
,p_enable_sort_group=>true
,p_enable_control_break=>true
,p_enable_hide=>true
,p_is_primary_key=>false
,p_include_in_export=>true
,p_escape_on_http_output=>true
);
wwv_flow_api.create_region_column(
p_id=>wwv_flow_api.id(36624034241912753)
,p_name=>'COUNT_CALLS'
,p_source_type=>'DB_COLUMN'
,p_source_expression=>'COUNT_CALLS'
,p_data_type=>'NUMBER'
,p_is_query_only=>true
,p_item_type=>'NATIVE_LINK'
,p_heading=>'Calls'
,p_heading_alignment=>'RIGHT'
,p_display_sequence=>40
,p_value_alignment=>'RIGHT'
,p_link_target=>'f?p=&APP_ID.:901:&SESSION.::&DEBUG.:901:P901_FLAG,P901_MODULE_NAME:G,&TRIGGER_NAME.'
,p_link_text=>'&COUNT_CALLS.'
,p_enable_filter=>true
,p_filter_is_required=>false
,p_filter_lov_type=>'NONE'
,p_use_as_row_header=>false
,p_enable_sort_group=>true
,p_enable_control_break=>true
,p_enable_hide=>true
,p_is_primary_key=>false
,p_include_in_export=>true
,p_escape_on_http_output=>true
);
wwv_flow_api.create_region_column(
p_id=>wwv_flow_api.id(36624282196912756)
,p_name=>'TRIGGER_NAME'
,p_source_type=>'DB_COLUMN'
,p_source_expression=>'TRIGGER_NAME'
,p_data_type=>'VARCHAR2'
,p_is_query_only=>true
,p_item_type=>'NATIVE_LINK'
,p_heading=>'Trigger Name'
,p_heading_alignment=>'LEFT'
,p_display_sequence=>20
,p_value_alignment=>'LEFT'
,p_link_target=>'f?p=&APP_ID.:952:&SESSION.::&DEBUG.::P952_TABLE,P952_TRIGGER,P952_RESET:&TABLE_NAME.,&TRIGGER_NAME.,Y'
,p_link_text=>'&TRIGGER_NAME.'
,p_enable_filter=>true
,p_filter_operators=>'C:S:CASE_INSENSITIVE:REGEXP'
,p_filter_is_required=>false
,p_filter_text_case=>'MIXED'
,p_filter_exact_match=>true
,p_filter_lov_type=>'DISTINCT'
,p_use_as_row_header=>false
,p_enable_sort_group=>false
,p_enable_hide=>true
,p_is_primary_key=>false
,p_include_in_export=>false
,p_escape_on_http_output=>true
);
wwv_flow_api.create_region_column(
p_id=>wwv_flow_api.id(40333692543272135)
,p_name=>'IS_VALID'
,p_source_type=>'DB_COLUMN'
,p_source_expression=>'IS_VALID'
,p_data_type=>'VARCHAR2'
,p_is_query_only=>false
,p_item_type=>'NATIVE_SINGLE_CHECKBOX'
,p_heading=>'Valid'
,p_heading_alignment=>'CENTER'
,p_display_sequence=>30
,p_value_alignment=>'CENTER'
,p_attribute_01=>'N'
,p_attribute_02=>'Y'
,p_is_required=>false
,p_enable_filter=>true
,p_filter_operators=>'C:S:CASE_INSENSITIVE:REGEXP'
,p_filter_is_required=>false
,p_filter_text_case=>'MIXED'
,p_filter_lov_type=>'NONE'
,p_use_as_row_header=>false
,p_enable_sort_group=>true
,p_enable_control_break=>true
,p_enable_hide=>true
,p_is_primary_key=>false
,p_duplicate_value=>true
,p_include_in_export=>true
);
wwv_flow_api.create_region_column(
p_id=>wwv_flow_api.id(105338848231262740)
,p_name=>'LAST_DDL_TIME'
,p_source_type=>'DB_COLUMN'
,p_source_expression=>'LAST_DDL_TIME'
,p_data_type=>'DATE'
,p_is_query_only=>false
,p_item_type=>'NATIVE_DATE_PICKER'
,p_heading=>'Last Ddl Time'
,p_heading_alignment=>'CENTER'
,p_display_sequence=>80
,p_value_alignment=>'CENTER'
,p_attribute_04=>'button'
,p_attribute_05=>'N'
,p_attribute_07=>'NONE'
,p_format_mask=>'YYYY-MM-DD HH24:MI'
,p_is_required=>false
,p_enable_filter=>true
,p_filter_is_required=>false
,p_filter_date_ranges=>'ALL'
,p_filter_lov_type=>'DISTINCT'
,p_use_as_row_header=>false
,p_enable_sort_group=>true
,p_enable_control_break=>true
,p_enable_hide=>true
,p_is_primary_key=>false
,p_duplicate_value=>true
,p_include_in_export=>true
);
wwv_flow_api.create_interactive_grid(
p_id=>wwv_flow_api.id(36621907539912732)
,p_internal_uid=>36621907539912732
,p_is_editable=>false
,p_lazy_loading=>false
,p_requires_filter=>false
,p_select_first_row=>false
,p_fixed_row_height=>true
,p_pagination_type=>'SET'
,p_show_total_row_count=>true
,p_show_toolbar=>true
,p_toolbar_buttons=>'SEARCH_COLUMN:SEARCH_FIELD:ACTIONS_MENU:SAVE'
,p_enable_save_public_report=>false
,p_enable_subscriptions=>true
,p_enable_flashback=>true
,p_define_chart_view=>true
,p_enable_download=>true
,p_download_formats=>'CSV:HTML:XLSX:PDF'
,p_enable_mail_download=>true
,p_fixed_header=>'PAGE'
,p_show_icon_view=>false
,p_show_detail_view=>false
,p_javascript_code=>wwv_flow_string.join(wwv_flow_t_varchar2(
'function(config) {',
' return unified_ig_toolbar(config, '''');',
'}',
''))
);
wwv_flow_api.create_ig_report(
p_id=>wwv_flow_api.id(36767443604461534)
,p_interactive_grid_id=>wwv_flow_api.id(36621907539912732)
,p_static_id=>'126235'
,p_type=>'PRIMARY'
,p_default_view=>'GRID'
,p_rows_per_page=>100
,p_show_row_number=>false
,p_settings_area_expanded=>true
);
wwv_flow_api.create_ig_report_view(
p_id=>wwv_flow_api.id(36767680274461535)
,p_report_id=>wwv_flow_api.id(36767443604461534)
,p_view_type=>'GRID'
,p_stretch_columns=>true
,p_srv_exclude_null_values=>false
,p_srv_only_display_columns=>true
,p_edit_mode=>false
);
wwv_flow_api.create_ig_report_column(
p_id=>wwv_flow_api.id(36768200727461543)
,p_view_id=>wwv_flow_api.id(36767680274461535)
,p_display_seq=>0
,p_column_id=>wwv_flow_api.id(36621948513912733)
,p_is_visible=>true
,p_is_frozen=>false
,p_width=>280
,p_sort_order=>1
,p_sort_direction=>'ASC'
,p_sort_nulls=>'LAST'
);
wwv_flow_api.create_ig_report_column(
p_id=>wwv_flow_api.id(36805756179127975)
,p_view_id=>wwv_flow_api.id(36767680274461535)
,p_display_seq=>5
,p_column_id=>wwv_flow_api.id(36623318596912746)
,p_is_visible=>true
,p_is_frozen=>false
,p_width=>90
);
wwv_flow_api.create_ig_report_column(
p_id=>wwv_flow_api.id(36806684942127979)
,p_view_id=>wwv_flow_api.id(36767680274461535)
,p_display_seq=>5
,p_column_id=>wwv_flow_api.id(36623435398912747)
,p_is_visible=>true
,p_is_frozen=>false
,p_width=>90
);
wwv_flow_api.create_ig_report_column(
p_id=>wwv_flow_api.id(36807602194127983)
,p_view_id=>wwv_flow_api.id(36767680274461535)
,p_display_seq=>6
,p_column_id=>wwv_flow_api.id(36623453734912748)
,p_is_visible=>true
,p_is_frozen=>false
,p_width=>90
);
wwv_flow_api.create_ig_report_column(
p_id=>wwv_flow_api.id(36839468239236393)
,p_view_id=>wwv_flow_api.id(36767680274461535)
,p_display_seq=>4
,p_column_id=>wwv_flow_api.id(36624034241912753)
,p_is_visible=>true
,p_is_frozen=>false
,p_width=>90
);
wwv_flow_api.create_ig_report_column(
p_id=>wwv_flow_api.id(36886788512656607)
,p_view_id=>wwv_flow_api.id(36767680274461535)
,p_display_seq=>3
,p_column_id=>wwv_flow_api.id(36624282196912756)
,p_is_visible=>true
,p_is_frozen=>false
,p_width=>280
);
wwv_flow_api.create_ig_report_column(
p_id=>wwv_flow_api.id(40711756021689534)
,p_view_id=>wwv_flow_api.id(36767680274461535)
,p_display_seq=>2
,p_column_id=>wwv_flow_api.id(40333692543272135)
,p_is_visible=>true
,p_is_frozen=>false
,p_width=>90
);
wwv_flow_api.create_ig_report_column(
p_id=>wwv_flow_api.id(107037367019447704)
,p_view_id=>wwv_flow_api.id(36767680274461535)
,p_display_seq=>7
,p_column_id=>wwv_flow_api.id(105338848231262740)
,p_is_visible=>true
,p_is_frozen=>false
,p_width=>160
);
wwv_flow_api.create_page_button(
p_id=>wwv_flow_api.id(14704803987370063)
,p_button_sequence=>10
,p_button_plug_id=>wwv_flow_api.id(14219049972378938)
,p_button_name=>'REFRESH'
,p_button_action=>'REDIRECT_PAGE'
,p_button_template_options=>'#DEFAULT#'
,p_button_template_id=>wwv_flow_api.id(9144574670569995)
,p_button_image_alt=>'Refresh'
,p_button_position=>'RIGHT_OF_TITLE'
,p_button_redirect_url=>'f?p=&APP_ID.:952:&SESSION.::&DEBUG.:952::'
,p_icon_css_classes=>'fa-refresh'
);
wwv_flow_api.create_page_button(
p_id=>wwv_flow_api.id(14705282313370064)
,p_button_sequence=>20
,p_button_plug_id=>wwv_flow_api.id(14219049972378938)
,p_button_name=>'ENABLE'
,p_button_action=>'REDIRECT_PAGE'
,p_button_template_options=>'#DEFAULT#'
,p_button_template_id=>wwv_flow_api.id(9145249029569999)
,p_button_image_alt=>'Enable'
,p_button_position=>'RIGHT_OF_TITLE'
,p_button_redirect_url=>'f?p=&APP_ID.:952:&SESSION.::&DEBUG.:952:P952_TABLE,P952_TRIGGER,P952_ENABLE:&P952_TABLE.,&P952_TRIGGER.,Y'
,p_button_condition=>'P952_STATUS'
,p_button_condition2=>'DISABLED'
,p_button_condition_type=>'VAL_OF_ITEM_IN_COND_EQ_COND2'
);
wwv_flow_api.create_page_button(
p_id=>wwv_flow_api.id(14705686053370064)
,p_button_sequence=>30
,p_button_plug_id=>wwv_flow_api.id(14219049972378938)
,p_button_name=>'DISABLE'
,p_button_action=>'REDIRECT_PAGE'
,p_button_template_options=>'#DEFAULT#'
,p_button_template_id=>wwv_flow_api.id(9145249029569999)
,p_button_image_alt=>'Disable'
,p_button_position=>'RIGHT_OF_TITLE'
,p_button_redirect_url=>'f?p=&APP_ID.:952:&SESSION.::&DEBUG.:952:P952_TABLE,P952_TRIGGER,P952_DISABLE:&P952_TABLE.,&P952_TRIGGER.,Y'
,p_button_condition=>'P952_STATUS'
,p_button_condition2=>'ENABLED'
,p_button_condition_type=>'VAL_OF_ITEM_IN_COND_EQ_COND2'
);
wwv_flow_api.create_page_item(
p_id=>wwv_flow_api.id(14706493594370069)
,p_name=>'P952_TABLE_NAME'
,p_item_sequence=>10
,p_item_plug_id=>wwv_flow_api.id(14219049972378938)
,p_display_as=>'NATIVE_HIDDEN'
,p_attribute_01=>'Y'
);
wwv_flow_api.create_page_item(
p_id=>wwv_flow_api.id(14706824988370069)
,p_name=>'P952_TRIGGER_NAME'
,p_item_sequence=>20
,p_item_plug_id=>wwv_flow_api.id(14219049972378938)
,p_display_as=>'NATIVE_HIDDEN'
,p_attribute_01=>'Y'
);
wwv_flow_api.create_page_item(
p_id=>wwv_flow_api.id(14707249572370070)
,p_name=>'P952_STATUS'
,p_item_sequence=>30
,p_item_plug_id=>wwv_flow_api.id(14219049972378938)
,p_use_cache_before_default=>'NO'
,p_display_as=>'NATIVE_HIDDEN'
,p_attribute_01=>'Y'
);
wwv_flow_api.create_page_item(
p_id=>wwv_flow_api.id(14707663997370070)
,p_name=>'P952_ENABLE'
,p_item_sequence=>40
,p_item_plug_id=>wwv_flow_api.id(14219049972378938)
,p_use_cache_before_default=>'NO'
,p_display_as=>'NATIVE_HIDDEN'
,p_is_persistent=>'N'
,p_attribute_01=>'Y'
);
wwv_flow_api.create_page_item(
p_id=>wwv_flow_api.id(14708084082370070)
,p_name=>'P952_DISABLE'
,p_item_sequence=>50
,p_item_plug_id=>wwv_flow_api.id(14219049972378938)
,p_use_cache_before_default=>'NO'
,p_display_as=>'NATIVE_HIDDEN'
,p_is_persistent=>'N'
,p_attribute_01=>'Y'
);
wwv_flow_api.create_page_process(
p_id=>wwv_flow_api.id(14708878614370076)
,p_process_sequence=>10
,p_process_point=>'AFTER_HEADER'
,p_process_type=>'NATIVE_PLSQL'
,p_process_name=>'ENABLE_TRIGGER'
,p_process_sql_clob=>wwv_flow_string.join(wwv_flow_t_varchar2(
'app.log_action(''ENABLE_TRIGGER'', app.get_item(''$TRIGGER''));',
'--',
'EXECUTE IMMEDIATE',
' ''ALTER TRIGGER '' || app.get_item(''$TRIGGER'') || '' ENABLE'';',
''))
,p_process_clob_language=>'PLSQL'
,p_error_display_location=>'INLINE_IN_NOTIFICATION'
,p_process_when=>'P952_ENABLE'
,p_process_when_type=>'ITEM_IS_NOT_NULL'
);
wwv_flow_api.create_page_process(
p_id=>wwv_flow_api.id(14709218652370077)
,p_process_sequence=>20
,p_process_point=>'AFTER_HEADER'
,p_process_type=>'NATIVE_PLSQL'
,p_process_name=>'DISABLE_TRIGGER'
,p_process_sql_clob=>wwv_flow_string.join(wwv_flow_t_varchar2(
'app.log_action(''DISABLE_TRIGGER'', app.get_item(''$TRIGGER''));',
'--',
'EXECUTE IMMEDIATE',
' ''ALTER TRIGGER '' || app.get_item(''$TRIGGER'') || '' DISABLE'';',
''))
,p_process_clob_language=>'PLSQL'
,p_error_display_location=>'INLINE_IN_NOTIFICATION'
,p_process_when=>'P952_DISABLE'
,p_process_when_type=>'ITEM_IS_NOT_NULL'
);
wwv_flow_api.create_page_process(
p_id=>wwv_flow_api.id(14708444881370076)
,p_process_sequence=>30
,p_process_point=>'AFTER_HEADER'
,p_process_type=>'NATIVE_PLSQL'
,p_process_name=>'GET_STATUS'
,p_process_sql_clob=>wwv_flow_string.join(wwv_flow_t_varchar2(
'FOR c IN (',
' SELECT t.status',
' FROM user_triggers t',
' WHERE t.trigger_name = app.get_item(''$TRIGGER'')',
') LOOP',
' app.set_item(''$STATUS'', c.status);',
'END LOOP;',
''))
,p_process_clob_language=>'PLSQL'
,p_error_display_location=>'INLINE_IN_NOTIFICATION'
);
wwv_flow_api.component_end;
end;
/

View File

@ -126,6 +126,7 @@ prompt --install
@@application/pages/page_00940.sql
@@application/pages/page_00950.sql
@@application/pages/page_00951.sql
@@application/pages/page_00952.sql
@@application/pages/page_00970.sql
@@application/pages/page_00990.sql
@@application/pages/page_09999.sql

View File

@ -0,0 +1,62 @@
CREATE OR REPLACE VIEW user_obj_triggers AS
WITH x AS (
SELECT
app.get_app_id() AS app_id,
app.get_item('$TABLE_NAME') AS table_name,
app.get_item('$TRIGGER_NAME') AS trigger_name,
app.get_date_item('G_TODAY') AS today
FROM users u
WHERE u.user_id = app.get_user_id()
),
r AS (
SELECT /* materialize */
l.action_name AS table_name,
COUNT(l.log_id) AS count_calls,
SUM(TO_NUMBER(REGEXP_SUBSTR(l.arguments, '"inserted":"?(\d+)', 1, 1, NULL, 1))) AS count_inserted,
SUM(TO_NUMBER(REGEXP_SUBSTR(l.arguments, '"updated":"?(\d+)', 1, 1, NULL, 1))) AS count_updated,
SUM(TO_NUMBER(REGEXP_SUBSTR(l.arguments, '"deleted":"?(\d+)', 1, 1, NULL, 1))) AS count_deleted
FROM x
JOIN logs l
ON l.created_at >= x.today
AND l.created_at < x.today + 1
AND l.app_id = x.app_id
AND l.flag = 'G'
AND l.action_name = NVL(x.table_name, l.action_name)
GROUP BY l.action_name
)
SELECT
t.table_name,
g.trigger_name,
--
CASE
WHEN g.trigger_name = t.table_name || '__' -- default trigger name
AND g.trigger_type = 'COMPOUND'
AND g.triggering_event = 'INSERT OR UPDATE OR DELETE'
AND g.before_statement = 'YES'
AND g.before_row = 'YES'
AND g.after_row = 'YES'
AND g.after_statement = 'YES'
AND g.status = 'ENABLED'
THEN 'Y'
END AS is_valid,
--
r.count_calls,
r.count_inserted,
r.count_updated,
r.count_deleted,
--
o.last_ddl_time
FROM user_tables t
CROSS JOIN x
LEFT JOIN user_triggers g
ON g.table_name = t.table_name
LEFT JOIN user_objects o
ON o.object_name = g.trigger_name
LEFT JOIN user_mviews v
ON v.mview_name = t.table_name
LEFT JOIN r
ON r.table_name = g.table_name
WHERE t.table_name = NVL(x.table_name, t.table_name)
AND t.table_name NOT LIKE '%\_%$' ESCAPE '\'
AND v.mview_name IS NULL;