Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 8d477fe

Browse files
authored
fix check binding error with ref
1 parent fb3e25c commit 8d477fe

File tree

1 file changed

+6
-80
lines changed

1 file changed

+6
-80
lines changed

src/z2ui5_cl_demo_app_343.clas.abap

Lines changed: 6 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -4,39 +4,20 @@ CLASS z2ui5_cl_demo_app_343 DEFINITION PUBLIC.
44
INTERFACES z2ui5_if_app.
55

66
DATA mt_data1 TYPE REF TO data.
7-
* 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.
12-
13-
DATA mo_layout_obj1 TYPE REF TO z2ui5_cl_demo_app_333.
14-
* 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.
197

208
METHODS get_data.
219

2210
METHODS render_main
2311
IMPORTING
2412
!client TYPE REF TO z2ui5_if_client.
2513

26-
PROTECTED SECTION.
27-
28-
PRIVATE SECTION.
29-
METHODS xml_table
30-
IMPORTING
31-
i_page TYPE REF TO z2ui5_cl_xml_view
32-
i_client TYPE REF TO z2ui5_if_client
33-
i_data TYPE REF TO data
34-
i_layout TYPE REF TO z2ui5_cl_demo_app_333.
35-
3614
METHODS get_comp
3715
RETURNING
3816
VALUE(result) TYPE abap_component_tab.
3917

18+
PROTECTED SECTION.
19+
PRIVATE SECTION.
20+
4021
ENDCLASS.
4122

4223

@@ -98,9 +79,6 @@ CLASS z2ui5_cl_demo_app_343 IMPLEMENTATION.
9879
CATCH cx_root.
9980
ENDTRY.
10081

101-
mo_layout_obj1 = z2ui5_cl_demo_app_333=>factory( i_data = mt_data1
102-
vis_cols = 2 ).
103-
10482
ENDMETHOD.
10583

10684

@@ -110,16 +88,11 @@ CLASS z2ui5_cl_demo_app_343 IMPLEMENTATION.
11088
navbuttonpress = client->_event( 'BACK' )
11189
shownavbutton = client->check_app_prev_stack( ) ).
11290

113-
page->button( text = 'CALL Next App'
114-
press = client->_event( 'GO' )
115-
type = 'Success' ).
91+
TRY.
11692

93+
DATA(table) = page->table( width = 'auto'
94+
items = client->_bind( mt_data1 ) ).
11795

118-
TRY.
119-
xml_table( i_page = page
120-
i_client = client
121-
i_data = mt_data1
122-
i_layout = mo_layout_obj1 ).
12396
client->message_box_display( `error - reference processed in binding without error` ).
12497
CATCH cx_root.
12598
client->message_box_display( `success - reference not allowed for binding throwed` ).
@@ -131,39 +104,6 @@ CLASS z2ui5_cl_demo_app_343 IMPLEMENTATION.
131104
ENDMETHOD.
132105

133106

134-
METHOD xml_table.
135-
136-
DATA(table) = i_page->table( width = 'auto'
137-
items = i_client->_bind( val = i_data ) ).
138-
139-
DATA(columns) = table->columns( ).
140-
141-
LOOP AT i_layout->ms_data-t_layout REFERENCE INTO DATA(layout).
142-
DATA(lv_index) = sy-tabix.
143-
144-
columns->column( visible = i_client->_bind( val = layout->visible
145-
tab = i_layout->ms_data-t_layout
146-
tab_index = lv_index )
147-
)->text( layout->name ).
148-
149-
ENDLOOP.
150-
151-
DATA(column_list_item) = columns->get_parent( )->items(
152-
)->column_list_item( ).
153-
154-
DATA(cells) = column_list_item->cells( ).
155-
156-
LOOP AT i_layout->ms_data-t_layout REFERENCE INTO layout.
157-
158-
lv_index = sy-tabix.
159-
160-
cells->object_identifier( text = |\{{ layout->name }\}| ). "."|\{{ layout->fname }\}| ).
161-
162-
ENDLOOP.
163-
164-
ENDMETHOD.
165-
166-
167107
METHOD z2ui5_if_app~main.
168108

169109
IF client->check_on_init( ).
@@ -174,26 +114,12 @@ CLASS z2ui5_cl_demo_app_343 IMPLEMENTATION.
174114
CASE client->get( )-event.
175115
WHEN 'BACK'.
176116
client->nav_app_leave( ).
177-
WHEN 'GO'.
178-
DATA(app) = z2ui5_cl_demo_app_336=>factory( ).
179-
client->nav_app_call( app ).
180117
ENDCASE.
181118

182-
183119
IF client->get( )-check_on_navigated = abap_true
184120
AND client->check_on_init( ) = abap_false.
185121
render_main( client ).
186122
ENDIF.
187123

188-
189-
IF mo_layout_obj1->mr_data IS NOT BOUND.
190-
client->message_toast_display( 'ERROR - mo_layout_obj->mr_data is not bound!' ).
191-
ENDIF.
192-
193-
IF mo_layout_obj1->mr_data->* <> mt_data1->*.
194-
client->message_toast_display( 'ERROR - mo_layout_obj_2->mr_data <> mt_data!' ).
195-
ENDIF.
196-
197-
198124
ENDMETHOD.
199125
ENDCLASS.

0 commit comments

Comments
 (0)