1. Старый способ
1 2 |
DATA td TYPE sydes_desc. DESCRIBE FIELD ct_to INTO td. |
2. Новый способ
классы cl_abap_tabledescr и cl_abap_structdescr (для версии 4.6 и выше)
1 2 3 4 5 6 7 8 9 10 11 12 13 |
METHOD get_output_components . DATA: lcl_table_descr TYPE REF TO cl_abap_tabledescr, lcl_struc_descr TYPE REF TO cl_abap_structdescr . FIELD-SYMBOLS: <lt_output> TYPE STANDARD TABLE . ASSIGN me->output_tab->* TO <lt_output>. lcl_table_descr ?= cl_abap_typedescr=>describe_by_data( <lt_output> ). lcl_struc_descr ?= lcl_table_descr->get_table_line_type( ). it_components = lcl_struc_descr->components. ENDMETHOD. |
или еще проще
1 2 3 |
DATA: lo_struct TYPE REF TO cl_abap_structdescr. lo_struct ?= cl_abap_typedescr=>describe_by_name( structure_name ). ASSIGN lo_struct->components TO FIELD-SYMBOL(<fields>). |