ALV-Listen im CL_SALV_TABLE – Teil 2

ALV-Liste mit Überschriften

Nachdem ich zuletzt gezeigt habe, wie schnell man mit der Klasse cl_salv_table ALV-Listen erstellen kann, möchte ich nun zeigen, die man das Aussehen der Liste beeinflussen kann. In der Klasse gibt es die Methode get_display_settings, mit der folgende Einstellungen vornehmen kann:

Feature Methode Beschreibung
Überschrift set_list_header Legt die Überschrift der ALV-Liste fest
Größe der Überschrift set_list_header_size Legt die Größe der Überschrift fest. Mögliche Werte C_HEADER_SIZE_SMALL, C_HEADER_SIZE_MEDIUM,

C_HEADER_SIZE_LARGE

Streifenmuster set_striped_pattern Alternierende Farben in den Zeilen (Standard: aus)
Horizontale Linien set_horizontal_lines Blendet die horizontalen Linien ein oder aus (Standard: ein)
Vertikale Linien set_vertical_lines Blendet die vertikalen Linien ein oder aus (Standard: ein)
Spaltenbreite optimieren set_optimize Spaltenbreite an Textlänge anpassen (kein Text wird abgeschnitten, Standard: aus)
Schlüsselspalten fixieren set_key_fixation Schlüsselspalten bleiben beim Scrollen im Bild

Im folgendem ein Beispiel:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
REPORT ztest_salv_header.
 
DATA: gt_spfli TYPE STANDARD TABLE OF spfli.
DATA: go_alv TYPE REF TO cl_salv_table.
 
*PARAMETERS: p_select type xfeld.
 
"Erzeugen von Testdaten
SELECT * FROM spfli
    INTO CORRESPONDING FIELDS OF TABLE gt_spfli
    UP TO '20' ROWS.
 
"ALV-Objekt erzeugen mit statischer Factory-Methode
TRY.
    cl_salv_table=>factory(
      EXPORTING
        list_display   = if_salv_c_bool_sap=>false  "TRUE fuer Listenausgabe
      IMPORTING
        r_salv_table   =  go_alv     "Rückgabe des ALV-Objektes
      CHANGING
        t_table        = gt_spfli ). "Tabelle für Anzeige
  CATCH cx_salv_msg.
    "Fehlerbehandlung
ENDTRY.
 
*--------------------------------------------------------------------*
* Einstellungen für Überschriften
*--------------------------------------------------------------------*
"Überschrift festlegen
go_alv->get_display_settings( )->set_list_header('Irgendeine tolle Überschrift').
go_alv->get_display_settings( )->set_list_header_size( cl_salv_display_settings=>c_header_size_large ).
go_alv->get_display_settings( )->set_striped_pattern( abap_true ).
go_alv->get_display_settings( )->set_horizontal_lines( abap_true ).
go_alv->get_display_settings( )->set_vertical_lines( abap_false ).
go_alv->get_columns( )->set_optimize( abap_true ).
go_alv->get_columns( )->set_key_fixation( abap_true ).
 
"ALV im FullScreen anzeigen
go_alv->display( ).
ALV-Liste mit Überschriften

Be the first to comment

Teil mir was mit