update field symbol error (#423)

* update field symbol error

* unit tests

* update

* update refactoring
This commit is contained in:
oblomov 2023-07-26 12:34:24 +02:00 committed by GitHub
parent 7e49bb92f9
commit 916b6cbe2b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 4 deletions

View File

@ -1353,11 +1353,13 @@ CLASS z2ui5_lcl_fw_handler IMPLEMENTATION.
FIELD-SYMBOLS <arg> TYPE STANDARD TABLE.
ASSIGN ('SO_BODY->MR_ACTUAL->ARGUMENTS->*') TO <arg>.
z2ui5_lcl_utility=>raise( when = xsdbool( sy-subrc <> 0 ) ).
FIELD-SYMBOLS <arg_row> type any.
LOOP AT <arg> assigning <arg_row>.
IF sy-tabix = 1.
ASSIGN ('<ARG_ROW>->EVENT->*') TO FIELD-SYMBOL(<val>).
FIELD-SYMBOLS <val> type any.
ASSIGN ('<ARG_ROW>->EVENT->*') TO <val>.
result->ms_actual-event = <val>.
ELSE.
ASSIGN <arg_row>->* TO <val>.

View File

@ -418,6 +418,7 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
IF <val>(9) <> `<mvc:View`.
cl_abap_unit_assert=>fail( msg = 'xml view - intital view wrong' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_id.
@ -713,8 +714,7 @@ CLASS ltcl_unit_03_app_ajax IMPLEMENTATION.
ENDIF.
DATA(lv_id) = CONV string( <val> ).
DATA(lv_request) = `{"oUpdate":{"QUANTITY":"600"},"ID": "` && lv_id && `" ,"ARGUMENTS":{"EVENT":"BUTTON_POST","METHOD":"UPDATE"}}`.
* z2ui5_cl_http_handler=>client = VALUE #( body = lv_request ).
DATA(lv_request) = `{"oUpdate":{"QUANTITY":"600"},"ID": "` && lv_id && `" ,"ARGUMENTS":[{"EVENT":"BUTTON_POST","METHOD":"UPDATE"}] }`.
lv_response = z2ui5_cl_http_handler=>http_post(
body = lv_request
).
@ -750,7 +750,7 @@ CLASS ltcl_unit_03_app_ajax IMPLEMENTATION.
ENDIF.
DATA(lv_id) = CONV string( <val> ).
DATA(lv_request) = `{"oUpdate":{"QUANTITY":"700"},"ID": "` && lv_id && `" ,"ARGUMENTS": { "0" : {"EVENT":"BUTTON_POST","METHOD":"UPDATE"} } }`.
DATA(lv_request) = `{"oUpdate":{"QUANTITY":"700"},"ID": "` && lv_id && `" ,"ARGUMENTS": [ {"EVENT":"BUTTON_POST","METHOD":"UPDATE"} ] }`.
* z2ui5_cl_http_handler=>client = VALUE #( body = lv_request ).
lv_response = z2ui5_cl_http_handler=>http_post(
body = lv_request ).
@ -947,5 +947,6 @@ CLASS ltcl_unit_04_deep_data IMPLEMENTATION.
CLEAR lo_data.
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
ENDMETHOD.
ENDCLASS.