@@ -3,16 +3,23 @@ CLASS z2ui5_cl_demo_app_343 DEFINITION PUBLIC.
33 PUBLIC SECTION .
44 INTERFACES z2ui5_if_app.
55
6- DATA mt_data TYPE REF TO data .
6+ DATA mt_data1 TYPE REF TO data .
77 DATA mt_data2 TYPE REF TO data .
8+ DATA mt_data3 TYPE REF TO data .
9+ DATA mt_data4 TYPE REF TO data .
10+ DATA mt_data5 TYPE REF TO data .
11+ DATA mt_data6 TYPE REF TO data .
812
9- DATA mo_layout_obj TYPE REF TO z2ui5_cl_demo_app_333.
13+ DATA mo_layout_obj1 TYPE REF TO z2ui5_cl_demo_app_333.
1014 DATA mo_layout_obj2 TYPE REF TO z2ui5_cl_demo_app_333.
15+ DATA mo_layout_obj3 TYPE REF TO z2ui5_cl_demo_app_333.
16+ DATA mo_layout_obj4 TYPE REF TO z2ui5_cl_demo_app_333.
17+ DATA mo_layout_obj5 TYPE REF TO z2ui5_cl_demo_app_333.
18+ DATA mo_layout_obj6 TYPE REF TO z2ui5_cl_demo_app_333.
1119
12- METHODS get_data IMPORTING iv_tabname TYPE string .
13- METHODS get_data2 IMPORTING iv_tabname TYPE string .
20+ METHODS get_data.
1421
15- METHODS ui5_view_display
22+ METHODS render_main
1623 IMPORTING
1724 !client TYPE REF TO z2ui5_if_client.
1825
@@ -27,8 +34,6 @@ CLASS z2ui5_cl_demo_app_343 DEFINITION PUBLIC.
2734 i_layout TYPE REF TO z2ui5_cl_demo_app_333.
2835
2936 METHODS get_comp
30- IMPORTING
31- iv_tabname TYPE string
3237 RETURNING
3338 VALUE (result ) TYPE abap_component_tab.
3439
@@ -40,15 +45,9 @@ CLASS z2ui5_cl_demo_app_343 IMPLEMENTATION.
4045 METHOD z2ui5_if_app ~main .
4146
4247 IF client->check_on_init( ).
43- get_data( 'Z2UI5_T_01' ).
44- get_data2( 'Z2UI5_T_01' ).
45-
46- mo_layout_obj = z2ui5_cl_demo_app_333=>factory( i_data = mt_data
47- vis_cols = 5 ).
48- mo_layout_obj2 = z2ui5_cl_demo_app_333=>factory( i_data = mt_data2
49- vis_cols = 3 ).
48+ get_data( ).
5049
51- ui5_view_display ( client ).
50+ render_main ( client ).
5251 ENDIF .
5352
5453 CASE client->get( )-event.
@@ -59,41 +58,26 @@ CLASS z2ui5_cl_demo_app_343 IMPLEMENTATION.
5958 client->nav_app_call( app ).
6059 ENDCASE .
6160
62- *** " Kommen wir aus einer anderen APP
63- *** IF client->get( )-check_on_navigated = abap_true.
64- *** TRY.
65- *** " Kommen wir aus einer anderen APP
66- *** CAST z2ui5_cl_demo_app_336( client->get_app( client->get( )-s_draft-id_prev_app ) ).
67- ***
68- *** CATCH cx_root.
69- *** ENDTRY.
70- *** ENDIF.
7161
7262
7363 IF client->get( )-check_on_navigated = abap_true
7464 AND client->check_on_init( ) = abap_false .
75- ui5_view_display ( client ).
65+ render_main ( client ).
7666 ENDIF .
7767
7868
79- IF mo_layout_obj ->mr_data IS NOT BOUND .
69+ IF mo_layout_obj1 ->mr_data IS NOT BOUND .
8070 client->message_toast_display( 'ERROR - mo_layout_obj->mr_data is not bound!' ).
8171 ENDIF .
82- IF mo_layout_obj2->mr_data IS NOT BOUND .
83- client->message_toast_display( 'ERROR - mo_layout_obj_2->mr_data is not bound!' ).
84- ENDIF .
85- IF mo_layout_obj->mr_data->* <> mt_data->*.
72+
73+ IF mo_layout_obj1->mr_data->* <> mt_data1->*.
8674 client->message_toast_display( 'ERROR - mo_layout_obj_2->mr_data <> mt_data!' ).
8775 ENDIF .
88- IF mo_layout_obj2->mr_data->* <> mt_data2->*.
89- client->message_toast_display( 'ERROR - mo_layout_obj_2->mr_data <> ms_data!' ).
90- ENDIF .
9176
92- client->view_model_update( ).
9377
9478 ENDMETHOD .
9579
96- METHOD ui5_view_display .
80+ METHOD render_main .
9781
9882 DATA (page ) = z2ui5_cl_xml_view=>factory( )->shell( )->page( title = 'RTTI IV'
9983 navbuttonpress = client->_event( 'BACK' )
@@ -105,22 +89,42 @@ CLASS z2ui5_cl_demo_app_343 IMPLEMENTATION.
10589
10690 xml_table( i_page = page
10791 i_client = client
108- i_data = mt_data
109- i_layout = mo_layout_obj ).
92+ i_data = mt_data1
93+ i_layout = mo_layout_obj1 ).
11094
11195 xml_table( i_page = page
11296 i_client = client
11397 i_data = mt_data2
11498 i_layout = mo_layout_obj2 ).
11599
100+ xml_table( i_page = page
101+ i_client = client
102+ i_data = mt_data3
103+ i_layout = mo_layout_obj3 ).
104+
105+ xml_table( i_page = page
106+ i_client = client
107+ i_data = mt_data4
108+ i_layout = mo_layout_obj4 ).
109+
110+ xml_table( i_page = page
111+ i_client = client
112+ i_data = mt_data5
113+ i_layout = mo_layout_obj5 ).
114+
115+ xml_table( i_page = page
116+ i_client = client
117+ i_data = mt_data6
118+ i_layout = mo_layout_obj6 ).
119+
116120 client->view_display( page ).
117121
118122 ENDMETHOD .
119123
120124 METHOD xml_table .
121125
122126 DATA (table ) = i_page->table( width = 'auto'
123- items = i_client->_bind_edit ( val = i_data ) ).
127+ items = i_client->_bind ( val = i_data ) ).
124128
125129 DATA (columns ) = table->columns( ).
126130
@@ -135,8 +139,7 @@ CLASS z2ui5_cl_demo_app_343 IMPLEMENTATION.
135139 ENDLOOP .
136140
137141 DATA (column_list_item ) = columns->get_parent( )->items(
138- )->column_list_item( valign = 'Middle'
139- type = `Inactive` ).
142+ )->column_list_item( ).
140143
141144 DATA (cells ) = column_list_item->cells( ).
142145
@@ -152,70 +155,89 @@ CLASS z2ui5_cl_demo_app_343 IMPLEMENTATION.
152155
153156 METHOD get_data .
154157
155- FIELD-SYMBOLS <table> TYPE STANDARD TABLE .
158+ FIELD-SYMBOLS <table1> TYPE STANDARD TABLE .
159+ FIELD-SYMBOLS <table2> TYPE STANDARD TABLE .
160+ FIELD-SYMBOLS <table3> TYPE STANDARD TABLE .
161+ FIELD-SYMBOLS <table4> TYPE STANDARD TABLE .
162+ FIELD-SYMBOLS <table5> TYPE STANDARD TABLE .
163+ FIELD-SYMBOLS <table6> TYPE STANDARD TABLE .
156164
157- DATA (t_comp ) = get_comp( iv_tabname ).
165+ DATA (t_comp ) = get_comp( ).
158166 TRY .
159167
160168 DATA (new_struct_desc ) = cl_abap_structdescr=>create( t_comp ).
161169
162170 DATA (new_table_desc ) = cl_abap_tabledescr=>create( p_line_type = new_struct_desc
163171 p_table_kind = cl_abap_tabledescr=>tablekind_std ).
164172
165- CREATE DATA mt_DATA TYPE HANDLE new_table_desc.
173+ CREATE DATA mt_data1 TYPE HANDLE new_table_desc.
174+ CREATE DATA mt_data2 TYPE HANDLE new_table_desc.
175+ CREATE DATA mt_data3 TYPE HANDLE new_table_desc.
176+ CREATE DATA mt_data4 TYPE HANDLE new_table_desc.
177+ CREATE DATA mt_data5 TYPE HANDLE new_table_desc.
178+ CREATE DATA mt_data6 TYPE HANDLE new_table_desc.
166179
167- ASSIGN mt_DATA->* TO <table> .
180+ ASSIGN mt_data1->* TO <table1> .
181+ ASSIGN mt_data2->* TO <table2> .
182+ ASSIGN mt_data3->* TO <table3> .
183+ ASSIGN mt_data4->* TO <table4> .
184+ ASSIGN mt_data5->* TO <table5> .
185+ ASSIGN mt_data6->* TO <table6> .
168186
169- SELECT *
170- FROM (iv_tabname)
171- INTO CORRESPONDING FIELDS OF TABLE @<table>
172- UP TO 3 ROWS .
187+ SELECT * FROM Z2ui5_t_01
188+ INTO TABLE @<table1>
189+ UP TO 5 ROWS .
173190
174- SORT <table> .
191+ SELECT * FROM Z2ui5_t_01
192+ INTO TABLE @<table2>
193+ UP TO 5 ROWS .
175194
176- CATCH cx_root.
177-
178- ENDTRY .
179-
180- ENDMETHOD .
195+ SELECT * FROM Z2ui5_t_01
196+ INTO TABLE @<table3>
197+ UP TO 5 ROWS .
181198
182- METHOD get_data2 .
199+ SELECT * FROM Z2ui5_t_01
200+ INTO TABLE @<table4>
201+ UP TO 5 ROWS .
183202
184- FIELD-SYMBOLS <table> TYPE STANDARD TABLE .
203+ SELECT * FROM Z2ui5_t_01
204+ INTO TABLE @<table5>
205+ UP TO 5 ROWS .
185206
186- DATA (t_comp ) = get_comp( iv_tabname ).
187- TRY .
207+ SELECT * FROM Z2ui5_t_01
208+ INTO TABLE @<table6>
209+ UP TO 5 ROWS .
188210
189- DATA ( new_struct_desc ) = cl_abap_structdescr=>create( t_comp ) .
211+ CATCH cx_root .
190212
191- DATA (new_table_desc ) = cl_abap_tabledescr=>create( p_line_type = new_struct_desc
192- p_table_kind = cl_abap_tabledescr=>tablekind_std ).
213+ ENDTRY .
193214
194- CREATE DATA mt_DATA2 TYPE HANDLE new_table_desc.
215+ mo_layout_obj1 = z2ui5_cl_demo_app_333=>factory( i_data = mt_data1
216+ vis_cols = 2 ).
195217
196- ASSIGN mt_DATA2->* TO <table> .
218+ mo_layout_obj2 = z2ui5_cl_demo_app_333=>factory( i_data = mt_data2
219+ vis_cols = 2 ).
197220
198- SELECT *
199- FROM (iv_tabname)
200- INTO CORRESPONDING FIELDS OF TABLE @<table>
201- UP TO 4 ROWS .
221+ mo_layout_obj3 = z2ui5_cl_demo_app_333=>factory( i_data = mt_data3
222+ vis_cols = 2 ).
202223
203- SORT <table> .
224+ mo_layout_obj4 = z2ui5_cl_demo_app_333=>factory( i_data = mt_data4
225+ vis_cols = 2 ).
204226
205- CATCH cx_root.
227+ mo_layout_obj5 = z2ui5_cl_demo_app_333=>factory( i_data = mt_data5
228+ vis_cols = 2 ).
206229
207- ENDTRY .
230+ mo_layout_obj6 = z2ui5_cl_demo_app_333=>factory( i_data = mt_data6
231+ vis_cols = 2 ).
208232
209233 ENDMETHOD .
210234
211235 METHOD get_comp .
212236
213- DATA selkz TYPE abap_bool .
214-
215237 TRY .
216238 TRY .
217239
218- cl_abap_typedescr=>describe_by_name( EXPORTING p_name = iv_tabname
240+ cl_abap_typedescr=>describe_by_name( EXPORTING p_name = 'Z2UI5_T_01'
219241 RECEIVING p_descr_ref = DATA (typedesc )
220242 EXCEPTIONS type_not_found = 1
221243 OTHERS = 2 ).
@@ -234,16 +256,10 @@ CLASS z2ui5_cl_demo_app_343 IMPLEMENTATION.
234256
235257 ENDLOOP .
236258
237- CATCH cx_root INTO DATA ( root ). " TODO: variable is assigned but never used (ABAP cleaner)
259+ CATCH cx_root.
238260
239261 ENDTRY .
240262
241- DATA (component ) = VALUE cl_abap_structdescr=>component_table(
242- ( name = 'SELKZ'
243- type = CAST #( cl_abap_datadescr=>describe_by_data( selkz ) ) ) ).
244-
245- APPEND LINES OF component TO result .
246-
247263 CATCH cx_root.
248264 ENDTRY .
249265
0 commit comments