Show TOC

ZP 26: Bevor angezeigte Daten in einer Liste ausgegeben werdenLocate this document in the navigation structure

Verwendung

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.

Prozess

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.
         
Hinweis

Weitere Informationen entnehmen Sie bitte der Dokumentation der Funktionsbausteine "REUSE_ALV_...".

Zusatzinformation Listenausgabe

Zusatzinformation Listenausgabe

Um 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.