[ABAP] SALV-Table – Spaltenbreite einstellen

Variante 1 (set_optimize)

DATA: o_alv TYPE REF TO cl_salv_table.
 
...

* damit sich set_optimize an long_text ausrichtet, darf short_text und medium_text nicht gesetzt sein
DATA: o_col TYPE REF TO cl_salv_column.

* Spalte 'CARRID'
o_col = o_alv->get_columns( )->get_column( 'CARRID' ).
o_col->set_short_text( '' ).
o_col->set_medium_text( '' ).
o_col->set_long_text( 'Carrier-ID' ).
          
* optimale Spaltenbreite für alle Spalten setzen
o_alv->get_columns( )->set_optimize( abap_true ).

Variante 2 (set_output_length)

	
DATA: o_alv TYPE REF TO cl_salv_table.
 
...
 
* Spaltenbreite setzen
DATA: o_col TYPE REF TO cl_salv_column.
 
o_col = o_alv->get_columns( )->get_column( 'CARRID' ).
* funktioniert nur, wenn set_optimize( ) nicht gesetzt ist
o_col->set_output_length( 15 ).