This is a test message to test the length of the message box.
Login
|
ABAP Tipp ALV Variante transportieren
Erstellt von Software-Heroes

ABAP Tipp - ALV Varianten transportieren

1516

In diesem kleinen Artikel zeigen wir dir einige Tipps im Bezug auf ALVs, Varianten und die Verteilung im System.

Werbung


ALV oder auch SAP List Viewer wird für alle möglichen Ausgaben im System verwendet und hatte sich lange Zeit als neuer Standard nach den Drucklisten etabliert. Für die Entwicklung eines ALV gibt es mittlerweile viele verschiedene Methoden, die alle ihre Vor- und Nachteile haben.

 

Methoden

Heute existieren noch verschiedene Methoden um einen ALV zu erzeugen, dazu ein kurzer Überblick sortiert mit der ältesten Technologie zuerst.

  • Funktionsbaustein REUSE_ALV_GRID_DISPLAY
  • Klasse CL_GUI_ALV_GRID
  • Klasse CL_SALV_TABLE

 

Wieso eigentlich zwei Klassen im System wirst du dich fragen? Wenn du dir die ältere Klasse CL_GUI_ALV_GRID anschaust, wirst du schnell feststellen, dass hier ein Refactoring dringend nötig war. Die Klasse ist mit ca. 220 Methoden und über 25000 Zeilen Code riesig, nicht mehr richtig wartbar und unübersichtlich. Die neue Klasse CL_SALV_TABLE ist die Überarbeitung der alten Klasse nach modernen OO Prinzipen.

Ein Nachteil der neuen Klasse ist aber, dass damit keine Änderung an Daten im ALV durchgeführt werden können. Die Klassen bieten reine Anzeigefunktionalität. Damit solltest du auf jeden Fall beide Klassenvarianten beherrschen.

 

Aufbau

Hier ein kleines Beispiel, wie man mit wenig Code direkt eine ALV aufbaut und anzeigt. Dazu lesen wir im ersten Schritt die Buchungskreise, rufen die Factory auf, aktivieren noch ein paar Einstellungen und zeigen die Daten auf dem Bildschirm an. Dazu ist dann auch kein seperates Dynpro notwendig und man erhält auch die Funktionsleiste dazu.

SELECT *
 FROM t001
 INTO TABLE @DATA(lt_companies).

cl_salv_table=>factory(
 IMPORTING r_salv_table = DATA(lo_alv)
 CHANGING t_table = lt_companies ).

DATA(lo_functions) = lo_alv->get_functions( ).
lo_functions->set_all( ).

DATA(lo_layout) = lo_alv->get_layout( ).
lo_layout->set_default( abap_true ).
lo_layout->set_key( VALUE #( report = sy-repid handle = '0001' ) ).
lo_layout->set_save_restriction( ).

lo_alv->display( ).

 

Durch die Konfiguration der Funktionen und des Layout-Handlings erhältst du die gewohnte Funktionsleiste, mit der du dann das Layout des ALV ändern und sichern kannst.

 

Transport von Varianten

Für den Transport einer Variante musst du zuerst einmal deine Variante im System konfigurieren und anlegen. Dies kannst du den letzten drei Buttons der Funktionsleiste machen. Nachdem du die Variante angelegt hast und noch in der Anzeige deiner Daten bist, kannst du über das Menü unter dem Punkt "Einstellungen -> Layout -> Verwalten" abspringen.

 

Im Anschluss erhältst du eine Übersicht der Varianten zum aktuell ALV. Hier kannst du dir die zu transportierende Variante wählen und über das Menü unter dem Punkt "Layout -> Transportieren", die Variante in einen bestehenden Transport übernehmen oder einen Neuen anlegen.

 

Du benötigst einen Customizing Transport im System, um die Aufzeichnung durchzuführen. Der Eintrag im Transport sieht dann wie folgt aus.

 

Fazit

Wenn es um Darstellung und Änderung von Daten geht, haben sich mittlerweile viele anderen Technologien etabliert, die auch zumeist unabhängig von der SAP GUI sind. Webdynpro oder SAP Fiori basieren auf Webtechnologien, werden aber in Bezug auf Schnelligkeit in der Entwicklung wahrscheinlich die klassische Liste im System nicht so schnell einholen. Zumindest die nächsten Jahre wird damit der ALV ein wichtiger Bestandteil für den ABAP Entwickler bleiben.


Enthaltene Themen:
TippALVVarianten transportieren
Kommentare (0)



Und weiter ...

Bist du zufrieden mit dem Inhalt des Artikels? Wir posten jeden Dienstag und Freitag neuen Content im Bereich ABAP und unregelmäßig in allen anderen Bereichen. Schaue bei unseren Tools und Apps vorbei, diese stellen wir kostenlos zur Verfügung.


ABAP in der Praxis - Objekt Generator

Kategorie - ABAP

In diesem Beispiel schauen wir uns an, wie wir mit der XCO Bibliothek einen wiederverwendbaren Generator erstellen, um uns für unsere Tutorials etwas Arbeit zu sparen und automatisiert DDIC Objekte zu generieren.

09.01.2026

ABAP Tipp - Logging Performance

Kategorie - ABAP

Wie sieht es eigentlich mit der Performance des BAL Logs in der ABAP Cloud Welt aus? Schauen wir uns dazu drei Lösungen an und messen die Performance in verschiedenen Szenarien.

19.12.2025

ABAP in der Praxis - Fiori Daten fehlerhaft

Kategorie - ABAP

In diesem kleinen Praxisbeispiel schauen wir uns einen Fehlerfall in Fiori an. Hier werden die Daten im UI falsch angezeigt, obwohl alles sonst richtig zu sein scheint. Die Spur führt uns durch den RAP Stack in eine andere Richtung.

10.10.2025

ABAP Tipp - Handling von Funktionsbausteinen

Kategorie - ABAP

Wie gehst du eigentlich mit Funktionsbausteinen und der Fehlerbehandlung innerhalb von ABAP um? In diesem kleinen Tipp schauen wir uns die Behandlung auch im Rahmen von RFC an.

26.08.2025

ABAP Tipp - Generische Datentypen

Kategorie - ABAP

Was unterscheidet eigentlich CLIKE von CSEQUENCE? Generische Typen können manchmal etwas undurchsichtig sein und als ABAP Entwickler wählen wir vielleicht den Typen zu generisch.

12.08.2025