@@ -3,14 +3,17 @@ CLASS z2ui5_cl_tm_se16_01 DEFINITION PUBLIC.
33 PUBLIC SECTION .
44 INTERFACES z2ui5_if_app.
55
6- DATA mo_ui_ranges TYPE REF TO z2ui5_cl_layo_var_ui.
6+ DATA mv_tabname TYPE string VALUE `USR01` .
7+ DATA mr_table TYPE REF TO data .
8+ DATA mo_multiselect TYPE REF TO z2ui5_cl_sel_multisel.
9+ DATA ms_layout TYPE z2ui5_t_11.
10+ METHODS on_navigated.
711
812 PROTECTED SECTION .
913 DATA client TYPE REF TO z2ui5_if_client.
1014
1115 METHODS on_event.
1216 METHODS view_display.
13- METHODS on_navigated.
1417 METHODS on_init.
1518
1619 PRIVATE SECTION .
@@ -23,21 +26,20 @@ CLASS z2ui5_cl_tm_se16_01 IMPLEMENTATION.
2326
2427 CASE client->get( )-event.
2528
26- WHEN 'DISPLAY_POPUP_SELECT_LAYOUT' .
27- client->nav_app_call( z2ui5_cl_layo_manager=>choose_layout( handle01 = 'ZSE16'
28- handle02 = mo_ui_ranges->mo_sql->ms_sql-tabname ) ).
29+ WHEN 'POPUP_LAYOUT' .
30+ client->nav_app_call( z2ui5_cl_layo_manager=>choose_layout(
31+ handle01 = 'ZSE16'
32+ handle02 = mv_tabname ) ).
33+
34+ WHEN 'UPDATE_TABLE' .
35+ on_init( ).
2936
3037 WHEN 'GO' .
31- DATA (lo_tab_output ) = NEW z2ui5_cl_tm_se16_02( ).
32- lo_tab_output->mo_sql = z2ui5_cl_layo_var_sql=>factory( mo_ui_ranges->mo_sql->ms_sql ).
33- client->nav_app_call( lo_tab_output ).
38+ client->nav_app_call( NEW z2ui5_cl_tm_se16_02( ) ).
3439
3540 WHEN 'BACK' .
3641 client->nav_app_leave( ).
3742
38- WHEN OTHERS .
39- mo_ui_ranges->on_event( client ).
40-
4143 ENDCASE .
4244
4345 ENDMETHOD .
@@ -51,91 +53,93 @@ CLASS z2ui5_cl_tm_se16_01 IMPLEMENTATION.
5153 shownavbutton = client->check_app_prev_stack( )
5254 floatingfooter = abap_true
5355 ).
54-
55- IF mo_ui_ranges->mo_sql->ms_sql-tabname IS NOT INITIAL .
56- mo_ui_ranges->paint( view = page
57- client = client ).
56+ DATA (vbox ) = page->vbox( ).
57+
58+ vbox->hbox(
59+ )->input( value = client->_bind_edit( mv_tabname ) description = `Table` submit = client->_event( `UPDATE_TABLE` )
60+ )->button( press = client->_event( `UPDATE_TABLE` ) text = `Post`
61+ ).
62+ vbox->hbox(
63+ )->input( value = client->_bind_edit( ms_layout-layout ) description = `Layout` enabled = abap_false
64+ )->button( press = client->_event( `POPUP_LAYOUT` ) text = `Post`
65+ ).
66+ IF mv_tabname IS NOT INITIAL .
67+ mo_multiselect->set_output( client = client view = vbox ).
5868 ENDIF .
5969
70+
6071 page->footer( )->overflow_toolbar(
6172 )->toolbar_spacer(
62- )->button( text = z2ui5_cl_layo_var_ui=>go_button( )-text
73+ )->button( text = `GO`
6374 type = `Emphasized`
64- press = client->_event( z2ui5_cl_layo_var_ui=>go_button( )-event_name ) ).
75+ press = client->_event( `GO` ) ).
6576
6677 client->view_display( view->stringify( ) ).
6778
6879 ENDMETHOD .
6980
7081 METHOD z2ui5_if_app ~main .
7182 TRY .
72-
7383 me ->client = client .
7484
7585 IF client->check_on_init( ).
7686 on_init( ).
77- ELSEIF client->check_on_navigated( ).
87+ RETURN .
88+ ENDIF .
89+
90+ IF mo_multiselect->main( client ).
91+ RETURN .
92+ ENDIF .
93+
94+ IF client->check_on_navigated( ).
7895 on_navigated( ).
79- ELSE .
80- on_event( ).
8196 ENDIF .
97+ on_event( ).
8298
8399 CATCH cx_root INTO DATA (x ).
84100 client->message_box_display( x ).
85101 ENDTRY .
86102 ENDMETHOD .
87103
104+ METHOD on_init .
105+
106+ mr_table = z2ui5_cl_util=>rtti_create_tab_by_name( mv_tabname ).
107+ mo_multiselect = z2ui5_cl_sel_multisel=>factory_by_name(
108+ val = mv_tabname
109+ s_variant = VALUE #( handle01 = 'ZSE16' )
110+ ).
111+
112+ * mo_layout = z2ui5_cl_layo_manager=>factory( control = z2ui5_cl_layo_manager=>m_table
113+ * data = mr_table
114+ * handle01 = 'ZSE16'
115+ * handle02 = mv_tabname ).
116+
117+
118+
119+ view_display( ).
120+
121+ ENDMETHOD .
122+
123+
88124 METHOD on_navigated .
89125
90126 TRY .
91127 DATA (lo_popup ) = CAST z2ui5_cl_layo_pop_w_sel( client->get_app_prev( ) ).
92128 DATA (lo_layout ) = lo_popup->result( ).
93129
94130 IF lo_layout-check_confirmed = abap_true .
95-
96131 FIELD-SYMBOLS <layout> TYPE z2ui5_t_11.
97132 ASSIGN lo_layout-row->* TO <layout> .
98-
99- mo_ui_ranges->mo_sql->ms_sql-layout_name = <layout> -layout.
100- mo_ui_ranges->mo_sql->ms_sql-layout_id = <layout> -guid.
101- client->view_model_update( ).
102-
133+ ms_layout = <layout> .
103134 ENDIF .
104-
135+ RETURN .
105136 CATCH cx_root.
106137 ENDTRY .
107-
108138 TRY .
109- CAST z2ui5_cl_tm_se16_02( client->get_app_prev( ) ).
139+ DATA ( lo_app ) = CAST z2ui5_cl_tm_se16_02( client->get_app_prev( ) ).
110140 view_display( ).
111- RETURN .
112141 CATCH cx_root.
113142 ENDTRY .
114-
115- mo_ui_ranges->on_navigated( client ).
116-
117- ENDMETHOD .
118-
119- METHOD on_init .
120-
121- DATA lr_table TYPE REF TO data .
122-
123- mo_ui_ranges = NEW z2ui5_cl_layo_var_ui( ).
124- mo_ui_ranges->mo_sql = NEW #( ).
125- mo_ui_ranges->mo_sql->ms_sql-tabname = `USR01` .
126- mo_ui_ranges->mo_sql->ms_sql-count = `500` .
127-
128- lr_table = z2ui5_cl_util=>rtti_create_tab_by_name( `T100` ).
129- mo_ui_ranges->mo_layout = z2ui5_cl_layo_manager=>factory( control = z2ui5_cl_layo_manager=>m_table
130- data = lr_table
131- handle01 = 'Z2UI5_CL_SE16'
132- handle02 = mo_ui_ranges->mo_sql->ms_sql-tabname
133- handle03 = ''
134- handle04 = '' ).
135-
136- mo_ui_ranges->init_filter_tab( ).
137- view_display( ).
138-
139143 ENDMETHOD .
140144
141145ENDCLASS .
0 commit comments