From bde13ea6f64c7b4100cd5c12d60164a17a4fa262 Mon Sep 17 00:00:00 2001 From: Jan Kvetina Date: Mon, 21 Feb 2022 21:20:34 +0100 Subject: [PATCH] Magic to create items on (947) page dynamically --- apex/f770/application/create_application.sql | 4 +- apex/f770/application/pages/page_00000.sql | 19 +- apex/f770/application/pages/page_00945.sql | 135 ++++++-------- apex/f770/application/pages/page_00947.sql | 175 ++++++++++++++++++ .../application_items/t_button_refresh.sql | 21 --- .../application_items/t_button_submit.sql | 21 --- .../logic/application_items/t_page_name.sql | 21 --- .../logic/application_items/t_page_title.sql | 21 --- apex/f770/install.sql | 5 +- packages/app_actions.spec.sql | 16 ++ packages/app_actions.sql | 130 +++++++++++++ 11 files changed, 385 insertions(+), 183 deletions(-) create mode 100644 apex/f770/application/pages/page_00947.sql delete mode 100644 apex/f770/application/shared_components/logic/application_items/t_button_refresh.sql delete mode 100644 apex/f770/application/shared_components/logic/application_items/t_button_submit.sql delete mode 100644 apex/f770/application/shared_components/logic/application_items/t_page_name.sql delete mode 100644 apex/f770/application/shared_components/logic/application_items/t_page_title.sql diff --git a/apex/f770/application/create_application.sql b/apex/f770/application/create_application.sql index 8e77e3e..4b56f13 100644 --- a/apex/f770/application/create_application.sql +++ b/apex/f770/application/create_application.sql @@ -70,7 +70,7 @@ wwv_flow_api.create_flow( ' &CORE_SCHEMA..app.exit_session(); ', 'END;', '')) -,p_runtime_api_usage=>'T:O' +,p_runtime_api_usage=>'T:O:W' ,p_security_scheme=>'MUST_NOT_BE_PUBLIC_USER' ,p_rejoin_existing_sessions=>'N' ,p_csv_encoding=>'Y' @@ -91,7 +91,7 @@ wwv_flow_api.create_flow( ,p_substitution_string_11=>'DEFAULT_LANG' ,p_substitution_value_11=>'EN' ,p_last_updated_by=>'DEV' -,p_last_upd_yyyymmddhh24miss=>'20220216201417' +,p_last_upd_yyyymmddhh24miss=>'20220221195742' ,p_file_prefix => nvl(wwv_flow_application_install.get_static_app_file_prefix,'') ,p_files_version=>64 ,p_ui_type_name => null diff --git a/apex/f770/application/pages/page_00000.sql b/apex/f770/application/pages/page_00000.sql index ac9d1a4..8dfcad5 100644 --- a/apex/f770/application/pages/page_00000.sql +++ b/apex/f770/application/pages/page_00000.sql @@ -20,7 +20,7 @@ wwv_flow_api.create_page( ,p_page_template_options=>'#DEFAULT#' ,p_protection_level=>'D' ,p_last_updated_by=>'DEV' -,p_last_upd_yyyymmddhh24miss=>'20220215062908' +,p_last_upd_yyyymmddhh24miss=>'20220221190224' ); wwv_flow_api.create_page_plug( p_id=>wwv_flow_api.id(16222516003514114) @@ -645,28 +645,13 @@ wwv_flow_api.create_report_columns( ,p_derived_column=>'N' ,p_include_in_export=>'Y' ); -wwv_flow_api.create_page_plug( - p_id=>wwv_flow_api.id(22939890463325303) -,p_plug_name=>'TRANSLATIONS' -,p_region_css_classes=>'HIDDEN' -,p_region_template_options=>'#DEFAULT#' -,p_plug_template=>wwv_flow_api.id(9049155795569902) -,p_plug_display_sequence=>20 -,p_include_in_reg_disp_sel_yn=>'Y' -,p_plug_grid_row_css_classes=>'HIDDEN' -,p_plug_grid_column_css_classes=>'HIDDEN' -,p_plug_display_point=>'REGION_POSITION_05' -,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(23726400898559213) ,p_plug_name=>'NOTIFICATIONS' ,p_region_css_classes=>'HIDDEN' ,p_region_template_options=>'#DEFAULT#' ,p_plug_template=>wwv_flow_api.id(9049155795569902) -,p_plug_display_sequence=>30 +,p_plug_display_sequence=>20 ,p_include_in_reg_disp_sel_yn=>'Y' ,p_plug_grid_row_css_classes=>'HIDDEN' ,p_plug_display_point=>'REGION_POSITION_05' diff --git a/apex/f770/application/pages/page_00945.sql b/apex/f770/application/pages/page_00945.sql index 4d92565..0db91e5 100644 --- a/apex/f770/application/pages/page_00945.sql +++ b/apex/f770/application/pages/page_00945.sql @@ -22,7 +22,7 @@ wwv_flow_api.create_page( ,p_page_template_options=>'#DEFAULT#' ,p_required_role=>wwv_flow_api.id(9823062898204869) ,p_last_updated_by=>'DEV' -,p_last_upd_yyyymmddhh24miss=>'20220220062943' +,p_last_upd_yyyymmddhh24miss=>'20220221195742' ); wwv_flow_api.create_page_plug( p_id=>wwv_flow_api.id(24140000721306134) @@ -59,7 +59,7 @@ wwv_flow_api.create_page_plug( ,p_plug_display_sequence=>10 ,p_plug_display_point=>'BODY' ,p_plug_source=>wwv_flow_string.join(wwv_flow_t_varchar2( -'The idea behind is to extract all important texts from pages (page names, region titles, help text, buttons, column names, field labesl...)
', +'The idea behind is to extract all important texts from pages (page names, region titles, help text, buttons, column names, field labels...)
', 'and create relevant record in translation table and also to create items on relevant pages, so you can just start using these items instead of texts.
', 'The names are based on static_id of the component or on its name.')) ,p_plug_query_options=>'DERIVED_REPORT_COLUMNS' @@ -1382,11 +1382,14 @@ wwv_flow_api.create_ig_report_column( wwv_flow_api.create_ig_report_column( p_id=>wwv_flow_api.id(24894718739542456) ,p_view_id=>wwv_flow_api.id(24893313917542452) -,p_display_seq=>2 +,p_display_seq=>3 ,p_column_id=>wwv_flow_api.id(24855596377704423) ,p_is_visible=>true ,p_is_frozen=>false ,p_width=>360 +,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(24895657408542458) @@ -1448,19 +1451,6 @@ wwv_flow_api.create_page_plug( ,p_attribute_01=>'N' ,p_attribute_02=>'HTML' ); -wwv_flow_api.create_page_plug( - p_id=>wwv_flow_api.id(24357401411954748) -,p_plug_name=>'TRANSLATIONS' -,p_region_template_options=>'#DEFAULT#' -,p_plug_template=>wwv_flow_api.id(9049155795569902) -,p_plug_display_sequence=>20 -,p_include_in_reg_disp_sel_yn=>'Y' -,p_plug_display_point=>'BODY' -,p_plug_query_options=>'DERIVED_REPORT_COLUMNS' -,p_plug_display_condition_type=>'NEVER' -,p_attribute_01=>'N' -,p_attribute_02=>'HTML' -); wwv_flow_api.create_page_button( p_id=>wwv_flow_api.id(22467884641652546) ,p_button_sequence=>10 @@ -1500,6 +1490,18 @@ wwv_flow_api.create_page_button( ,p_button_redirect_url=>'f?p=&APP_ID.:945:&SESSION.::&DEBUG.:945::' ,p_icon_css_classes=>'fa-refresh' ); +wwv_flow_api.create_page_button( + p_id=>wwv_flow_api.id(25346457993653207) +,p_button_sequence=>20 +,p_button_plug_id=>wwv_flow_api.id(45292227752629868) +,p_button_name=>'REBUILD_PAGE_947' +,p_button_action=>'SUBMIT' +,p_button_template_options=>'#DEFAULT#' +,p_button_template_id=>wwv_flow_api.id(9145249029569999) +,p_button_image_alt=>'Rebuild Translations' +,p_button_position=>'RIGHT_OF_TITLE' +,p_button_css_classes=>'&P945_REBUILD_HOT.' +); wwv_flow_api.create_page_item( p_id=>wwv_flow_api.id(22941582140325320) ,p_name=>'P945_USECASE' @@ -1508,66 +1510,6 @@ wwv_flow_api.create_page_item( ,p_display_as=>'NATIVE_HIDDEN' ,p_attribute_01=>'Y' ); -wwv_flow_api.create_page_item( - p_id=>wwv_flow_api.id(24853399277704401) -,p_name=>'T945_REGION_PAGE_ITEMS' -,p_item_sequence=>10 -,p_item_plug_id=>wwv_flow_api.id(24357401411954748) -,p_prompt=>'T945 Region Page Items' -,p_display_as=>'NATIVE_TEXT_FIELD' -,p_cSize=>30 -,p_field_template=>wwv_flow_api.id(9142775823569991) -,p_item_template_options=>'#DEFAULT#' -,p_attribute_01=>'N' -,p_attribute_02=>'N' -,p_attribute_04=>'TEXT' -,p_attribute_05=>'BOTH' -); -wwv_flow_api.create_page_item( - p_id=>wwv_flow_api.id(24853437637704402) -,p_name=>'T945_REGION_MESSAGES' -,p_item_sequence=>20 -,p_item_plug_id=>wwv_flow_api.id(24357401411954748) -,p_prompt=>'T945 Region Messages' -,p_display_as=>'NATIVE_TEXT_FIELD' -,p_cSize=>30 -,p_field_template=>wwv_flow_api.id(9142775823569991) -,p_item_template_options=>'#DEFAULT#' -,p_attribute_01=>'N' -,p_attribute_02=>'N' -,p_attribute_04=>'TEXT' -,p_attribute_05=>'BOTH' -); -wwv_flow_api.create_page_item( - p_id=>wwv_flow_api.id(24853583574704403) -,p_name=>'T945_REGION_EXTRACTS' -,p_item_sequence=>30 -,p_item_plug_id=>wwv_flow_api.id(24357401411954748) -,p_prompt=>'T945 Region Extracts' -,p_display_as=>'NATIVE_TEXT_FIELD' -,p_cSize=>30 -,p_field_template=>wwv_flow_api.id(9142775823569991) -,p_item_template_options=>'#DEFAULT#' -,p_attribute_01=>'N' -,p_attribute_02=>'N' -,p_attribute_04=>'TEXT' -,p_attribute_05=>'BOTH' -); -wwv_flow_api.create_page_item( - p_id=>wwv_flow_api.id(25092560969660514) -,p_name=>'T945_REGION_UNUSED' -,p_item_sequence=>40 -,p_item_plug_id=>wwv_flow_api.id(24357401411954748) -,p_prompt=>'T945 Region Unused' -,p_display_as=>'NATIVE_TEXT_FIELD' -,p_cSize=>30 -,p_field_template=>wwv_flow_api.id(9142775823569991) -,p_item_template_options=>'#DEFAULT#' -,p_attribute_01=>'N' -,p_attribute_02=>'N' -,p_attribute_04=>'TEXT' -,p_attribute_05=>'BOTH' -); wwv_flow_api.create_page_item( p_id=>wwv_flow_api.id(25094815385660537) ,p_name=>'P945_PAGE_ID' @@ -1576,6 +1518,14 @@ wwv_flow_api.create_page_item( ,p_display_as=>'NATIVE_HIDDEN' ,p_attribute_01=>'Y' ); +wwv_flow_api.create_page_item( + p_id=>wwv_flow_api.id(25346732388653210) +,p_name=>'P945_REBUILD_HOT' +,p_item_sequence=>20 +,p_item_plug_id=>wwv_flow_api.id(45292227752629868) +,p_display_as=>'NATIVE_HIDDEN' +,p_attribute_01=>'Y' +); wwv_flow_api.create_page_computation( p_id=>wwv_flow_api.id(22941627257325321) ,p_computation_sequence=>10 @@ -1588,6 +1538,26 @@ wwv_flow_api.create_page_computation( '''and/or page specific translations as '' || app.get_translation_prefix() || ''{page_id}_{name} items on page {page_id}.''')) ,p_security_scheme=>wwv_flow_api.id(9556407311505078) ); +wwv_flow_api.create_page_computation( + p_id=>wwv_flow_api.id(25346867453653211) +,p_computation_sequence=>20 +,p_computation_item=>'P945_REBUILD_HOT' +,p_computation_point=>'BEFORE_BOX_BODY' +,p_computation_type=>'QUERY' +,p_computation=>wwv_flow_string.join(wwv_flow_t_varchar2( +'SELECT ''t-Button--hot'' AS hot', +'FROM translated_items t', +'LEFT JOIN apex_application_items i', +' ON i.application_id = t.app_id', +' AND i.item_name = t.item_name', +'LEFT JOIN apex_application_page_items p', +' ON p.application_id = t.app_id', +' AND p.item_name = t.item_name', +'WHERE t.app_id = app.get_app_id()', +' AND i.item_name IS NULL', +' AND p.item_name IS NULL;', +'')) +); wwv_flow_api.create_page_process( p_id=>wwv_flow_api.id(24925748826543610) ,p_process_sequence=>10 @@ -1640,6 +1610,19 @@ wwv_flow_api.create_page_process( ,p_attribute_06=>'N' ,p_error_display_location=>'INLINE_IN_NOTIFICATION' ); +wwv_flow_api.create_page_process( + p_id=>wwv_flow_api.id(25346663373653209) +,p_process_sequence=>10 +,p_process_point=>'ON_SUBMIT_BEFORE_COMPUTATION' +,p_process_type=>'NATIVE_PLSQL' +,p_process_name=>'REBUILD_PAGE_947' +,p_process_sql_clob=>wwv_flow_string.join(wwv_flow_t_varchar2( +'app_actions.rebuild_page_947();', +'')) +,p_process_clob_language=>'PLSQL' +,p_error_display_location=>'INLINE_IN_NOTIFICATION' +,p_process_when_button_id=>wwv_flow_api.id(25346457993653207) +); wwv_flow_api.component_end; end; / diff --git a/apex/f770/application/pages/page_00947.sql b/apex/f770/application/pages/page_00947.sql new file mode 100644 index 0000000..3303e23 --- /dev/null +++ b/apex/f770/application/pages/page_00947.sql @@ -0,0 +1,175 @@ +prompt --application/pages/page_00947 +begin +-- Manifest +-- PAGE: 00947 +-- Manifest End +wwv_flow_api.component_begin ( + p_version_yyyy_mm_dd=>'2021.04.15' +,p_release=>'21.1.7' +,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=>947 +,p_user_interface_id=>wwv_flow_api.id(9169746885570061) +,p_name=>'TRANSLATIONS' +,p_step_title=>'TRANSLATIONS' +,p_autocomplete_on_off=>'OFF' +,p_group_id=>wwv_flow_api.id(9240371448352386) +,p_page_template_options=>'#DEFAULT#' +,p_last_updated_by=>'ORDS_PLSQL_GATEWAY' +,p_last_upd_yyyymmddhh24miss=>'20220221193745' +); +wwv_flow_api.create_page_plug( + p_id=>wwv_flow_api.id(25409776701925256) +,p_plug_name=>'TRANSLATIONS' +,p_region_template_options=>'#DEFAULT#' +,p_plug_template=>wwv_flow_api.id(9049155795569902) +,p_plug_display_sequence=>10 +,p_include_in_reg_disp_sel_yn=>'Y' +,p_plug_grid_row_css_classes=>'HIDDEN' +,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_item( + p_id=>wwv_flow_api.id(25409847265925256) +,p_name=>'T945_REGION_EXTRACTS' +,p_item_sequence=>10 +,p_item_plug_id=>wwv_flow_api.id(25409776701925256) +,p_prompt=>' ' +,p_display_as=>'NATIVE_TEXT_FIELD' +,p_cSize=>2000 +,p_field_template=>wwv_flow_api.id(9142775823569991) +,p_item_template_options=>'#DEFAULT#' +,p_attribute_01=>'N' +,p_attribute_02=>'N' +,p_attribute_04=>'TEXT' +,p_attribute_05=>'BOTH' +); +wwv_flow_api.create_page_item( + p_id=>wwv_flow_api.id(25409988715925256) +,p_name=>'T945_REGION_MESSAGES' +,p_item_sequence=>20 +,p_item_plug_id=>wwv_flow_api.id(25409776701925256) +,p_prompt=>' ' +,p_display_as=>'NATIVE_TEXT_FIELD' +,p_cSize=>2000 +,p_field_template=>wwv_flow_api.id(9142775823569991) +,p_item_template_options=>'#DEFAULT#' +,p_attribute_01=>'N' +,p_attribute_02=>'N' +,p_attribute_04=>'TEXT' +,p_attribute_05=>'BOTH' +); +wwv_flow_api.create_page_item( + p_id=>wwv_flow_api.id(25410000871925256) +,p_name=>'T945_REGION_PAGE_ITEMS' +,p_item_sequence=>30 +,p_item_plug_id=>wwv_flow_api.id(25409776701925256) +,p_prompt=>' ' +,p_display_as=>'NATIVE_TEXT_FIELD' +,p_cSize=>2000 +,p_field_template=>wwv_flow_api.id(9142775823569991) +,p_item_template_options=>'#DEFAULT#' +,p_attribute_01=>'N' +,p_attribute_02=>'N' +,p_attribute_04=>'TEXT' +,p_attribute_05=>'BOTH' +); +wwv_flow_api.create_page_item( + p_id=>wwv_flow_api.id(25410159518925256) +,p_name=>'T945_REGION_UNUSED' +,p_item_sequence=>40 +,p_item_plug_id=>wwv_flow_api.id(25409776701925256) +,p_prompt=>' ' +,p_display_as=>'NATIVE_TEXT_FIELD' +,p_cSize=>2000 +,p_field_template=>wwv_flow_api.id(9142775823569991) +,p_item_template_options=>'#DEFAULT#' +,p_attribute_01=>'N' +,p_attribute_02=>'N' +,p_attribute_04=>'TEXT' +,p_attribute_05=>'BOTH' +); +wwv_flow_api.create_page_item( + p_id=>wwv_flow_api.id(25410213328925256) +,p_name=>'T_GRID_SAVE' +,p_item_sequence=>50 +,p_item_plug_id=>wwv_flow_api.id(25409776701925256) +,p_prompt=>' ' +,p_display_as=>'NATIVE_TEXT_FIELD' +,p_cSize=>2000 +,p_field_template=>wwv_flow_api.id(9142775823569991) +,p_item_template_options=>'#DEFAULT#' +,p_attribute_01=>'N' +,p_attribute_02=>'N' +,p_attribute_04=>'TEXT' +,p_attribute_05=>'BOTH' +); +wwv_flow_api.create_page_item( + p_id=>wwv_flow_api.id(25410349692925257) +,p_name=>'T_GRID_SUCCESS' +,p_item_sequence=>60 +,p_item_plug_id=>wwv_flow_api.id(25409776701925256) +,p_prompt=>' ' +,p_display_as=>'NATIVE_TEXT_FIELD' +,p_cSize=>2000 +,p_field_template=>wwv_flow_api.id(9142775823569991) +,p_item_template_options=>'#DEFAULT#' +,p_attribute_01=>'N' +,p_attribute_02=>'N' +,p_attribute_04=>'TEXT' +,p_attribute_05=>'BOTH' +); +wwv_flow_api.create_page_item( + p_id=>wwv_flow_api.id(25410431115925257) +,p_name=>'T_PAGE_NAME' +,p_item_sequence=>70 +,p_item_plug_id=>wwv_flow_api.id(25409776701925256) +,p_prompt=>' ' +,p_display_as=>'NATIVE_TEXT_FIELD' +,p_cSize=>2000 +,p_field_template=>wwv_flow_api.id(9142775823569991) +,p_item_template_options=>'#DEFAULT#' +,p_attribute_01=>'N' +,p_attribute_02=>'N' +,p_attribute_04=>'TEXT' +,p_attribute_05=>'BOTH' +); +wwv_flow_api.create_page_item( + p_id=>wwv_flow_api.id(25410566070925257) +,p_name=>'T_PAGE_TITLE' +,p_item_sequence=>80 +,p_item_plug_id=>wwv_flow_api.id(25409776701925256) +,p_prompt=>' ' +,p_display_as=>'NATIVE_TEXT_FIELD' +,p_cSize=>2000 +,p_field_template=>wwv_flow_api.id(9142775823569991) +,p_item_template_options=>'#DEFAULT#' +,p_attribute_01=>'N' +,p_attribute_02=>'N' +,p_attribute_04=>'TEXT' +,p_attribute_05=>'BOTH' +); +wwv_flow_api.create_page_item( + p_id=>wwv_flow_api.id(25410603824925257) +,p_name=>'T_TEST' +,p_item_sequence=>90 +,p_item_plug_id=>wwv_flow_api.id(25409776701925256) +,p_prompt=>' ' +,p_display_as=>'NATIVE_TEXT_FIELD' +,p_cSize=>2000 +,p_field_template=>wwv_flow_api.id(9142775823569991) +,p_item_template_options=>'#DEFAULT#' +,p_attribute_01=>'N' +,p_attribute_02=>'N' +,p_attribute_04=>'TEXT' +,p_attribute_05=>'BOTH' +); +wwv_flow_api.component_end; +end; +/ diff --git a/apex/f770/application/shared_components/logic/application_items/t_button_refresh.sql b/apex/f770/application/shared_components/logic/application_items/t_button_refresh.sql deleted file mode 100644 index fc6f05a..0000000 --- a/apex/f770/application/shared_components/logic/application_items/t_button_refresh.sql +++ /dev/null @@ -1,21 +0,0 @@ -prompt --application/shared_components/logic/application_items/t_button_refresh -begin --- Manifest --- APPLICATION ITEM: T_BUTTON_REFRESH --- Manifest End -wwv_flow_api.component_begin ( - p_version_yyyy_mm_dd=>'2021.04.15' -,p_release=>'21.1.7' -,p_default_workspace_id=>9014660246496943 -,p_default_application_id=>770 -,p_default_id_offset=>0 -,p_default_owner=>'CORE' -); -wwv_flow_api.create_flow_item( - p_id=>wwv_flow_api.id(24851985574747818) -,p_name=>'T_BUTTON_REFRESH' -,p_protection_level=>'I' -); -wwv_flow_api.component_end; -end; -/ diff --git a/apex/f770/application/shared_components/logic/application_items/t_button_submit.sql b/apex/f770/application/shared_components/logic/application_items/t_button_submit.sql deleted file mode 100644 index 6293a62..0000000 --- a/apex/f770/application/shared_components/logic/application_items/t_button_submit.sql +++ /dev/null @@ -1,21 +0,0 @@ -prompt --application/shared_components/logic/application_items/t_button_submit -begin --- Manifest --- APPLICATION ITEM: T_BUTTON_SUBMIT --- Manifest End -wwv_flow_api.component_begin ( - p_version_yyyy_mm_dd=>'2021.04.15' -,p_release=>'21.1.7' -,p_default_workspace_id=>9014660246496943 -,p_default_application_id=>770 -,p_default_id_offset=>0 -,p_default_owner=>'CORE' -); -wwv_flow_api.create_flow_item( - p_id=>wwv_flow_api.id(24851725972746653) -,p_name=>'T_BUTTON_SUBMIT' -,p_protection_level=>'I' -); -wwv_flow_api.component_end; -end; -/ diff --git a/apex/f770/application/shared_components/logic/application_items/t_page_name.sql b/apex/f770/application/shared_components/logic/application_items/t_page_name.sql deleted file mode 100644 index 6a33baf..0000000 --- a/apex/f770/application/shared_components/logic/application_items/t_page_name.sql +++ /dev/null @@ -1,21 +0,0 @@ -prompt --application/shared_components/logic/application_items/t_page_name -begin --- Manifest --- APPLICATION ITEM: T_PAGE_NAME --- Manifest End -wwv_flow_api.component_begin ( - p_version_yyyy_mm_dd=>'2021.04.15' -,p_release=>'21.1.7' -,p_default_workspace_id=>9014660246496943 -,p_default_application_id=>770 -,p_default_id_offset=>0 -,p_default_owner=>'CORE' -); -wwv_flow_api.create_flow_item( - p_id=>wwv_flow_api.id(24852157682748486) -,p_name=>'T_PAGE_NAME' -,p_protection_level=>'I' -); -wwv_flow_api.component_end; -end; -/ diff --git a/apex/f770/application/shared_components/logic/application_items/t_page_title.sql b/apex/f770/application/shared_components/logic/application_items/t_page_title.sql deleted file mode 100644 index 7a75118..0000000 --- a/apex/f770/application/shared_components/logic/application_items/t_page_title.sql +++ /dev/null @@ -1,21 +0,0 @@ -prompt --application/shared_components/logic/application_items/t_page_title -begin --- Manifest --- APPLICATION ITEM: T_PAGE_TITLE --- Manifest End -wwv_flow_api.component_begin ( - p_version_yyyy_mm_dd=>'2021.04.15' -,p_release=>'21.1.7' -,p_default_workspace_id=>9014660246496943 -,p_default_application_id=>770 -,p_default_id_offset=>0 -,p_default_owner=>'CORE' -); -wwv_flow_api.create_flow_item( - p_id=>wwv_flow_api.id(24852375983749298) -,p_name=>'T_PAGE_TITLE' -,p_protection_level=>'I' -); -wwv_flow_api.component_end; -end; -/ diff --git a/apex/f770/install.sql b/apex/f770/install.sql index dc474b5..ed90726 100644 --- a/apex/f770/install.sql +++ b/apex/f770/install.sql @@ -23,10 +23,6 @@ prompt --install @@application/shared_components/logic/application_items/g_tomorrow.sql @@application/shared_components/logic/application_items/g_version.sql @@application/shared_components/logic/application_items/g_yesterday.sql -@@application/shared_components/logic/application_items/t_button_refresh.sql -@@application/shared_components/logic/application_items/t_button_submit.sql -@@application/shared_components/logic/application_items/t_page_name.sql -@@application/shared_components/logic/application_items/t_page_title.sql @@application/shared_components/logic/application_settings.sql @@application/shared_components/navigation/tabs/standard.sql @@application/shared_components/navigation/tabs/parent.sql @@ -137,6 +133,7 @@ prompt --install @@application/pages/page_00925.sql @@application/pages/page_00940.sql @@application/pages/page_00945.sql +@@application/pages/page_00947.sql @@application/pages/page_00950.sql @@application/pages/page_00951.sql @@application/pages/page_00952.sql diff --git a/packages/app_actions.spec.sql b/packages/app_actions.spec.sql index 79a83e6..ab4f0af 100644 --- a/packages/app_actions.spec.sql +++ b/packages/app_actions.spec.sql @@ -97,18 +97,34 @@ CREATE OR REPLACE PACKAGE app_actions AS + -- + -- Compute filters used on page region + -- PROCEDURE init_filters; + -- + -- Compute global items + -- PROCEDURE init_globals; + -- + -- Compute translations for active page + -- PROCEDURE init_translations; + -- + -- Create page with page items from translation table + -- + PROCEDURE rebuild_page_947; + + + diff --git a/packages/app_actions.sql b/packages/app_actions.sql index 12efce1..0a5c43c 100644 --- a/packages/app_actions.sql +++ b/packages/app_actions.sql @@ -342,7 +342,137 @@ CREATE OR REPLACE PACKAGE BODY app_actions AS + PROCEDURE rebuild_page_947 + AS + in_app_id CONSTANT apex_application_pages.application_id%TYPE := app.get_app_id(); + in_page_id CONSTANT apex_application_pages.page_id%TYPE := 947; + in_group_name CONSTANT apex_application_page_groups.page_group_name%TYPE := 'DASHBOARD'; + in_page_name CONSTANT apex_application_pages.page_name%TYPE := 'TRANSLATIONS'; + BEGIN + app.log_module(); + -- get all rows from translation table and create items on page for each of them + FOR c IN ( + SELECT + a.application_id, + a.owner AS p_owner, + a.workspace_id AS p_workspace_id, + a.application_id AS p_application_id, + r.api_compatibility AS p_version, + r.version_no AS p_release, + i.user_interface_id AS p_interface_id, + g.group_id AS p_group_id, + m.template_id AS p_template_id, + f.template_id AS p_field_template, + 0 AS p_region_id + FROM apex_release r + JOIN apex_applications a + ON a.application_id = in_app_id + JOIN apex_appl_user_interfaces i + ON i.application_id = a.application_id + JOIN apex_application_templates m + ON m.application_id = in_app_id + AND m.template_type = 'Region' + AND m.internal_name = 'BLANK_WITH_ATTRIBUTES' + JOIN apex_application_templates f + ON f.application_id = a.application_id + AND f.theme_number = 42 + AND f.internal_name = 'OPTIONAL_FLOATING' + LEFT JOIN apex_application_page_groups g + ON g.application_id = a.application_id + AND g.page_group_name = in_group_name + ) LOOP + -- fake page import + wwv_flow_api.import_begin ( + p_version_yyyy_mm_dd => c.p_version, + p_release => c.p_release, + p_default_workspace_id => c.p_workspace_id, + p_default_application_id => c.application_id, + p_default_id_offset => 0, + p_default_owner => c.p_owner + ); + + -- drop page + wwv_flow_api.remove_page ( + p_flow_id => wwv_flow.g_flow_id, + p_page_id => in_page_id + ); + + -- create page + wwv_flow_api.create_page ( + p_id => in_page_id, + p_user_interface_id => wwv_flow_api.id(c.p_interface_id), + p_name => in_page_name, + p_alias => '', + p_step_title => in_page_name, + p_autocomplete_on_off => 'OFF', + p_group_id => wwv_flow_api.id(c.p_group_id), + p_page_template_options => '#DEFAULT#', + p_last_updated_by => USER, + p_last_upd_yyyymmddhh24miss => TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS') + ); + + -- create region + c.p_region_id := wwv_flow_id.next_val; + -- + wwv_flow_api.create_page_plug( + p_id => wwv_flow_api.id(c.p_region_id), + p_plug_name => in_page_name, + p_region_template_options => '#DEFAULT#', + p_plug_template => wwv_flow_api.id(c.p_template_id), + p_plug_display_sequence => 10, + p_include_in_reg_disp_sel_yn => 'Y', + p_plug_grid_row_css_classes => 'HIDDEN', + p_plug_display_point => 'BODY', + p_plug_query_options => 'DERIVED_REPORT_COLUMNS', + p_attribute_01 => 'N', + p_attribute_02 => 'HTML' + ); + + -- create items + FOR d IN ( + SELECT + t.item_name, + ROW_NUMBER() OVER (ORDER BY t.item_name) * 10 AS display_sequence + FROM translated_items t + LEFT JOIN apex_application_items i + ON i.application_id = t.app_id + AND i.item_name = t.item_name + LEFT JOIN apex_application_page_items p + ON p.application_id = t.app_id + AND p.item_name = t.item_name + WHERE t.app_id = in_app_id + AND i.item_name IS NULL + AND p.item_name IS NULL + GROUP BY t.item_name + ) LOOP + wwv_flow_api.create_page_item ( + p_id => wwv_flow_api.id(wwv_flow_id.next_val), + p_name => d.item_name, + p_item_sequence => d.display_sequence, + p_item_plug_id => wwv_flow_api.id(c.p_region_id), + p_prompt => ' ', + p_display_as => 'NATIVE_TEXT_FIELD', + p_cSize => 2000, + p_field_template => wwv_flow_api.id(c.p_field_template), + p_item_template_options => '#DEFAULT#', + p_attribute_01 => 'N', + p_attribute_02 => 'N', + p_attribute_04 => 'TEXT', + p_attribute_05 => 'BOTH' + ); + END LOOP; + -- + wwv_flow_api.import_end(p_auto_install_sup_obj => nvl(wwv_flow_application_install.get_auto_install_sup_obj, false)); + END LOOP; + -- + app.log_success(); + EXCEPTION + WHEN app.app_exception THEN + RAISE; + WHEN OTHERS THEN + app.raise_error(); + END;