В ответе JozsefSzikszai вы получите дамп, когда структура и таблица базы данных будут другими. Итак, вы можете попробовать это -
DATA: lv_tabname TYPE tabname.
DATA: lo_tabtype TYPE REF TO cl_abap_tabledescr,
lo_struct_type TYPE REF TO cl_abap_structdescr,
lr_data TYPE REF TO data,
lt_comp_tab TYPE cl_abap_structdescr=>component_table,
ls_comp_fld TYPE cl_abap_structdescr=>component.
FIELD-SYMBOLS: <fs_tab> TYPE ANY TABLE,
<fs_struct> TYPE ANY.
lv_tabname = 'ZTEST_DIV'. " Give tab name from your dropdown select
lo_struct_type ?= cl_abap_typedescr=>describe_by_name( lv_tabname ).
lt_comp_tab = lo_struct_type->get_components( ).
lo_struct_type = cl_abap_structdescr=>create( lt_comp_tab ).
lo_tabtype = cl_abap_tabledescr=>create( lo_struct_type ).
CREATE DATA lr_data TYPE HANDLE lo_tabtype.
ASSIGN lr_data->* TO <fs_tab>.
*CREATE DATA lr_data TYPE HANDLE lo_struct_type. " Use this when you want same table structure
*ASSIGN lr_data->* TO <fs_struct>.
* dynamic select
SELECT *
FROM (lv_tabname)
INTO CORRESPONDING FIELDS OF TABLE <fs_tab>.
Это будет более общим. Это создаст динамическую внутреннюю таблицу, используя lv_tabname
. Таким образом, в операторе Select вы не получите дамп.