diff --git a/src/00/027c66aaa6591edfa9bb6b42f39e45dd.smim.xml b/src/00/027c66aaa6591edfa9bb6b42f39e45dd.smim.xml deleted file mode 100644 index bb4a2851..00000000 --- a/src/00/027c66aaa6591edfa9bb6b42f39e45dd.smim.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - /SAP/PUBLIC/BC/ABAP/mime_demo/z2ui5_demo_error.mp3 - M_APP_L - - - diff --git a/src/00/027c66aaa6591edfa9bb6b42f39e45dd.smim.z2ui5_demo_error.mp3 b/src/00/027c66aaa6591edfa9bb6b42f39e45dd.smim.z2ui5_demo_error.mp3 deleted file mode 100644 index a629c440..00000000 Binary files a/src/00/027c66aaa6591edfa9bb6b42f39e45dd.smim.z2ui5_demo_error.mp3 and /dev/null differ diff --git a/src/00/027c66aaa6591edfa9bb6fac299145df.smim.xml b/src/00/027c66aaa6591edfa9bb6fac299145df.smim.xml deleted file mode 100644 index 0667b774..00000000 --- a/src/00/027c66aaa6591edfa9bb6fac299145df.smim.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - /SAP/PUBLIC/BC/ABAP/mime_demo/z2ui5_demo_success.mp3 - M_APP_L - - - diff --git a/src/00/027c66aaa6591edfa9bb6fac299145df.smim.z2ui5_demo_success.mp3 b/src/00/027c66aaa6591edfa9bb6fac299145df.smim.z2ui5_demo_success.mp3 deleted file mode 100644 index 71d80c70..00000000 Binary files a/src/00/027c66aaa6591edfa9bb6fac299145df.smim.z2ui5_demo_success.mp3 and /dev/null differ diff --git a/src/00/2fcf7ab2324262be149833ade507a2ht.sush.xml b/src/00/2fcf7ab2324262be149833ade507a2ht.sush.xml deleted file mode 100644 index 3f0750e0..00000000 --- a/src/00/2fcf7ab2324262be149833ade507a2ht.sush.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - 2FCF7AB2324262BE149833ADE507A2 - HT - R3TR SAPC Z2UI5_SAMPLE - - - - 2FCF7AB2324262BE149833ADE507A2 - HT - S_START - X - - - - - S_START - Start Authorization Check for TADIR Objects - AAAB - X - BC-SEC-AUT-CHK - Check - Check - No - 3 - Okay - @08@ - - - - - diff --git a/src/00/package.devc.xml b/src/00/package.devc.xml deleted file mode 100644 index 555ecc08..00000000 --- a/src/00/package.devc.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - on-premise only - - - - diff --git a/src/00/z2ui5_cl_demo_app_s_01.clas.abap b/src/00/z2ui5_cl_demo_app_s_01.clas.abap deleted file mode 100644 index fffad603..00000000 --- a/src/00/z2ui5_cl_demo_app_s_01.clas.abap +++ /dev/null @@ -1,167 +0,0 @@ -CLASS z2ui5_cl_demo_app_s_01 DEFINITION - PUBLIC - CREATE PUBLIC . - - PUBLIC SECTION. - - INTERFACES z2ui5_if_app . - - DATA lock_counter TYPE i READ-ONLY . - DATA session_is_stateful TYPE abap_bool READ-ONLY . - DATA session_text TYPE string READ-ONLY . - DATA lock_text TYPE string READ-ONLY . - DATA: - BEGIN OF error READ-ONLY, - text TYPE string, - flag TYPE abap_bool, - END OF error. - - PROTECTED SECTION. - PRIVATE SECTION. - - METHODS initialize_view - IMPORTING - client TYPE REF TO z2ui5_if_client. - - METHODS on_event - IMPORTING - client TYPE REF TO z2ui5_if_client. - - METHODS set_session_stateful - IMPORTING - client TYPE REF TO z2ui5_if_client - stateful TYPE abap_bool. - - METHODS update_lock_counter. - -ENDCLASS. - - - -CLASS z2ui5_cl_demo_app_s_01 IMPLEMENTATION. - - METHOD initialize_view. - set_session_stateful( client = client - stateful = abap_true ). - - DATA(view) = z2ui5_cl_xml_view=>factory( ). - - DATA(page) = view->shell( )->page( - title = `abap2UI5 - Sample: Sticky Session with locks - (ABAP Standard Only)` - navbuttonpress = client->_event( 'BACK' ) - shownavbutton = client->check_app_prev_stack( ) ). - - page->message_strip( - text = client->_bind( error-text ) - type = 'Error' - visible = client->_bind( error-flag ) ). - - DATA(vbox) = page->vbox( ). - - DATA(hbox) = vbox->hbox( alignitems = 'Center' ). - - hbox->info_label( text = client->_bind( session_text ) ). - - hbox->button( - text = 'End session' - press = client->_event( 'END_SESSION' ) ). - - hbox->button( - text = 'Start session again' - press = client->_event( 'START_SESSION' ) ). - - hbox = vbox->hbox( alignitems = 'Center' ). - hbox->label( text = 'press button to create lock entry (SM12) in backend session' - class = 'sapUiTinyMarginEnd' ). - hbox->button( - text = 'Lock' - press = client->_event( 'LOCK' ) - type = 'Emphasized' ). - - hbox = vbox->hbox( ). - - hbox->button( - text = 'Refresh lock counter' - press = client->_event( 'REFRESH' ) ). - - hbox->button( - text = 'Rollback Work' - press = client->_event( 'ROLLBACK' ) ). - - vbox->hbox( )->info_label( client->_bind( lock_text ) ). - - client->view_display( view->stringify( ) ). - ENDMETHOD. - - - METHOD on_event. - CASE client->get( )-event. - WHEN 'BACK'. - set_session_stateful( client = client - stateful = abap_false ). - client->nav_app_leave( ). - WHEN 'LOCK'. - lcl_locking=>acquire_lock( ). - client->message_toast_display( `Lock acquired. Press 'Refresh lock counter'` ). - client->view_model_update( ). - WHEN 'END_SESSION'. - set_session_stateful( client = client - stateful = abap_false ). - WHEN 'START_SESSION'. - set_session_stateful( client = client - stateful = abap_true ). - WHEN 'REFRESH'. - update_lock_counter( ). - client->view_model_update( ). - WHEN 'ROLLBACK'. - ROLLBACK WORK. - client->message_toast_display( |ROLLBACK WORK done, { lock_counter } locks released. Press 'Refresh lock counter'| ). - ENDCASE. - ENDMETHOD. - - - METHOD set_session_stateful. - client->set_session_stateful( stateful ). - session_is_stateful = stateful. - IF stateful = abap_true. - session_text = 'Session ON (stateful)'. - ELSE. - session_text = 'Session OFF (stateless)'. - ENDIF. - client->view_model_update( ). - ENDMETHOD. - - - METHOD z2ui5_if_app~main. - TRY. - - CLEAR error. - - IF client->check_on_init( ). - update_lock_counter( ). - initialize_view( client ). - ENDIF. - - TRY. - on_event( client ). - CATCH z2ui5_cx_util_error INTO DATA(x_error). - error-text = x_error->get_text( ). - error-flag = abap_true. - client->view_model_update( ). - ENDTRY. - - CATCH cx_root INTO DATA(lx). - client->message_box_display( lx->get_text( ) ). - ENDTRY. - ENDMETHOD. - - - METHOD update_lock_counter. - - lock_counter = lcl_locking=>get_lock_counter( ). - lock_text = |There are { lock_counter } SM12 locks|. - - ENDMETHOD. - -ENDCLASS. - diff --git a/src/00/z2ui5_cl_demo_app_s_01.clas.locals_imp.abap b/src/00/z2ui5_cl_demo_app_s_01.clas.locals_imp.abap deleted file mode 100644 index 66a75f6d..00000000 --- a/src/00/z2ui5_cl_demo_app_s_01.clas.locals_imp.abap +++ /dev/null @@ -1,87 +0,0 @@ -CLASS lcl_locking DEFINITION CREATE PRIVATE FINAL. - PUBLIC SECTION. - - TYPES: - BEGIN OF ty_seqg3, - gname TYPE c LENGTH 30, " Elementary Lock of Lock Entry (Table Name) - garg TYPE c LENGTH 150, " Argument String (=Key Fields) of Lock Entry - gmode TYPE c LENGTH 1, " Lock Mode (Shared/Exclusive) of a Lock Entry - gusr TYPE c LENGTH 58, " Lock Owner, ID of Logical Unit of Work (LUW) - gusrvb TYPE c LENGTH 58, " Lock Owner, ID of Logical Unit of Work (LUW) / Update Task - guse TYPE int4, " Cumulative Counter for Lock Entry / Dialog - gusevb TYPE int4, " Cumulative Counter for Lock Entry / Update Task - gobj TYPE c LENGTH 16, " Name of Lock Object in the Lock Entry - gclient TYPE c LENGTH 3, " Client in the lock entry - guname TYPE c LENGTH 12, " User name in lock entry - gtarg TYPE c LENGTH 50, " Argument String of Lock Entry (Table Key Fields) - gtcode TYPE c LENGTH 20, " Transaction Code in the Lock Entry - gbcktype TYPE c LENGTH 1, " Backup flag for lock entry - gthost TYPE c LENGTH 32, " Host Name in the Lock Owner ID - gtwp TYPE n LENGTH 2, " Work Process Number in Lock Owner ID - gtsysnr TYPE n LENGTH 2, " SAP System Number in Lock Owner ID - gtdate TYPE d, " Date within lock owner ID - gttime TYPE t, " Time in Lock Owner ID - gtusec TYPE n LENGTH 6, " Time/Microseconds Share in Lock Owner ID - gtmark TYPE c LENGTH 1, " Selection Indicator of Lock Entry - gusetxt TYPE n LENGTH 10, " Cumulative Counter for Lock Entry - gusevbt TYPE n LENGTH 10, " Cumulative Counter for Lock Entry / Update Task - END OF ty_seqg3. - - CLASS-METHODS acquire_lock. - - CLASS-METHODS get_lock_counter - RETURNING - VALUE(result) TYPE i. - - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - -CLASS lcl_locking IMPLEMENTATION. - - METHOD acquire_lock. - - DATA(lv_fm) = 'ENQUEUE_E_TABLE'. - CALL FUNCTION lv_fm - EXPORTING - tabname = 'ZTEST' - varkey = 'Z100' - EXCEPTIONS - foreign_lock = 1 - system_failure = 2 - OTHERS = 3. - IF sy-subrc <> 0. - MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4 INTO DATA(error_text). - RAISE EXCEPTION TYPE z2ui5_cx_util_error EXPORTING val = error_text. - ENDIF. - - ENDMETHOD. - - - METHOD get_lock_counter. - DATA enqueue_table TYPE STANDARD TABLE OF ty_seqg3. - - DATA argument TYPE c LENGTH 150. - argument = |ZTEST Z100*|. - - DATA(lv_fm) = 'ENQUEUE_READ'. - CALL FUNCTION lv_fm - EXPORTING - garg = argument - guname = sy-uname - TABLES - enq = enqueue_table - EXCEPTIONS - communication_failure = 1 - system_failure = 2 - OTHERS = 3. - IF sy-subrc <> 0. - MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4 INTO DATA(error_text). - RAISE EXCEPTION TYPE z2ui5_cx_util_error EXPORTING val = error_text. - ENDIF. - - result = VALUE #( enqueue_table[ 1 ]-gusevb OPTIONAL ). - - ENDMETHOD. - -ENDCLASS. diff --git a/src/00/z2ui5_cl_demo_app_s_01.clas.xml b/src/00/z2ui5_cl_demo_app_s_01.clas.xml deleted file mode 100644 index a0f11c53..00000000 --- a/src/00/z2ui5_cl_demo_app_s_01.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_DEMO_APP_S_01 - E - Sticky session with locking - 1 - X - X - X - - - - diff --git a/src/00/z2ui5_cl_demo_app_s_02.clas.abap b/src/00/z2ui5_cl_demo_app_s_02.clas.abap deleted file mode 100644 index a3468fee..00000000 --- a/src/00/z2ui5_cl_demo_app_s_02.clas.abap +++ /dev/null @@ -1,107 +0,0 @@ -CLASS z2ui5_cl_demo_app_s_02 DEFINITION - PUBLIC - CREATE PUBLIC. - - PUBLIC SECTION. - INTERFACES z2ui5_if_app. - DATA instance_counter TYPE i READ-ONLY. - DATA session_is_stateful TYPE abap_bool READ-ONLY. - DATA session_text TYPE string READ-ONLY. - - PROTECTED SECTION. - PRIVATE SECTION. - - METHODS initialize_view - IMPORTING - client TYPE REF TO z2ui5_if_client. - - METHODS on_event - IMPORTING - client TYPE REF TO z2ui5_if_client. - - METHODS set_session_stateful - IMPORTING - client TYPE REF TO z2ui5_if_client - stateful TYPE abap_bool. - -ENDCLASS. - -CLASS z2ui5_cl_demo_app_s_02 IMPLEMENTATION. - - METHOD z2ui5_if_app~main. - TRY. - - IF client->check_on_init( ). - initialize_view( client ). - ENDIF. - - on_event( client ). - - CATCH cx_root INTO DATA(lx). - client->message_box_display( lx->get_text( ) ). - ENDTRY. - ENDMETHOD. - - METHOD initialize_view. - set_session_stateful( client = client - stateful = abap_true ). - - DATA(view) = z2ui5_cl_xml_view=>factory( ). - - DATA(page) = view->shell( )->page( - title = `abap2UI5 - Sample: Sticky Session` - navbuttonpress = client->_event( 'BACK' ) - shownavbutton = client->check_app_prev_stack( ) ). - - DATA(vbox) = page->vbox( ). - vbox->info_label( text = client->_bind( session_text ) ). - - DATA(hbox) = vbox->hbox( alignitems = 'Center' ). - hbox->label( text = 'press button to increment counter in backend session' - class = 'sapUiTinyMarginEnd' ). - hbox->button( - text = client->_bind( instance_counter ) - press = client->_event( 'INCREMENT' ) - type = 'Emphasized' ). - - hbox = vbox->hbox( ). - hbox->button( - text = 'End session' - press = client->_event( 'END_SESSION' ) ). - - hbox->button( - text = 'Start session again' - press = client->_event( 'START_SESSION' ) ). - - client->view_display( view->stringify( ) ). - ENDMETHOD. - - METHOD on_event. - CASE client->get( )-event. - WHEN 'BACK'. - set_session_stateful( client = client - stateful = abap_false ). - client->nav_app_leave( ). - WHEN 'INCREMENT'. - instance_counter = lcl_static_container=>increment( ). - client->view_model_update( ). - WHEN 'END_SESSION'. - set_session_stateful( client = client - stateful = abap_false ). - WHEN 'START_SESSION'. - set_session_stateful( client = client - stateful = abap_true ). - ENDCASE. - ENDMETHOD. - - METHOD set_session_stateful. - client->set_session_stateful( stateful ). - session_is_stateful = stateful. - IF stateful = abap_true. - session_text = 'Session ON (stateful)'. - ELSE. - session_text = 'Session OFF (stateless)'. - ENDIF. - client->view_model_update( ). - ENDMETHOD. -ENDCLASS. diff --git a/src/00/z2ui5_cl_demo_app_s_02.clas.locals_imp.abap b/src/00/z2ui5_cl_demo_app_s_02.clas.locals_imp.abap deleted file mode 100644 index ba8345e0..00000000 --- a/src/00/z2ui5_cl_demo_app_s_02.clas.locals_imp.abap +++ /dev/null @@ -1,16 +0,0 @@ -CLASS lcl_static_container DEFINITION CREATE PRIVATE FINAL. - PUBLIC SECTION. - CLASS-DATA counter TYPE i READ-ONLY. - CLASS-METHODS increment - RETURNING - VALUE(result) TYPE i. - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - -CLASS lcl_static_container IMPLEMENTATION. - METHOD increment. - counter = counter + 1. - result = counter. - ENDMETHOD. -ENDCLASS. diff --git a/src/00/z2ui5_cl_demo_app_s_02.clas.xml b/src/00/z2ui5_cl_demo_app_s_02.clas.xml deleted file mode 100644 index 619d2a37..00000000 --- a/src/00/z2ui5_cl_demo_app_s_02.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_DEMO_APP_S_02 - E - stateful session - 1 - X - X - X - - - - diff --git a/src/00/z2ui5_cl_demo_app_s_03.clas.abap b/src/00/z2ui5_cl_demo_app_s_03.clas.abap deleted file mode 100644 index 02cb1e06..00000000 --- a/src/00/z2ui5_cl_demo_app_s_03.clas.abap +++ /dev/null @@ -1,101 +0,0 @@ -CLASS z2ui5_cl_demo_app_s_03 DEFINITION - PUBLIC - FINAL - CREATE PUBLIC . - - PUBLIC SECTION. - - INTERFACES z2ui5_if_app. - DATA magic_key TYPE string. - DATA: BEGIN OF message, - text TYPE string VALUE IS INITIAL, - type TYPE string VALUE 'None', - END OF message. - PROTECTED SECTION. - PRIVATE SECTION. - - DATA client TYPE REF TO z2ui5_if_client. - METHODS view_display. - METHODS on_event. - -ENDCLASS. - - -CLASS z2ui5_cl_demo_app_s_03 IMPLEMENTATION. - - METHOD z2ui5_if_app~main. - - me->client = client. - - IF client->check_on_init( ). - view_display( ). - ENDIF. - - on_event( ). - - ENDMETHOD. - - - METHOD view_display. - - DATA(view) = z2ui5_cl_xml_view=>factory( ). - - SELECT - SINGLE FROM icfservloc - FIELDS icfactive - WHERE icf_name = 'MIME_DEMO' - INTO @DATA(icfactive). - - " Note, these are demo sounds and are part of the abap2UI5 sample repo. - " They are NOT meant to use in production. - view->_generic( name = `script` - ns = `html` )->_cc_plain_xml( - |function playSuccess() \{ new Audio("/SAP/PUBLIC/BC/ABAP/mime_demo/z2ui5_demo_success.mp3").play(); \}| - && |function playError() \{ new Audio("/SAP/PUBLIC/BC/ABAP/mime_demo/z2ui5_demo_error.mp3").play(); \}| ). - - DATA(vbox) = view->page( title = `Play success and error sounds` )->vbox( class = `sapUiSmallMargin` ). - - IF icfactive = abap_false. - vbox->message_strip( - text = `ICF Service '/SAP/PUBLIC/BC/ABAP/mime_demo' is not active. Sounds will not play. Please activate the ICF service first.` - type = `Warning` - visible = abap_true ). - ENDIF. - - vbox->message_strip( - text = client->_bind( message-text ) - type = client->_bind( message-type ) - visible = `{= !!$` && client->_bind( message-text ) && ` }` ). - vbox->text( text = `The magic key is: abap2UI5` ). - vbox->input( id = `inputApp` - value = client->_bind_edit( magic_key ) - placeholder = `Enter magic key` - submit = client->_event( 'enter' ) ). - vbox->button( text = `submit` - type = `accept` - press = client->_event( 'enter' ) ). - - view->_z2ui5( )->focus( focusid = `inputApp` ). - client->view_display( view->stringify( ) ). - ENDMETHOD. - - - METHOD on_event. - - IF client->get( )-event = 'enter'. - IF magic_key = `abap2UI5`. - client->follow_up_action( val = `playSuccess()` ). - message-type = 'Success'. - message-text = 'Hooray!'. - ELSE. - client->follow_up_action( val = `playError()` ). - message-type = 'Error'. - message-text = `That wasn't the magic key`. - ENDIF. - CLEAR magic_key. - client->view_model_update( ). - ENDIF. - - ENDMETHOD. - -ENDCLASS. diff --git a/src/00/z2ui5_cl_demo_app_s_03.clas.xml b/src/00/z2ui5_cl_demo_app_s_03.clas.xml deleted file mode 100644 index 31337d2e..00000000 --- a/src/00/z2ui5_cl_demo_app_s_03.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_DEMO_APP_S_03 - E - Play Sound - 1 - X - X - X - - - - diff --git a/src/00/z2ui5_cl_demo_app_s_04.clas.abap b/src/00/z2ui5_cl_demo_app_s_04.clas.abap deleted file mode 100644 index 9473b48a..00000000 --- a/src/00/z2ui5_cl_demo_app_s_04.clas.abap +++ /dev/null @@ -1,96 +0,0 @@ -CLASS z2ui5_cl_demo_app_s_04 DEFINITION PUBLIC CREATE PUBLIC. - - PUBLIC SECTION. - INTERFACES z2ui5_if_app. - - DATA unit TYPE meins. - DATA numc TYPE z2ui5_numc12. - DATA numc_out TYPE c LENGTH 12. - - - PROTECTED SECTION. - DATA client TYPE REF TO z2ui5_if_client. - - METHODS z2ui5_set_data. - - METHODS display_view - IMPORTING - !client TYPE REF TO z2ui5_if_client. - - METHODS on_event - IMPORTING - !client TYPE REF TO z2ui5_if_client. - - PRIVATE SECTION. -ENDCLASS. - - -CLASS z2ui5_cl_demo_app_s_04 IMPLEMENTATION. - - METHOD z2ui5_if_app~main. - - me->client = client. - - IF client->check_on_init( ). - display_view( client ). - z2ui5_set_data( ). - ENDIF. - - on_event( client ). - - ENDMETHOD. - - METHOD display_view. - - DATA(view) = z2ui5_cl_xml_view=>factory( ). - - client->view_display( val = view->shell( - )->page( title = 'abap2UI5 - Conversion Exit' - navbuttonpress = client->_event_nav_app_leave( ) - shownavbutton = client->check_app_prev_stack( ) - )->simple_form( title = 'Form Title' - editable = abap_true - )->content( 'form' - )->title( 'Conversion' - )->label( 'Numeric' - )->input( value = client->_bind_edit( numc_out ) - enabled = abap_false - )->label( `Unit` - )->input( value = client->_bind_edit( unit ) - enabled = abap_false - )->stringify( ) ). - - ENDMETHOD. - - METHOD on_event. - ENDMETHOD. - - METHOD z2ui5_set_data. - - unit = 'ST'. " internal ST -> external PC (if logged in in english) - numc = 10. " internal 0000000010 -> external 10 - - TRY. - CALL FUNCTION `CONVERSION_EXIT_CUNIT_OUTPUT` - EXPORTING - input = unit - IMPORTING - output = unit - EXCEPTIONS - OTHERS = 99. - -* numc = |{ numc ALPHA = OUT }|. - CALL FUNCTION `CONVERSION_EXIT_ALPHA_OUTPUT` - EXPORTING - input = numc - IMPORTING - output = numc_out - EXCEPTIONS - OTHERS = 99. - - CATCH cx_root. - ENDTRY. - - ENDMETHOD. - -ENDCLASS. diff --git a/src/00/z2ui5_cl_demo_app_s_04.clas.xml b/src/00/z2ui5_cl_demo_app_s_04.clas.xml deleted file mode 100644 index b54f517f..00000000 --- a/src/00/z2ui5_cl_demo_app_s_04.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_DEMO_APP_S_04 - E - Conversion Exits - 1 - X - X - X - - - - diff --git a/src/00/z2ui5_cl_demo_app_s_05.clas.abap b/src/00/z2ui5_cl_demo_app_s_05.clas.abap deleted file mode 100644 index 7c131099..00000000 --- a/src/00/z2ui5_cl_demo_app_s_05.clas.abap +++ /dev/null @@ -1,195 +0,0 @@ -CLASS z2ui5_cl_demo_app_s_05 DEFINITION PUBLIC. - - PUBLIC SECTION. - - TYPES: - BEGIN OF t_news, - text TYPE string, - author TYPE string, - END OF t_news, - tt_news TYPE STANDARD TABLE OF t_news - WITH NON-UNIQUE DEFAULT KEY. - - INTERFACES z2ui5_if_app. - DATA news_input TYPE string. - DATA author_input TYPE string. - DATA news_list TYPE tt_news. - DATA connections TYPE int8. - - PROTECTED SECTION. - DATA client TYPE REF TO z2ui5_if_client. - - METHODS z2ui5_on_event. - METHODS z2ui5_on_render. - METHODS z2ui5_display_popover. - - PRIVATE SECTION. - -ENDCLASS. - - -CLASS z2ui5_cl_demo_app_s_05 IMPLEMENTATION. - - METHOD z2ui5_if_app~main. - - me->client = client. - - IF me->z2ui5_if_app~check_initialized = abap_false. - connections = z2ui5_cl_demo_app_s_05_ws=>get_active_connections( ). - ENDIF. - - IF client->get( )-event IS NOT INITIAL. - z2ui5_on_event( ). - client->view_model_update( ). - RETURN. - ENDIF. - - z2ui5_on_render( ). - - ENDMETHOD. - - - METHOD z2ui5_on_event. - DATA: news TYPE t_news. - - CASE client->get( )-event. - WHEN `CLEAR`. - - CLEAR: news_list. - WHEN 'CLICK_HINT_ICON'. - - z2ui5_display_popover( ). - - ENDCASE. - - ENDMETHOD. - - - METHOD z2ui5_on_render. - - SELECT - SINGLE FROM icfservloc - FIELDS icfactive - WHERE icf_name = 'Z2UI5_SAMPLE' - INTO @DATA(icfactive). - - DATA(view) = z2ui5_cl_xml_view=>factory( ). - DATA(page) = view->shell( - )->page( - title = 'abap2UI5 - Sample: News Feed over WebSocket' - navbuttonpress = client->_event_nav_app_leave( ) - shownavbutton = client->check_app_prev_stack( ) ). - - page->header_content( - )->button( id = `button_hint_id` - icon = `sap-icon://hint` - tooltip = `Sample information` - press = client->_event( 'CLICK_HINT_ICON' ) ). - - IF icfactive = abap_false. - page->message_strip( - text = `ICF Service '/sap/bc/apc/sap/z2ui5_sample' is not active. WebSocket communication will not work. Please activate the ICF Service in transaction SICF.` - type = `Warning` - visible = abap_true ). - ENDIF. - - DATA(form) = page->simple_form( editable = abap_true - title = `Publish news` - class = `sapUiTinyMarginBottom` - )->content( `form` ). - - form->feed_input( - value = client->_bind_edit( news_input ) - post = client->_event_client( - val = `Z2UI5` - t_arg = VALUE #( ( `feedInputPost` ) ) - ) ). - - form->label( text = `Author` - )->input( value = client->_bind_edit( author_input ) - placeholder = `Anonymous` ). - - page->list( - headertext = `News` - items = client->_bind_edit( news_list ) - )->feed_list_item( - sender = `{AUTHOR}` - text = `{TEXT}` - showicon = abap_false ). - - DATA(footer) = page->footer( )->overflow_toolbar( ). - footer->info_label( - text = client->_bind_edit( connections ) - colorscheme = `7` - icon = `sap-icon://connected` ). - - footer->toolbar_spacer( )->button( - text = `Clear` - icon = `sap-icon://clear-all` - press = client->_event( `CLEAR` ) ). - - IF me->z2ui5_if_app~check_initialized = abap_false. - view->_generic( name = `script` - ns = `html` - )->_cc_plain_xml( - `(()=>{ ` && - ` const ws_url = (window.location.origin + '/sap/bc/apc/sap/z2ui5_sample').replace('http','ws');` && - ` try { ` && - ` ws = new WebSocket(ws_url);` && - ` } catch (err) {` && - ` alert(err);` && - ` }` && - ` ws.onopen = ()=>{};` && - ` ws.onmessage = (msg)=>{` && - ` const model = z2ui5.oController.oView.getModel();` && - ` const data = model.getData();` && - ` if (msg.data === '` && z2ui5_cl_demo_app_s_05_ws=>c_msg-__new_connection__ && `') {` && - ` data.XX.CONNECTIONS += 1;` && - ` } else if (msg.data === '` && z2ui5_cl_demo_app_s_05_ws=>c_msg-__closed__ && `') {` && - ` data.XX.CONNECTIONS -= 1;` && - ` } else {` && - ` data.XX.NEWS_LIST.push(JSON.parse(msg.data));` && - ` }` && - ` model.setData(data);` && - ` };` && - ` ws.onclose = (msg)=>{};` && - `})()` ). - - view->_generic( name = `script` - ns = `html` - )->_cc_plain_xml( - `z2ui5.feedInputPost = () => { ` && - ` const model = z2ui5.oView.getModel();` && - ` const data = model.getData();` && - ` ws.send(JSON.stringify({ ` && - ` TEXT : data.XX.NEWS_INPUT,` && - ` AUTHOR : data.XX.AUTHOR_INPUT ` && - ` }));` && - ` setTimeout( () => { ` && - ` data.XX.NEWS_INPUT = "";` && - ` model.setData(data);` && - ` }, 10 ); ` && - `}` ). - ENDIF. - - client->view_display( view->stringify( ) ). - - ENDMETHOD. - - - METHOD z2ui5_display_popover. - - DATA(view) = z2ui5_cl_xml_view=>factory_popup( ). - view->quick_view( placement = `Bottom` - width = `auto` - )->quick_view_page( pageid = `sampleInformationId` - header = `Sample information` - description = `This sample show how to consume APC-Messages over websocket. Open the app mutliple times and post something.` ). - - client->popover_display( - xml = view->stringify( ) - by_id = `button_hint_id` ). - - ENDMETHOD. - -ENDCLASS. diff --git a/src/00/z2ui5_cl_demo_app_s_05.clas.xml b/src/00/z2ui5_cl_demo_app_s_05.clas.xml deleted file mode 100644 index 25a51505..00000000 --- a/src/00/z2ui5_cl_demo_app_s_05.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_DEMO_APP_S_05 - E - News Feed over Websocket - 1 - X - X - X - - - - diff --git a/src/00/z2ui5_cl_demo_app_s_05_ws.clas.abap b/src/00/z2ui5_cl_demo_app_s_05_ws.clas.abap deleted file mode 100644 index 289c0556..00000000 --- a/src/00/z2ui5_cl_demo_app_s_05_ws.clas.abap +++ /dev/null @@ -1,107 +0,0 @@ -CLASS z2ui5_cl_demo_app_s_05_ws DEFINITION PUBLIC - INHERITING FROM cl_apc_wsp_ext_stateless_base. - - PUBLIC SECTION. - - CLASS-METHODS: get_active_connections - RETURNING - VALUE(result) TYPE i. - - METHODS: - if_apc_wsp_extension~on_message REDEFINITION, - if_apc_wsp_extension~on_start REDEFINITION, - if_apc_wsp_extension~on_close REDEFINITION. - - CONSTANTS: - c_amc_application_id TYPE amc_application_id VALUE 'Z2UI5_SAMPLE' ##NO_TEXT, - c_channel_id TYPE amc_channel_id VALUE '/news_feed' ##NO_TEXT, - BEGIN OF c_msg, - __new_connection__ TYPE string VALUE `__NEW_CONNECTION__` ##NO_TEXT, - __closed__ TYPE string VALUE `__CLOSED__` ##NO_TEXT, - END OF c_msg. - - PRIVATE SECTION. - - CLASS-METHODS: - get_producer - RETURNING - VALUE(producer) TYPE REF TO if_amc_message_producer_text - RAISING - cx_amc_error, - send - IMPORTING - i_message TYPE string - RAISING - cx_amc_error. - -ENDCLASS. - - -CLASS z2ui5_cl_demo_app_s_05_ws IMPLEMENTATION. - - METHOD get_producer. - - producer ?= cl_amc_channel_manager=>create_message_producer( i_application_id = c_amc_application_id - i_channel_id = c_channel_id ). - - ENDMETHOD. - - - METHOD if_apc_wsp_extension~on_message. - - TRY. - send( i_message->get_text( ) ). - CATCH cx_root INTO DATA(error). - RAISE SHORTDUMP error. - ENDTRY. - - ENDMETHOD. - - - METHOD if_apc_wsp_extension~on_start. - - TRY. - - i_context->get_binding_manager( - )->bind_amc_message_consumer( i_application_id = c_amc_application_id - i_channel_id = c_channel_id ). - - get_producer( )->send( c_msg-__new_connection__ ). - - CATCH cx_root INTO DATA(error). - RAISE SHORTDUMP error. - ENDTRY. - - ENDMETHOD. - - - METHOD if_apc_wsp_extension~on_close. - - TRY. - get_producer( )->send( c_msg-__closed__ ). - - CATCH cx_root INTO DATA(error). - RAISE SHORTDUMP error. - ENDTRY. - - ENDMETHOD. - - - METHOD get_active_connections. - - SELECT - FROM amc_receiver2 - FIELDS COUNT( * ) - WHERE channel_id = @( to_lower( |{ c_amc_application_id }{ c_channel_id }| ) ) - INTO @result. - - ENDMETHOD. - - - METHOD send. - - get_producer( )->send( i_message ). - - ENDMETHOD. - -ENDCLASS. diff --git a/src/00/z2ui5_cl_demo_app_s_05_ws.clas.xml b/src/00/z2ui5_cl_demo_app_s_05_ws.clas.xml deleted file mode 100644 index 88a8a13d..00000000 --- a/src/00/z2ui5_cl_demo_app_s_05_ws.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_DEMO_APP_S_05_WS - E - Generated APC WebSocket protocol impementation class - 1 - X - X - X - - - - diff --git a/src/00/z2ui5_cl_demo_app_s_06.clas.abap b/src/00/z2ui5_cl_demo_app_s_06.clas.abap deleted file mode 100644 index 676ce975..00000000 --- a/src/00/z2ui5_cl_demo_app_s_06.clas.abap +++ /dev/null @@ -1,19 +0,0 @@ -CLASS z2ui5_cl_demo_app_s_06 DEFINITION - PUBLIC - CREATE PUBLIC . - - PUBLIC SECTION. - INTERFACES z2ui5_if_app. - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - - - -CLASS z2ui5_cl_demo_app_s_06 IMPLEMENTATION. - - METHOD z2ui5_if_app~main. - client->nav_app_call( NEW zcl_2ui5_start( ) ). - ENDMETHOD. - -ENDCLASS. diff --git a/src/00/z2ui5_cl_demo_app_s_06.clas.locals_imp.abap b/src/00/z2ui5_cl_demo_app_s_06.clas.locals_imp.abap deleted file mode 100644 index cf319a71..00000000 --- a/src/00/z2ui5_cl_demo_app_s_06.clas.locals_imp.abap +++ /dev/null @@ -1,152 +0,0 @@ -CLASS zcl_2ui5_start DEFINITION DEFERRED. -CLASS zcl_2ui5_lock DEFINITION DEFERRED. - -CLASS zcl_2ui5_start DEFINITION INHERITING FROM z2ui5_cl_demo_app_s_06. - PUBLIC SECTION. - DATA text TYPE string VALUE 'call booking mask'. - METHODS z2ui5_if_app~main REDEFINITION. - PROTECTED SECTION. - PRIVATE SECTION. -ENDCLASS. - -CLASS zcl_2ui5_lock DEFINITION INHERITING FROM z2ui5_cl_demo_app_s_06. - PUBLIC SECTION. - DATA varkey TYPE char120. - METHODS z2ui5_if_app~main REDEFINITION. - PROTECTED SECTION. - PRIVATE SECTION. - METHODS initialize_view - IMPORTING - client TYPE REF TO z2ui5_if_client. - METHODS set_session_stateful - IMPORTING - client TYPE REF TO z2ui5_if_client - stateful TYPE abap_bool. -ENDCLASS. - -CLASS zcl_2ui5_start IMPLEMENTATION. - METHOD z2ui5_if_app~main. - TRY. - IF client->check_on_init( ) OR client->check_on_navigated( ).. - DATA(view) = z2ui5_cl_xml_view=>factory( ). - DATA(page) = view->shell( )->page( - `Startview` ). - page->simple_form( - )->content( 'form' - )->button( - text = client->_bind_edit( text ) - width = '20%' - press = client->_event( 'CALL_BOOKING_MASK' ) ). - client->view_display( view->stringify( ) ). - client->set_app_state_active( ). - RETURN. - ENDIF. - " IF client->check_on_navigated( ). - " client->view_model_update( ). - " RETURN. - " ENDIF. - CASE client->get( )-event. - WHEN `CALL_BOOKING_MASK`. - DATA: lf_key TYPE n LENGTH 4. - DATA(lr_2ui5_lock) = NEW zcl_2ui5_lock( ). - lr_2ui5_lock->varkey = '0001'. - client->nav_app_call( lr_2ui5_lock ). - WHEN `BACK`. - client->nav_app_leave( ). - ENDCASE. - client->view_model_update( ). - CATCH cx_root INTO DATA(lx). - client->message_box_display( lx ). - ENDTRY. - ENDMETHOD. -ENDCLASS. - -CLASS zcl_2ui5_lock IMPLEMENTATION. - - METHOD initialize_view. - DATA(view) = z2ui5_cl_xml_view=>factory( ). - DATA(page) = view->shell( )->page( - title = `Stateful Application with lock` - navbuttonpress = client->_event( 'BACK' ) - shownavbutton = client->check_app_prev_stack( ) ). - DATA(vbox) = page->vbox( ). - DATA(hbox) = vbox->hbox( alignitems = 'Center' ). - hbox->title( - 'Current Lock Value in Table ZTEST' ). - hbox->input( - editable = abap_false - value = client->_bind_edit( varkey ) ). - hbox->button( - text = 'Next Lock View' - press = client->_event( 'NEXT_LOCK' ) ). - client->view_display( view->stringify( ) ). - ENDMETHOD. - - METHOD set_session_stateful. - client->set_session_stateful( stateful ). - client->view_model_update( ). - ENDMETHOD. - - - METHOD z2ui5_if_app~main. - TRY. - IF client->check_on_init( ). - set_session_stateful( client = client - stateful = abap_true ). - DATA(lv_fm) = 'ENQUEUE_E_TABLE'. - CALL FUNCTION lv_fm - EXPORTING - tabname = 'ZTEST' - varkey = varkey - EXCEPTIONS - foreign_lock = 1 - system_failure = 2 - OTHERS = 3. - IF sy-subrc <> 0. - DATA(lo_prev_stack_app) = client->get_app( client->get( )-s_draft-id_prev_app_stack ). - set_session_stateful( client = client - stateful = abap_false ). - client->nav_app_leave( lo_prev_stack_app ). - ELSE. - initialize_view( client ). - ENDIF. - RETURN. - ENDIF. - IF client->check_on_navigated( ). - set_session_stateful( client = client - stateful = abap_false ). - TRY. - DATA(lo_prev_z2ui5_start) = CAST zcl_2ui5_start( client->get_app( client->get( )-s_draft-id_prev_app_stack ) ). - client->nav_app_leave( lo_prev_z2ui5_start ). - RETURN. - CATCH cx_sy_move_cast_error ##NO_HANDLER ##CATCH_ALL. - ENDTRY. - TRY. - DATA(lo_prev_z2ui5_lock) = CAST zcl_2ui5_lock( client->get_app( client->get( )-s_draft-id_prev_app_stack ) ). - client->nav_app_leave( lo_prev_z2ui5_lock ). - RETURN. - CATCH cx_sy_move_cast_error ##NO_HANDLER ##CATCH_ALL. - ENDTRY. - ENDIF. - CASE client->get( )-event. - WHEN `NEXT_LOCK`. - set_session_stateful( client = client - stateful = abap_false ). - DATA(lo_2ui5_lock) = NEW zcl_2ui5_lock( ). - DATA: lf_new_varkey TYPE n LENGTH 4. - lf_new_varkey = varkey+0(4). - lf_new_varkey = lf_new_varkey + 1. - lo_2ui5_lock->varkey = lf_new_varkey+0(4). - client->nav_app_call( lo_2ui5_lock ). - WHEN `BACK`. - lo_prev_stack_app = client->get_app( client->get( )-s_draft-id_prev_app_stack ). - set_session_stateful( client = client - stateful = abap_false ). - client->nav_app_leave( lo_prev_stack_app ). - ENDCASE. - client->view_model_update( ). - CATCH cx_root INTO DATA(lx). - client->message_box_display( lx->get_text( ) ). - ENDTRY. - ENDMETHOD. -ENDCLASS. diff --git a/src/00/z2ui5_cl_demo_app_s_06.clas.xml b/src/00/z2ui5_cl_demo_app_s_06.clas.xml deleted file mode 100644 index 3c0d3701..00000000 --- a/src/00/z2ui5_cl_demo_app_s_06.clas.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_CL_DEMO_APP_S_06 - E - Navigation with app state change v2 - 1 - X - X - X - - - - diff --git a/src/00/z2ui5_numc12.doma.xml b/src/00/z2ui5_numc12.doma.xml deleted file mode 100644 index 6d6703ee..00000000 --- a/src/00/z2ui5_numc12.doma.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Z2UI5_NUMC12 - E - NUMC - 000012 - 000012 - ALPHA - Numc12 - - - - diff --git a/src/00/z2ui5_numc12.dtel.xml b/src/00/z2ui5_numc12.dtel.xml deleted file mode 100644 index e5b71c30..00000000 --- a/src/00/z2ui5_numc12.dtel.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - Z2UI5_NUMC12 - E - Z2UI5_NUMC12 - 07 - 07 - 07 - 07 - Numeric 12 - Numc 12 - Numc 12 - Numc 12 - Numc 12 - E - D - - - - diff --git a/src/00/z2ui5_sample 3db3bd967e49932943bbf9113.sicf.xml b/src/00/z2ui5_sample 3db3bd967e49932943bbf9113.sicf.xml deleted file mode 100644 index 1c922ea8..00000000 --- a/src/00/z2ui5_sample 3db3bd967e49932943bbf9113.sicf.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - /sap/bc/apc/sap/z2ui5_sample/ - - Z2UI5_SAMPLE - z2ui5_sample - - - Z2UI5_SAMPLE - E - Generated APC WebSocket protocol service - - - - diff --git a/src/00/z2ui5_sample.samc.xml b/src/00/z2ui5_sample.samc.xml deleted file mode 100644 index 15a48b4e..00000000 --- a/src/00/z2ui5_sample.samc.xml +++ /dev/null @@ -1,46 +0,0 @@ - - - - - -
- Z2UI5_SAMPLE - A -
- - Z2UI5_SAMPLE - A - E - abap2UI5 - - - - Z2UI5_SAMPLE - A - /news_feed - C - TEXT - - - - - Z2UI5_SAMPLE - A - 1 - /news_feed - Z2UI5_CL_DEMO_APP_S_05_WS=====CP - S - - - Z2UI5_SAMPLE - A - 2 - /news_feed - Z2UI5_CL_DEMO_APP_S_05_WS=====CP - C - - -
-
-
-
diff --git a/src/00/z2ui5_sample.sapc.xml b/src/00/z2ui5_sample.sapc.xml deleted file mode 100644 index 8f9c505b..00000000 --- a/src/00/z2ui5_sample.sapc.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - -
- Z2UI5_SAMPLE - A - /sap/bc/apc/sap/z2ui5_sample - Z2UI5_CL_DEMO_APP_S_05_WS - 1 -
- - Z2UI5_SAMPLE - A - E - abap2ui5 - -
-
-
-
diff --git a/src/z2ui5_cl_demo_app_338.clas.abap b/src/z2ui5_cl_demo_app_338.clas.abap index 92ff8484..138d28f0 100644 --- a/src/z2ui5_cl_demo_app_338.clas.abap +++ b/src/z2ui5_cl_demo_app_338.clas.abap @@ -25,7 +25,6 @@ CLASS z2ui5_cl_demo_app_338 DEFINITION DATA mo_main_page TYPE REF TO z2ui5_cl_xml_view. METHODS on_init. - METHODS on_event. METHODS render_main. METHODS render_sub_app. @@ -36,22 +35,6 @@ ENDCLASS. CLASS z2ui5_cl_demo_app_338 IMPLEMENTATION. - METHOD on_event. - - CASE client->get( )-event. - - WHEN 'ONSELECTICONTABBAR'. - - CASE mv_selectedkey. - - WHEN space. - - WHEN OTHERS. - - ENDCASE. - ENDCASE. - - ENDMETHOD. METHOD on_init. @@ -91,21 +74,17 @@ CLASS z2ui5_cl_demo_app_338 IMPLEMENTATION. METHOD z2ui5_if_app~main. me->client = client. - IF client->check_on_init( ). - on_init( ). render_main( ). ENDIF. - - on_event( ). render_sub_app( ). ENDMETHOD. METHOD render_sub_app. - FIELD-SYMBOLS TYPE any. + FIELD-SYMBOLS TYPE any. READ TABLE mt_t002 REFERENCE INTO DATA(t002) WITH KEY id = mv_selectedkey. @@ -146,7 +125,6 @@ CLASS z2ui5_cl_demo_app_338 IMPLEMENTATION. client->view_model_update( ). - ASSIGN mo_app->('MV_VIEW_DISPLAY') TO . IF = abap_true. diff --git a/src/z2ui5_cl_demo_app_339.clas.abap b/src/z2ui5_cl_demo_app_339.clas.abap index 9b87a50f..494ec551 100644 --- a/src/z2ui5_cl_demo_app_339.clas.abap +++ b/src/z2ui5_cl_demo_app_339.clas.abap @@ -7,6 +7,7 @@ CLASS z2ui5_cl_demo_app_339 DEFINITION DATA mv_view_display TYPE abap_bool. DATA mo_parent_view TYPE REF TO z2ui5_cl_xml_view. + DATA mv_init TYPE abap_bool. DATA mv_table TYPE string. DATA mt_table_tmp TYPE REF TO data. @@ -46,7 +47,7 @@ CLASS z2ui5_cl_demo_app_339 IMPLEMENTATION. TRY. cl_abap_typedescr=>describe_by_name( EXPORTING p_name = mv_table - RECEIVING p_descr_ref = DATA(typedesc) + RECEIVING p_descr_ref = DATA(typedesc) EXCEPTIONS type_not_found = 1 OTHERS = 2 ). @@ -80,11 +81,19 @@ CLASS z2ui5_cl_demo_app_339 IMPLEMENTATION. ENDMETHOD. METHOD on_event. - IF client->check_on_event( 'SELECTION_CHANGE' ). - client->nav_app_call( z2ui5_cl_demo_app_340=>factory( - io_table = mt_table - io_layout = mo_layout ) ). - ENDIF. + CASE client->get( )-event. + + WHEN 'SELECTION_CHANGE'. + + client->nav_app_call( z2ui5_cl_demo_app_340=>factory( + io_table = mt_table + io_layout = mo_layout ) ). + + WHEN 'BACK'. + + client->nav_app_leave( ). + + ENDCASE. ENDMETHOD. METHOD on_init. @@ -103,14 +112,14 @@ CLASS z2ui5_cl_demo_app_339 IMPLEMENTATION. ENDIF. - mo_layout = z2ui5_cl_demo_app_333=>factory( i_data = mt_table + mo_layout = z2ui5_cl_demo_app_333=>factory( i_data = mt_table vis_cols = 5 ). ASSIGN mt_table->* TO FIELD-SYMBOL(). - DATA(table) = page->table( width = 'auto' - mode = 'SingleSelectLeft' - selectionchange = client->_event( 'SELECTION_CHANGE' ) - items = client->_bind_edit( val =
) ). + DATA(table) = page->table( width = 'auto' + mode = 'SingleSelectLeft' + selectionchange = client->_event( 'SELECTION_CHANGE' ) + items = client->_bind_edit( val =
) ). DATA(columns) = table->columns( ). @@ -120,7 +129,7 @@ CLASS z2ui5_cl_demo_app_339 IMPLEMENTATION. columns->column( visible = client->_bind( val = layout->visible tab = mo_layout->ms_data-t_layout tab_index = lv_index ) - )->text( layout->name ). + )->text( layout->name ). ENDLOOP. @@ -158,7 +167,8 @@ CLASS z2ui5_cl_demo_app_339 IMPLEMENTATION. METHOD z2ui5_if_app~main. - IF client->check_on_init( ). + IF mv_init IS INITIAL. + mv_init = abap_true. get_data( ). @@ -170,7 +180,7 @@ CLASS z2ui5_cl_demo_app_339 IMPLEMENTATION. ASSIGN mt_table->* TO FIELD-SYMBOL(
). IF <>
. - client->message_toast_display( 'ERROR - mo_layout->mr_data->* ne mt_table->*' ). + client->message_toast_display( 'ERROR - mo_layout->mr_data->* ne mt_table->*' ). ENDIF. on_event( client ). diff --git a/src/z2ui5_cl_demo_app_342.clas.abap b/src/z2ui5_cl_demo_app_342.clas.abap index fc93b167..3808b055 100644 --- a/src/z2ui5_cl_demo_app_342.clas.abap +++ b/src/z2ui5_cl_demo_app_342.clas.abap @@ -7,6 +7,7 @@ CLASS z2ui5_cl_demo_app_342 DEFINITION DATA mv_view_display TYPE abap_bool. DATA mo_parent_view TYPE REF TO z2ui5_cl_xml_view. + DATA mv_init TYPE abap_bool. DATA mv_table TYPE string. DATA mt_data_tmp TYPE REF TO data. @@ -46,7 +47,7 @@ CLASS z2ui5_cl_demo_app_342 IMPLEMENTATION. TRY. cl_abap_typedescr=>describe_by_name( EXPORTING p_name = mv_table - RECEIVING p_descr_ref = DATA(typedesc) + RECEIVING p_descr_ref = DATA(typedesc) EXCEPTIONS type_not_found = 1 OTHERS = 2 ). @@ -80,11 +81,19 @@ CLASS z2ui5_cl_demo_app_342 IMPLEMENTATION. ENDMETHOD. METHOD on_event. - IF client->check_on_event( 'SELECTION_CHANGE' ). - client->nav_app_call( z2ui5_cl_demo_app_340=>factory( - io_table = mt_data - io_layout = mo_lay ) ). - ENDIF. + CASE client->get( )-event. + + WHEN 'SELECTION_CHANGE'. + + client->nav_app_call( z2ui5_cl_demo_app_340=>factory( + io_table = mt_data + io_layout = mo_lay ) ). + + WHEN 'BACK'. + + client->nav_app_leave( ). + + ENDCASE. ENDMETHOD. METHOD on_init. @@ -103,15 +112,15 @@ CLASS z2ui5_cl_demo_app_342 IMPLEMENTATION. ENDIF. - mo_lay = z2ui5_cl_demo_app_333=>factory( i_data = mt_data + mo_lay = z2ui5_cl_demo_app_333=>factory( i_data = mt_data vis_cols = 5 ). ASSIGN mt_data->* TO FIELD-SYMBOL(
). - DATA(table) = page->table( width = 'auto' - mode = 'SingleSelectLeft' - selectionchange = client->_event( 'SELECTION_CHANGE' ) - items = client->_bind_edit( val =
) ). + DATA(table) = page->table( width = 'auto' + mode = 'SingleSelectLeft' + selectionchange = client->_event( 'SELECTION_CHANGE' ) + items = client->_bind_edit( val =
) ). DATA(columns) = table->columns( ). @@ -121,7 +130,7 @@ CLASS z2ui5_cl_demo_app_342 IMPLEMENTATION. columns->column( visible = client->_bind( val = layout->visible tab = mo_lay->ms_data-t_layout tab_index = lv_index ) - )->text( layout->name ). + )->text( layout->name ). ENDLOOP. @@ -159,7 +168,8 @@ CLASS z2ui5_cl_demo_app_342 IMPLEMENTATION. METHOD z2ui5_if_app~main. - IF client->check_on_init( ). + IF mv_init IS INITIAL. + mv_init = abap_true. get_data( ). @@ -171,7 +181,7 @@ CLASS z2ui5_cl_demo_app_342 IMPLEMENTATION. ASSIGN mt_data->* TO FIELD-SYMBOL(
). IF <>
. - client->message_toast_display( 'ERROR - mo_layout->mr_data->* ne mt_table->*' ). + client->message_toast_display( 'ERROR - mo_layout->mr_data->* ne mt_table->*' ). ENDIF. on_event( client ).