
Die Liste wird mit Hilfe des Funktionsbausteins REUSE_ALV_LIST_DISPLAY ausgegeben. Es können weitere Aktivitäten durchgeführt werden, wie zum Beispiel:
Ändern der Darstellung von Feldern der Tabelle/View
für den Druck versteckt gepflegte Felder für den Druck einbinden
Felder vom Druck ausschließen, die nicht als versteckt (hidden) im Data Dictionary gekennzeichnet wurden.
Für diesen Zeitpunkt gibt es keine Standardroutine. Bei der Realisierung der individuellen Routine stehen folgende globale Daten zur Verfügung:
|
Name |
REUSE_ALV_LIST_DISPLAY-Parameter |
Zweck |
Voreinstellung/Wert |
|
|---|---|---|---|---|
|
ALV_VALUE_TAB |
Interne Tabelle |
T_OUTTAB |
Enthält auszugebende Werte |
gefüllt |
|
VIM ALV_FCAT |
Interne Tabelle |
IT_FIELDCAT |
Feldkatalog |
Entsprechend Dictionary für die betreffende Tabelle/View |
|
VIM_ALV_VALUE_LENGTH |
Parameter |
- |
Nur zur Information: Interne Länge der Datensätze in der Wertetabelle |
definiert |
|
VIM_ALV_CALLED_BY |
Parameter |
- |
Routine, welche ALV_LIST_DISPLAY aufruft |
VIM_CALL_ALV |
|
VIM_ALV_EVENTS |
Interne Tabelle |
IT_EVENTS |
Innerhalb der Listenausgabe auszuführende Ereignisse |
Enthält Definition für TOP-OF-PAGE-Ereignis |
|
VIM_LIST_HEADER |
Interne Tabelle |
IT_LIST_COMMENTARY (Funktionsbaustein REUSE_ALV_COMMENTARY_WRITE) |
Definition des Listenkopfes |
gefüllt |
|
VIM_ALV_VARIANT |
Struktur |
IS_VARIANT |
Varianteninformation |
leer |
|
VIM_ALV_LAYOUT |
Struktur |
IS_LAYOUT |
Layoutinformation |
leer |
Falls die interne Tabelle ALV_VALUE_TAB unmittelbar nach dem Zeitpunkt leer ist, wird die Bearbeitung abgebrochen. Für Veränderungen des Listenaufbaus können Sie in Ihrer Form-Routine die oben aufgeführten Parameter ändern.
Sollten Ihnen die damit verbundenen Gestaltungsmöglichkeiten nicht genügen, können Sie im Feld VIM_ALV_CALLED_BY eine weitere eigene Form-Routine angeben, mit der Sie den ABAP-List-Viewer selbst aufrufen. Die Definition dieser zweiten Form-Routine muss der Form FORM <name> TABLES alv_value_tab genügen.
Die individuelle Formroutine sollte wie folgt aussehen:
FORM <name>:
FIELD-SYMBOLS: <fcat> TYPE slis_fieldcat_alv
* 1. Strukturtabelle modifizieren...
* 1.1. prüfen, ob bereits erledigt
READ TABLE vim_alv_fcat WITH KEY fieldname = <fieldname>
tabname = <tablename> TRANSPORTING NO FIELDS.
* 1.2. falls noch nicht erledigt > modifizieren
IF SY-SUBRC ...
* Feldinformationen für die evtl. hinzuzufügenden
* Felder besorgen
* VIM_ALV_FCAT modifizieren, z.B. APPEND oder DELETE
* 2. Wertetabelle modifizieren, z.B. Feldinhalte an die
* Zeilen anhängen oder Feldinhalte aus den Zeilen
* löschen
LOOP AT ALV_VALUE_TAB.
.........
ENDLOOP.
ENDFORM.
Weitere Informationen entnehmen Sie bitte der Dokumentation der Funktionsbausteine "REUSE_ALV_...".
Zusatzinformation Listenausgabe
Zusatzinformation ListenausgabeUm für den Druck zusätzliche Felder anzubieten, bzw. Felder auszuschließen, müssen folgende interne Tabellen angepasst werden:
VIM_ALV_FCAT enthält die Strukturbeschreibung der zu druckenden Daten
ALV_VALUE_TAB enthält die zu druckenden Daten, die entsprechend den Angaben im Feldkatalog VIM_ALV_FCAT abgelegt sind.