Kontakt & Service
Jetzt Beratung vereinbaren

In wenigen Schritten einen Beratungs­termin mit unseren Experten buchen.

Anwender Helpdesk

Hilfestellung bei Problemen in Ihren SAP-Systemen.

Schulungen

Unser Schulungsangebot. Jetzt informieren!

Webinare

Unser Webinarangebot. Jetzt informieren!

SALV Spickzettel

News & Wissen SALV-Spickzettel: Benutzerdefinierte Tabellenauflistungen in SAP-Systemen

In unserem ersten Teil „SALV-Spickzettel: Daten schnell & strukturiert darstellen" sind wir auf die grundlegenden Funktionen des SALV eingegangen. Im Folgenden wollen wir einen detaillierten Blick auf spezielle Funktionalitäten und Eigenschaften des SALV werfen.

Zeilen / Spalten färben

Farben im SALV werden über die Struktur LVC_S_SCOL gesteuert. In der Datenstruktur des SALV muss eine Tabelle vom Typ LVC_T_SCOL angehangen werden:

In der lvc_t_scol können folgende Parameter gesetzt werden:

  • FNAME: Hier kann eine Spalte angegeben werden, die die Farbe annimmt. Wird das Feld nicht befüllt, wird die gesamte Zeile gefärbt.
  • COLOR: Hier sind die Farbcodes hinterlegt.
  • COL: Farbcode
    • 0: Keine Farbe
    • 1: Blau
    • 2: Grau
    • 3: Gelb
    • 4: Blau / Grau
    • 5: Grün
    • 6: Rot
    • 7: Orange
  • INT: Intensified (0 = heller Farbton; 1 = dunkler Farbton)
  • INV: Inverse ( 0 = Background; 1 = Schrift)
  • NOKEYCOL: 0 = Keyfeld wird nicht gefärbt; 1 = Keyfeld nimmt auch Farbe an

Beispiel – komplette Zeile färben:

Beispiel – einzelne Felder färben:

Vor der Display-Methode des SALV muss die Spalte gesetzt werden, in der Style- bzw. Farb-Informationen enthalten sind.

Im Parameter der set_color_column-Methode wird der Spaltenname aus der Datendeklaration übergeben.

Hotspot

Um einen einfachen und schnellen Zugang aus dem SALV beispielsweise in einen Beleg o. ä. zu ermöglichen, kann man einer Spalte die Eigenschaft eines Hotspots zuweisen. Wird auf den Wert der Spalte geklickt, wird ein Event im SALV ausgelöst. In diesem Event kann man z. B. den Absprung in eine Transaktion programmieren.

Zunächst wird eine lokale Event-Klasse benötigt. Alternativ kann man die Handler-Methoden auch in eine bereits vorhandene Klasse implementieren.

Vor der Ausgabe des SALV muss noch der Event-Handler registriert und die jeweiligen Spalten benannt werden, die für das Event gelten sollen:

Beispiel:

Summen und Aggregationen

Generell kann der User Summen und Aggregationen über die Standard Buttons in der Toolbar manuell einstellen. Doch die SALV-Klasse bietet auch die Möglichkeit, dies im Code einzustellen.

Eine Summe über ein Feld des gesamten Tabelleninhalts wird folgendermaßen eingestellt:

Es besteht auch die Möglichkeit, Zwischensummen als Gruppe zu einem anderen Feld zu bilden. Hierfür muss zunächst die Spalte, die gruppiert werden soll, auf- oder absteigend sortiert werden.

Beispiel:

Toolbar

Die Standardfunktionen der SALV-Toolbar lassen sich folgendermaßen ein- bzw. ausblenden:

Man hat auch die Möglichkeit, einzelne Standardfunktionen der Toolbar einzublenden.

Die einzelnen Methoden zum Ein- bzw. Ausblenden der Standardfunktionen findet man in der Klasse CL_SALV_FUNCTIONS_LIST.

Custom-Buttons

Mit der Methode ADD_BUTTON können eigene Funktionen der Toolbar hinzugefügt werden.

Über den Parameter position können Sie steuern, ob der Button links (1) oder rechts (2) der Standardbuttons positioniert wird.

Beispiel:

Fazit

Zusammenfassend lässt sich sagen, dass das SALV eine leistungsstarke Bibliothek ist, die es Entwicklern ermöglicht, benutzerdefinierte Tabellenauflistungen in SAP-Systemen schnell und einfach zu erstellen. Durch die Verwendung der verschiedenen Klassen, die in der Bibliothek enthalten sind, kann man eine Vielzahl von Funktionalitäten bereitstellen.

Das SALV ist eine unverzichtbare Ressource für SAP-Entwickler, die benutzerdefinierte Tabellenauflistungen erstellen müssen. Es bietet eine einfache Möglichkeit, komplexe Funktionalitäten bereitzustellen und trägt so zu einer verbesserten Benutzerfreundlichkeit bei.

 

Stand: 3. Februar 2023
Newsletter Setzen Sie auf fundiertes Wissen aus allen Bereichen unserer Branche. Regelmäßig und stets aktuell.
Beratende Person
Kontakt Haben Sie Fragen oder wünschen weitere Informationen? Unsere Experten beraten Sie gerne.