Die Grundlage für meinen ABAP Report Wizard wurde von meinen SAP Entwickler Kollegen (Leonardo De Araujo, Rich Heilmanon und Alexandre Giguère ) geliefert und entwickelt. An dieser Stelle erstmal vielen Dank für die super Vorlage. Weitere Informationen könnt ihr auf Leonardos Blog @Reduce development costs with ABAP Report Wizard entnehmen.
Was ist der ABAP Report Wizard?
Mit Hilfe des Wizards können, auf sehr einfache Weise, Standard SAP Reports generiert werden. Folgende Schritte werden hierbei durchlaufen:
Verwendung ABAP Report Wizard
1. Report Type definieren:
- Titel des Programms
- Datenquelle: Tabelle oder Table-join
Die Besonderheit des Table-joins liegt darin, dass wir uns erstmal keine Gedanken darüber machen müssen, wie der SQL String auszusehen hat, da in dem Wizard der SAP Query Designer verwendet wird. Das Resultat wird dann im Hintergrund als fertiger SQL ABAP Code generiert.
2. Selektion Bedingungen definieren:
Auf Basis der gewählten Tabelle werden automatisch die möglichen Felder geladen und stehen zur weiteren Verwendung bereit. Diese können wie folgt verwendet werden:
- Select Option
- Parameter
- Obligatorisch
3. Ausgabe definieren
Welche Felder sollen ausgegeben werden? Die Ausgabe wird mit SALV realisiert.
4. Weitere Optionen
- Erstellung Eventhandler
- Layout speichern zur Verfügung stellen
Selbst in der ursprünglichen Variante ist der Wizard ein sehr gutes Tool und auch für diejenigen, die keine besonderen Ansprüche haben, geeignet. Wie ich bereits erwähnt hatte, haben mir ein paar Funktionen gefehlt. Aus diesem Grund habe ich beschlossen, den Wizard ein wenig aufzumotzen.
Was ist neu?
- Eigene SALV Klasse(n) (SALV Framework)
--> YCL_SO5_SALV; YCL_SO5_SALV_EVENT_HANDLER; YCX_SO5_SALV; Y_SO5_SALV_MSG
Mit Sicherheit haben einige von euch mitbekommen, dass ich eine Art SALV Framework implementiert habe. Dieses kommt bei dem neuen Report Wizard zum Einsatz. Mit meinem SALV Objekt werden euch eine Menge neuer Funktionen wie z.B. Spaltenüberschriften, Wertehilfe für bestimmte Zellen aktivieren, TopPage EndPage erstellen und vieles mehr. Das beste jedoch ist das bereits implementierte Event Handling und die Möglichkeit die vorhanden Events zu redefinieren. Weitere Dokumentationen zum SALV folgen demnächst. - Erweitertes Event Handling:
- on_double_click,
- on_user_command,
- handle_toolbar,
- on_data_changed,
- handle_data_changed,
- on_f4.
- ALV Eingabebereitschaft (UserCommand: CHANGE)
Das ALV Grid kann nun auch für die Bearbeitung eingesetzt werden. Lediglich das Doing muss von euch implementiert werden.
- Hinzufügen einer eigenen Funktion in der ALV Toolbar (Save History)
Hier als Beispiel die Historie Funktionalität und wie diese implementiert wurde. Dient als Referenz, um weitere Funktionen hinzuzufügen.
- Wertehilfe im ALF Grid aktivieren
Es gibt nichts Schlimmeres, als die Wertehilfe für eigene Felder manuelle zu aktivieren.
- Anzeige der Exception Column
Es war noch nie so einfach wie jetzt, die Exception Column anzuzeigen. - Anzeige der Symbol Column
Wie Exception Column, nur mit Möglichkeit der Anzeige von Symbolen
- Übersetzung DE
Installationsanleitung
Der erste Schritt besteht darin, die SAPlink-Nugget-Datei (NUGG_ABAP_REPORT_WIZARD_V2.nugg) in euer System zu importieren.
Wenn SAPlink auf eurem System nicht installiert wurde, könnt ihr SAPlink @https://app.assembla.com/spaces/saplink/wiki herunterladen.
Darüber hinaus werden folgende Plugins für den erfolgreichen Import des Report Wizards benötigt:
- Function Groups
- Message Classes
- Dictionary Objects
- Documentation
Diese können @https://app.assembla.com/spaces/saplink/wiki/SAPlink_plugin_list heruntergeladen werden.
Sobald SAPlink und die benötigten Plugins zur Verfügung stehen, kann das Nugget importiert werden.