FORM f_main_calc_updatex USING px_data TYPE any
px_start TYPE i
CHANGING py_datax TYPE any.
DATA: lr_tabdescr TYPE REF TO cl_abap_structdescr,
lr_data TYPE REF TO data,
lt_dfies TYPE ddfields.
FIELD-SYMBOLS: <fs_dfies> TYPE dfies,
<fs_source> TYPE any,
<fs_target> TYPE any.
CREATE DATA lr_data LIKE px_data.
lr_tabdescr ?= cl_abap_structdescr=>describe_by_data_ref( lr_data ).
" lt_dfies = cl_salv_data_descr=>read_structdescr( lr_tabdescr ).
lt_dfies = lr_tabdescr->get_ddic_field_list( ).
LOOP AT lt_dfies ASSIGNING <fs_dfies>." FROM px_start.
ASSIGN COMPONENT <fs_dfies>-fieldname OF STRUCTURE px_data TO <fs_source>.
CHECK sy-subrc = 0.
CHECK <fs_source> IS NOT INITIAL.
ASSIGN COMPONENT <fs_dfies>-fieldname OF STRUCTURE py_datax TO <fs_target>.
CHECK sy-subrc = 0.
IF sy-tabix < px_start.
<fs_target> = <fs_source>.
ELSE.
<fs_target> = abap_true.
ENDIF.
ENDLOOP.
ENDFORM.
SAP 反射技术
最新推荐文章于 2024-05-22 16:08:11 发布