Code: Alles auswählen.
LOOP AT it_parameters INTO ls_param WHERE
clsname = ls_methode-interface AND cmpname = ls_methode-methname.
CASE ls_param-pardecltyp .
WHEN 0.
ls_parameter-kind = cl_abap_objectdescr=>exporting.
WHEN 1.
ls_parameter-kind = cl_abap_objectdescr=>importing.
WHEN 2.
ls_parameter-kind = cl_abap_objectdescr=>changing.
WHEN 3.
ls_parameter-kind = cl_abap_objectdescr=>returning.
ENDCASE.
ls_parameter-name = ls_param-sconame.
IF ls_param-typtype = 0. "<--LIKE
CREATE DATA lv_like TYPE (ls_param-type).
CREATE DATA lr_data LIKE lv_like.
ELSEIF ls_param-typtype = 1. "<--TYPE
CREATE DATA lr_data TYPE (ls_param-type).
ELSEIF ls_param-typtype = 3. "<--TYPE REF TO
CREATE DATA lr_data TYPE REF TO (ls_param-type).
ENDIF.
ls_parameter-value = lr_data.
INSERT ls_parameter INTO TABLE lt_parameters.
ENDLOOP.
Code: Alles auswählen.
DATA: BEGIN OF my_data1,
werk LIKE mseg-werks,
matnr LIKE mseg-matnr,
betrag LIKE mseg-dmbtr,
END OF my_data1,
descr_ref1 TYPE REF TO cl_abap_structdescr.
descr_ref1 ?= cl_abap_typedescr=>describe_by_data( my_data1 ).
WRITE: / 'Typename :', descr_ref1->absolute_name.
WRITE: / 'Kind :', descr_ref1->type_kind.
WRITE: / 'Length :', descr_ref1->length.
WRITE: / 'Decimals :', descr_ref1->decimals.
WRITE: / 'Struct Kind :', descr_ref1->struct_kind.
WRITE: / 'Components :'.
WRITE: / 'Name', 30 'Kind', 40 'Length', 50 'Decimals'.