ALV (ABAP List Viewer)
Siehe Kategorie: ALV.
Der ALV (ABAP List Viewer) ist ein mächtiges Werkzeug von SAP um Listen erstellen. Mit relativ wenig Aufwand können komplexe tabellenartige Listen mit hoher Funktionalität und Usability programmiert werden.
Man hat bei dem ALV die Wahl ihn objektorientiert mit Hilfe der Klasse CL_GUI_ALV_GRID, bzw. den SALV*-Klassen zu programmieren oder mit Hilfe von REUSE-Funktionsbausteinen, die die objektorientierte Funktionalität in einer einfachen Schnittstelle kapseln.
In diesem Wiki werden sowohl die Nutzung vom Funktionsbaustein REUSE_ALV_GRID_DISPLAY_LVC als auch der objektorientierte ALV mit Hilfe der Klasse CL_GUI_ALV_GRID und die Nutzung der Klassen SALV* gezeigt.
ALV-Vorlagen
- ALV-Vorlage CL_GUI_ALV_GRID
- ALV-Vorlage REUSE_ALV_GRID_DISPLAY_LVC
- ALV-Vorlage CL SALV*
- Funktionsbaustein REUSE ALV POPUP TO SELECT
Layoutvarianten
Spezialfunktionen
Typisierungen
Fieldcat
- LVC_T_FCAT
- ALV Fieldcatalog auslesen und ändern
- Spalten eingabefähig machen
- Spalten farbig formatieren
- Zwischensummen bilden
- Spaltenüberschrift mit einem Tooltip
Layout
Sort
Variant
Vor- und Nachteile ALV-Technologien
- Es ist nicht einfach zu sagen welche der verschiedenen ALV-Technologien zu bevorzugen sind. Es gibt Unterschiede in der möglichen Funktionalität, dem Aussehen der ALV-Listen, der Komplexität der Programmierung und dem Maß der Notwendigkeit von objektorientierter Programmierung. Das gilt es abzuwägen. Im Optimalfall beherrscht man alle ALV-Technologien und benutzt je nach erforderlicher Komplexität, bzw. gewünschten Funktionalität die dafür passende ALV-Technologie.
- Persönlich habe ich bei den meisten Reporten mit ALV-Listausgabe den ALV-Funktionsbaustein REUSE_ALV_GRID_DISPLAY_LVC benutzt. Dieser Funktionsbaustein bietet eine höhere Funktionalität als der Funktionsbaustein REUSE_ALV_GRID_DISPLAY und zudem typisiert der LVC-Funktionsbaustein die Variablen wie bei der objektorientierten Programmierung der ALV-Listen. Mittlerweile ist der LVC-Funktionsbaustein auch sehr gut von SAP dokumentiert. Der Funktionsbaustein REUSE_ALV_GRID_DISPLAY sollte für neue Reporte nicht mehr verwendet werden. Der Funktionsbaustein REUSE_ALV_GRID_DISPLAY_LVC kombiniert mit einer passenden ALV-Vorlage hat sich in vielen Reporten bewährt.
- Flexibler als der Funktionsbaustein REUSE_ALV_GRID_DISPLAY_LVC ist die Verwendung der Klasse CL_GUI_GRID. Mit dieser Klasse ist alles möglich, was auch mit dem REUSE_ALV_GRID_DISPLAY_LVC möglich ist, aber noch einiges mehr, z. B.
- Wenn mehrere ALV-Listen (oder SAP-Controls) auf einem Dynpro dargestellt werden sollen
- Wenn die ALV-Liste in einen Dynpro mit anderen Dynprofeldern eingebettet ist
- Drag & Drop-Funktionalität
- Mit einer entsprechenden ALV-Vorlage CL_GUI_ALV_GRID lassen sich schnell flexible und sehr ergonomische Dynpros erstellen.
ALV-Funktionen
Der ALV bietet eine Reihe von Funktionalitäten, die bereits implizit mitgeliefert werden oder mit wenig Aufwand zu programmieren sind:
ALV und Excel
Selektionskennzeichen
Sortierung und Filter
Benutzereinstellungen speichern
Layout
Tooltip
Klasse CL_GUI_ALV_GRID
Klassen SALV*
Funktionsbaustein REUSE_ALV_GRID_DISPLAY_LVC
Mustercoding (Form-Routinen)
Zellen farbig und editieren
Funktionsbaustein REUSE ALV POPUP TO SELECT
Klasse CL_SALV_GUI_TABLE_IDA
Web-Links
- SAP ALV-Hilfe (PDF-Format)
- SAP-Hilfe: Methoden der Klasse CL_GUI_ALV_GRID
- SAP-Hilfe zur Methode SET_TABLE_FOR_FIRST_DISPLAY der Klasse CL_GUI_ALV_GRID
- Tricktresor: Artikel zu Klasse CL_GUI_ALV_GRID
- SAP-Hilfe: Methoden der Klasse CL_GUI_ALV_GRID
- SAP-Hilfe zur Methode SET_TABLE_FOR_FIRST_DISPLAY
- Tricktresor: Artikel zu Klasse CL_GUI_ALV_GRID
- www.kerum.pl: Events der Klasse CL_GUI_ALV_GRID
Literatur
- SAP List Viewer (ALV): A Practical Guide for ABAP Developers, von Kathi Kones (EN)
- Function Modules in ABAP: A Quick Reference Guide, von Tanmaya Gupta (EN), S. 277ff., 269