[ABAP] SALV-Table: Codevorlage mit den wichtigsten Einstellungen

* Beispieldaten
SELECT * FROM t000 INTO TABLE @DATA(it_t000).

* Copy & Paste - fertig
TRY.
* SALV-Table
    DATA: o_salv TYPE REF TO cl_salv_table.

    cl_salv_table=>factory( IMPORTING
                              r_salv_table   = o_salv
                            CHANGING
                              t_table        = it_t000 ).

* Grundeinstellungen
    o_salv->get_functions( )->set_all( abap_true ).
    o_salv->get_columns( )->set_optimize( abap_true ).
    o_salv->get_display_settings( )->set_list_header( 'Überschrift' ).
    o_salv->get_display_settings( )->set_striped_pattern( abap_true ).
    o_salv->get_selections( )->set_selection_mode( if_salv_c_selection_mode=>row_column ).

* Farbe für Spalte setzen
*o_salv->get_columns( )->set_color_column( 'COLOR' ).
* aufsteigend sortieren
*o_salv->get_sorts( )->add_sort( columnname = 'COL1' sequence = if_salv_c_sort=>sort_up ).

* Spaltenüberschriften: technischer Name und Beschreibungstexte
    LOOP AT o_salv->get_columns( )->get( ) ASSIGNING FIELD-SYMBOL(<c>).
      DATA(o_col) = <c>-r_column.
* Short Text leer setzen, damit das Autosize für die Spaltenüberschriften funktioniert
      o_col->set_short_text( || ).
* Medium Text leer setzen, damit das Autosize für die Spaltenüberschriften funktioniert
      o_col->set_medium_text( || ).
      o_col->set_long_text( |{ o_col->get_columnname( ) } [{ o_col->get_long_text( ) }]| ).
    ENDLOOP.

    o_salv->display( ).
  CATCH cx_root INTO DATA(e_txt).
    WRITE: / e_txt->get_text( ).
ENDTRY.