diff --git a/apex/f770/application/pages/page_00955.sql b/apex/f770/application/pages/page_00955.sql new file mode 100644 index 0000000..d35a2b7 --- /dev/null +++ b/apex/f770/application/pages/page_00955.sql @@ -0,0 +1,480 @@ +prompt --application/pages/page_00955 +begin +-- Manifest +-- PAGE: 00955 +-- 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=>955 +,p_user_interface_id=>wwv_flow_api.id(9169746885570061) +,p_name=>'#fa-table-heart Views' +,p_alias=>'VIEWS' +,p_step_title=>'Views' +,p_autocomplete_on_off=>'OFF' +,p_group_id=>wwv_flow_api.id(9240371448352386) +,p_page_template_options=>'#DEFAULT#' +,p_last_updated_by=>'DEV' +,p_last_upd_yyyymmddhh24miss=>'20220110171924' +); +wwv_flow_api.create_page_plug( + p_id=>wwv_flow_api.id(14220162747378949) +,p_plug_name=>'Views' +,p_icon_css_classes=>'fa-table-heart' +,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(14220223287378950) +,p_plug_name=>'Views [GRID]' +,p_region_name=>'VIEWS' +,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_VIEWS' +,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=>'Views [GRID]' +,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(14929333603872302) +,p_name=>'VIEW_NAME' +,p_source_type=>'DB_COLUMN' +,p_source_expression=>'VIEW_NAME' +,p_data_type=>'VARCHAR2' +,p_is_query_only=>false +,p_item_type=>'NATIVE_TEXTAREA' +,p_heading=>'View Name' +,p_heading_alignment=>'LEFT' +,p_display_sequence=>20 +,p_value_alignment=>'LEFT' +,p_attribute_01=>'Y' +,p_attribute_02=>'N' +,p_attribute_03=>'N' +,p_attribute_04=>'BOTH' +,p_is_required=>true +,p_max_length=>128 +,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(14929499065872303) +,p_name=>'REFERENCED_TABLES' +,p_source_type=>'DB_COLUMN' +,p_source_expression=>'REFERENCED_TABLES' +,p_data_type=>'VARCHAR2' +,p_is_query_only=>true +,p_item_type=>'NATIVE_DISPLAY_ONLY' +,p_heading=>'Referenced Tables' +,p_heading_alignment=>'LEFT' +,p_display_sequence=>50 +,p_value_alignment=>'LEFT' +,p_attribute_05=>'HTML' +,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=>true +,p_enable_control_break=>true +,p_enable_hide=>true +,p_is_primary_key=>false +,p_include_in_export=>true +); +wwv_flow_api.create_region_column( + p_id=>wwv_flow_api.id(14929507382872304) +,p_name=>'REFERENCED_VIEWS' +,p_source_type=>'DB_COLUMN' +,p_source_expression=>'REFERENCED_VIEWS' +,p_data_type=>'VARCHAR2' +,p_is_query_only=>true +,p_item_type=>'NATIVE_DISPLAY_ONLY' +,p_heading=>'Referenced Views' +,p_heading_alignment=>'LEFT' +,p_display_sequence=>60 +,p_value_alignment=>'LEFT' +,p_attribute_05=>'HTML' +,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=>true +,p_enable_control_break=>true +,p_enable_hide=>true +,p_is_primary_key=>false +,p_include_in_export=>true +); +wwv_flow_api.create_region_column( + p_id=>wwv_flow_api.id(14929621363872305) +,p_name=>'IS_READONLY' +,p_source_type=>'DB_COLUMN' +,p_source_expression=>'IS_READONLY' +,p_data_type=>'VARCHAR2' +,p_is_query_only=>false +,p_item_type=>'NATIVE_SINGLE_CHECKBOX' +,p_heading=>'Readonly' +,p_heading_alignment=>'CENTER' +,p_display_sequence=>70 +,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_exact_match=>true +,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_region_column( + p_id=>wwv_flow_api.id(14929897471872307) +,p_name=>'LAST_DDL_TIME' +,p_source_type=>'DB_COLUMN' +,p_source_expression=>'LAST_DDL_TIME' +,p_data_type=>'DATE' +,p_is_query_only=>true +,p_item_type=>'NATIVE_DATE_PICKER_JET' +,p_heading=>'Last Ddl Time' +,p_heading_alignment=>'CENTER' +,p_display_sequence=>90 +,p_value_alignment=>'CENTER' +,p_attribute_01=>'N' +,p_attribute_02=>'POPUP' +,p_attribute_03=>'NONE' +,p_attribute_06=>'NONE' +,p_attribute_09=>'N' +,p_attribute_11=>'Y' +,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_include_in_export=>true +); +wwv_flow_api.create_region_column( + p_id=>wwv_flow_api.id(14929952501872308) +,p_name=>'USED_IN_OBJECTS' +,p_source_type=>'DB_COLUMN' +,p_source_expression=>'USED_IN_OBJECTS' +,p_data_type=>'VARCHAR2' +,p_is_query_only=>true +,p_item_type=>'NATIVE_DISPLAY_ONLY' +,p_heading=>'Used In Objects' +,p_heading_alignment=>'LEFT' +,p_display_sequence=>30 +,p_value_alignment=>'LEFT' +,p_attribute_05=>'HTML' +,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=>true +,p_enable_control_break=>true +,p_enable_hide=>true +,p_is_primary_key=>false +,p_include_in_export=>true +); +wwv_flow_api.create_region_column( + p_id=>wwv_flow_api.id(14930051725872309) +,p_name=>'IS_DEFINER' +,p_source_type=>'DB_COLUMN' +,p_source_expression=>'IS_DEFINER' +,p_data_type=>'VARCHAR2' +,p_is_query_only=>true +,p_item_type=>'NATIVE_SINGLE_CHECKBOX' +,p_heading=>'Definer' +,p_heading_alignment=>'CENTER' +,p_display_sequence=>80 +,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_exact_match=>true +,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_include_in_export=>true +); +wwv_flow_api.create_region_column( + p_id=>wwv_flow_api.id(14930167492872310) +,p_name=>'USED_ON_PAGES' +,p_source_type=>'DB_COLUMN' +,p_source_expression=>'USED_ON_PAGES' +,p_data_type=>'VARCHAR2' +,p_is_query_only=>true +,p_item_type=>'NATIVE_DISPLAY_ONLY' +,p_heading=>'Used On Pages' +,p_heading_alignment=>'LEFT' +,p_display_sequence=>40 +,p_value_alignment=>'LEFT' +,p_attribute_05=>'HTML' +,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=>true +,p_enable_control_break=>true +,p_enable_hide=>true +,p_is_primary_key=>false +,p_include_in_export=>true +); +wwv_flow_api.create_region_column( + p_id=>wwv_flow_api.id(14930252402872311) +,p_name=>'VIEW_GROUP' +,p_source_type=>'DB_COLUMN' +,p_source_expression=>'VIEW_GROUP' +,p_data_type=>'VARCHAR2' +,p_is_query_only=>true +,p_item_type=>'NATIVE_DISPLAY_ONLY' +,p_heading=>'View Group' +,p_heading_alignment=>'LEFT' +,p_display_sequence=>10 +,p_value_alignment=>'LEFT' +,p_attribute_02=>'VALUE' +,p_attribute_05=>'PLAIN' +,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 +); +wwv_flow_api.create_interactive_grid( + p_id=>wwv_flow_api.id(14929214006872301) +,p_internal_uid=>14929214006872301 +,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(14934807009877722) +,p_interactive_grid_id=>wwv_flow_api.id(14929214006872301) +,p_static_id=>'149349' +,p_type=>'PRIMARY' +,p_default_view=>'GRID' +,p_rows_per_page=>100 +,p_show_row_number=>false +,p_settings_area_expanded=>false +); +wwv_flow_api.create_ig_report_view( + p_id=>wwv_flow_api.id(14935014538877722) +,p_report_id=>wwv_flow_api.id(14934807009877722) +,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(14935570708877729) +,p_view_id=>wwv_flow_api.id(14935014538877722) +,p_display_seq=>0 +,p_column_id=>wwv_flow_api.id(14929333603872302) +,p_is_visible=>true +,p_is_frozen=>false +,p_width=>300 +,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(14936401793877733) +,p_view_id=>wwv_flow_api.id(14935014538877722) +,p_display_seq=>4 +,p_column_id=>wwv_flow_api.id(14929499065872303) +,p_is_visible=>true +,p_is_frozen=>false +); +wwv_flow_api.create_ig_report_column( + p_id=>wwv_flow_api.id(14937363792877737) +,p_view_id=>wwv_flow_api.id(14935014538877722) +,p_display_seq=>5 +,p_column_id=>wwv_flow_api.id(14929507382872304) +,p_is_visible=>true +,p_is_frozen=>false +); +wwv_flow_api.create_ig_report_column( + p_id=>wwv_flow_api.id(14938205769877740) +,p_view_id=>wwv_flow_api.id(14935014538877722) +,p_display_seq=>6 +,p_column_id=>wwv_flow_api.id(14929621363872305) +,p_is_visible=>true +,p_is_frozen=>false +,p_width=>90 +); +wwv_flow_api.create_ig_report_column( + p_id=>wwv_flow_api.id(14940055040877744) +,p_view_id=>wwv_flow_api.id(14935014538877722) +,p_display_seq=>7 +,p_column_id=>wwv_flow_api.id(14929897471872307) +,p_is_visible=>true +,p_is_frozen=>false +,p_width=>160 +); +wwv_flow_api.create_ig_report_column( + p_id=>wwv_flow_api.id(14955359192006429) +,p_view_id=>wwv_flow_api.id(14935014538877722) +,p_display_seq=>3 +,p_column_id=>wwv_flow_api.id(14929952501872308) +,p_is_visible=>true +,p_is_frozen=>false +); +wwv_flow_api.create_ig_report_column( + p_id=>wwv_flow_api.id(14965446688031898) +,p_view_id=>wwv_flow_api.id(14935014538877722) +,p_display_seq=>6 +,p_column_id=>wwv_flow_api.id(14930051725872309) +,p_is_visible=>true +,p_is_frozen=>false +,p_width=>90 +); +wwv_flow_api.create_ig_report_column( + p_id=>wwv_flow_api.id(14974628174176864) +,p_view_id=>wwv_flow_api.id(14935014538877722) +,p_display_seq=>2 +,p_column_id=>wwv_flow_api.id(14930167492872310) +,p_is_visible=>true +,p_is_frozen=>false +,p_width=>200 +); +wwv_flow_api.create_ig_report_column( + p_id=>wwv_flow_api.id(14984925118294349) +,p_view_id=>wwv_flow_api.id(14935014538877722) +,p_display_seq=>8 +,p_column_id=>wwv_flow_api.id(14930252402872311) +,p_is_visible=>false +,p_is_frozen=>false +,p_break_order=>5 +,p_break_is_enabled=>true +,p_break_sort_direction=>'ASC' +,p_break_sort_nulls=>'LAST' +); +wwv_flow_api.create_page_button( + p_id=>wwv_flow_api.id(15022487988059629) +,p_button_sequence=>10 +,p_button_plug_id=>wwv_flow_api.id(14220162747378949) +,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.:955:&SESSION.::&DEBUG.:955::' +,p_icon_css_classes=>'fa-refresh' +); +wwv_flow_api.component_end; +end; +/ diff --git a/apex/f770/install.sql b/apex/f770/install.sql index 29186af..71e7dc9 100644 --- a/apex/f770/install.sql +++ b/apex/f770/install.sql @@ -127,6 +127,7 @@ prompt --install @@application/pages/page_00950.sql @@application/pages/page_00951.sql @@application/pages/page_00952.sql +@@application/pages/page_00955.sql @@application/pages/page_00970.sql @@application/pages/page_00990.sql @@application/pages/page_09999.sql diff --git a/views/user_obj_views.sql b/views/user_obj_views.sql new file mode 100644 index 0000000..6c2074a --- /dev/null +++ b/views/user_obj_views.sql @@ -0,0 +1,66 @@ +CREATE OR REPLACE VIEW user_obj_views AS +WITH x AS ( + SELECT + app.get_app_id() AS app_id, + app.get_item('$VIEW_NAME') AS view_name + FROM users u + WHERE u.user_id = app.get_user_id() +), +r AS ( + SELECT + d.name AS view_name, + -- + LISTAGG(CASE WHEN d.referenced_type = 'TABLE' THEN d.referenced_name END, ', ') WITHIN GROUP (ORDER BY d.referenced_name) AS referenced_tables, + LISTAGG(CASE WHEN d.referenced_type = 'VIEW' THEN d.referenced_name END, ', ') WITHIN GROUP (ORDER BY d.referenced_name) AS referenced_views + FROM user_dependencies d + CROSS JOIN x + WHERE d.type = 'VIEW' + AND d.name = NVL(x.view_name, d.name) + GROUP BY d.name +), +u AS ( + SELECT + d.referenced_name AS view_name, + LISTAGG(d.name, ', ') WITHIN GROUP (ORDER BY d.name) AS used_in_objects + FROM user_dependencies d + WHERE d.referenced_type = 'VIEW' + GROUP BY d.referenced_name +), +p AS ( + SELECT + r.table_name, + LISTAGG(DISTINCT '' || r.page_id || '', ', ') WITHIN GROUP (ORDER BY r.page_id) AS used_on_pages + --LISTAGG(DISTINCT r.page_id, ', ') WITHIN GROUP (ORDER BY r.page_id) AS used_on_pages + FROM apex_application_page_regions r + JOIN x + ON x.app_id = r.application_id + WHERE r.query_type_code = 'TABLE' + GROUP BY r.table_name +) +SELECT + REGEXP_REPLACE(REGEXP_SUBSTR(v.view_name, '^[^_]+'), '^P\d+$', 'PAGE#') AS view_group, + v.view_name, + -- + u.used_in_objects, + p.used_on_pages, + r.referenced_tables, + r.referenced_views, + -- + NULLIF(v.read_only, 'N') AS is_readonly, + -- + CASE WHEN v.bequeath = 'DEFINER' THEN 'Y' END AS is_definer, + -- + o.last_ddl_time +FROM user_views v +JOIN user_objects o + ON o.object_name = v.view_name + AND o.object_type = 'VIEW' +CROSS JOIN x +LEFT JOIN r + ON r.view_name = v.view_name +LEFT JOIN u + ON u.view_name = v.view_name +LEFT JOIN p + ON p.table_name = v.view_name +WHERE v.view_name = NVL(x.view_name, v.view_name); +