bugfix demo 28 (#157)

* bugfix demo 28

* bugfix generic references

* abaplint fix
This commit is contained in:
oblomov 2023-04-11 09:47:24 +02:00
parent 9fe77d9555
commit a26a909f2c
2 changed files with 25 additions and 16 deletions

View File

@ -4,13 +4,6 @@ CLASS z2ui5_cl_app_demo_28 DEFINITION PUBLIC.
INTERFACES z2ui5_if_app.
* DATA product TYPE string.
* DATA quantity TYPE i.
*
* DATA input21 TYPE string.
* DATA input22 TYPE string.
* DATA input41 TYPE string.
DATA mt_draft TYPE REF TO data.
DATA mv_test TYPE REF TO data.
@ -118,7 +111,9 @@ CLASS z2ui5_cl_app_demo_28 IMPLEMENTATION.
CREATE DATA mv_test TYPE string.
mv_test->* = 'test'.
FIELD-SYMBOLS <field> type string.
assign mv_test->* to <field>.
<field> = 'test'.
CREATE DATA mt_draft TYPE STANDARD TABLE OF z2ui5_t_draft.
@ -129,7 +124,11 @@ CLASS z2ui5_cl_app_demo_28 IMPLEMENTATION.
UP TO 10 ROWS
.
mt_draft->* = CORRESPONDING #( lt_data ).
types ty_t_draft type STANDARD TABLE OF z2ui5_t_draft.
FIELD-SYMBOLS <tab> TYPE ty_t_draft.
assign mt_draft->* to <tab>.
<tab> = CORRESPONDING #( lt_data ).
app-next-s_timer-interval_ms = '2000'.
app-next-s_timer-event_finished = 'TIMER_FINISHED'.
@ -153,16 +152,22 @@ CLASS z2ui5_cl_app_demo_28 IMPLEMENTATION.
)->title( 'Input'
)->label( 'quantity' ).
lo_view->input( client->_bind( val = mv_test->* check_gen_data = abap_true ) ).
FIELD-SYMBOLS <field> type string.
ASSIGN mv_test->* to <field>.
lo_view->input( client->_bind( val = <field> check_gen_data = abap_true ) ).
lo_view->button(
text = 'post'
press = client->_event( 'BUTTON_POST' )
).
FIELD-SYMBOLS <tab> type STANDARD TABLE.
assign mt_draft->* to <tab>.
DATA(tab) = lo_view->get_parent( )->get_parent( )->simple_form( title = 'Table' editable = abap_true
)->content( 'form' )->table(
items = client->_bind( val = mt_draft->* check_gen_data = abap_true )
items = client->_bind( val = <tab> check_gen_data = abap_true )
).
tab->columns(

View File

@ -522,7 +522,9 @@ CLASS z2ui5_lcl_utility IMPLEMENTATION.
ENDIF.
ENDLOOP.
INSERT lr_row->* INTO TABLE ct_to.
FIELD-SYMBOLS <row> type any.
ASSign lr_row->* to <row>.
INSERT <row> INTO TABLE ct_to.
ENDLOOP.
ENDMETHOD.
@ -1324,7 +1326,9 @@ CLASS z2ui5_lcl_db IMPLEMENTATION.
DATA(lv_name) = 'LO_APP->' && to_upper( lr_attri->name ).
ASSIGN (lv_name) TO <attribute>.
DATA(lr_ref2) = REF #( <attribute> ).
CLEAR lr_ref2->*.
FIELD-SYMBOLS <field> type any.
ASSign lr_ref2->* to <field>.
CLEAR <field>.
ENDLOOP.
@ -1635,12 +1639,12 @@ CLASS z2ui5_lcl_system_runtime IMPLEMENTATION.
ASSIGN (lv_name) TO <attribute>.
_=>raise( when = xsdbool( sy-subrc <> 0 ) v = `Attribute in App with name ` && lv_name && ` not found` ).
DATA(lr_ref2) = REF #( <attribute> ).
data lr_ref2 type ref to data.
get reference of <attribute> into lr_ref2.
" DATA(lr_ref2) = REF #( <attribute> ).
IF check_gen_data = abap_true.
TRY.
" DATA(lo_refdescr) = CAST cl_abap_refdescr( cl_abap_datadescr=>describe_by_data( lr_ref2->* ) ).
" DATA lr_ref TYPE REF TO data.
DATA(lr_ref) = CAST data( lr_ref2->* ).
IF lr_attri->gen_type IS INITIAL.
DATA(lo_datadescr) = cl_abap_datadescr=>describe_by_data( lr_ref->* ).