Advertising:
Get column names of a structure
From SAP Knowledge Base
DATA columns TYPE if_fdt_doc_spreadsheet=>t_column.
DATA(desc) = CAST cl_abap_structdescr( cl_abap_structdescr=>describe_by_data( struc_from_itab ) ).
LOOP AT desc->get_components( ) ASSIGNING FIELD-SYMBOL(<c>).
IF <c> IS ASSIGNED.
IF <c>-type->kind = cl_abap_typedescr=>kind_elem.
APPEND VALUE #( id = sy-tabix
name = <c>-name
display_name = <c>-name
is_result = abap_true
type = <c>-type ) TO columns.
ENDIF.
ENDIF.
ENDLOOP.
DATA output TYPE WB2_S_BVDETAIL_OUTPUT_TAB
DATA(tdesc) = CAST cl_abap_tabledescr( cl_abap_tabledescr=>describe_by_data( output ) ).
DATA(sdesc) = CAST cl_abap_structdescr( tdesc->get_table_line_type( ) ).
DATA(components) = sdesc->get_ddic_field_list( ).