
Process Flow
ZCL_API_TEST
Available Methods
ZCL_API_TEST Post Redefinition
METHOD if_rest_resource~post.
DATA:lr_data TYPE REF TO data.
FIELD-SYMBOLS:<lt_table> TYPE STANDARD TABLE.
TYPES: BEGIN OF ty_workarea,
name(50),
city(50),
region(20),
pin(6).
TYPES: END OF ty_workarea.
DATA: wa_data TYPE ty_workarea.
DATA(lv_request_body) = mo_request->get_entity( )->get_string_data( ).
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_request_body
CHANGING
data = lr_data
).
ASSIGN lr_data->* TO FIELD-SYMBOL(<ls_data>).
ASSIGN COMPONENT 'TESTAPI' OF STRUCTURE <ls_data> TO FIELD-SYMBOL(<lt_table_ref>).
ASSIGN <lt_table_ref>->* TO <lt_table>.
LOOP AT <lt_table> ASSIGNING FIELD-SYMBOL(<ls_line>).
ASSIGN <ls_line>->* TO FIELD-SYMBOL(<ls_line_value>).
ASSIGN COMPONENT 'NAME' OF STRUCTURE <ls_line_value> TO FIELD-SYMBOL(<ld_key>).
IF <ld_key> IS ASSIGNED.
ASSIGN <ld_key>->* TO FIELD-SYMBOL(<ld_key_value>).
wa_data-name = <ld_key_value>.
ENDIF.
ASSIGN COMPONENT 'CITY' OF STRUCTURE <ls_line_value> TO <ld_key>.
IF <ld_key> IS ASSIGNED.
ASSIGN <ld_key>->* TO <ld_key_value>.
wa_data-city = <ld_key_value>.
ENDIF.
ASSIGN COMPONENT 'REGION' OF STRUCTURE <ls_line_value> TO <ld_key>.
IF <ld_key> IS ASSIGNED.
ASSIGN <ld_key>->* TO <ld_key_value>.
wa_data-region = <ld_key_value>.
ENDIF.
ASSIGN COMPONENT 'PIN' OF STRUCTURE <ls_line_value> TO <ld_key>.
IF <ld_key> IS ASSIGNED.
ASSIGN <ld_key>->* TO <ld_key_value>.
wa_data-pin = <ld_key_value>.
ENDIF.
ENDLOOP.
ENDMETHOD.
Handler Class - Root Handler Method Redefinition
DATA(lo_router) = NEW cl_rest_router( ).
lo_router->attach( iv_template = '/ZAPI' iv_handler_class = 'ZCL_API_TEST' ).
ro_root_handler = lo_router.
Next step is to create SICF service. Go to tcode SICF -> default host -> New sub element
SICF Create Sub Element
SICF Add Handler List
POSTMAN JSON
Data in SAP
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
2 | |
2 | |
2 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 |