ABAP Report Wizard 2.0 Empfehlung

  • Freitag, 17. Februar 2017 09:12
Artikel bewerten
(2 Stimmen)

Hallo zusammen,

heute möchte ich euch eine weitere Arbeit von mir vorstellen, die ich gerne mit euch teilen möchte. Einige haben mit Sicherheit schon von dem SAP Report Wizard gehört. Manche haben diesen vielleicht sogar auch im Einsatz. Jedenfalls war ich schon sehr lange auf der Suche nach der Möglichkeit, sehr einfach und strukturiert einen ABAP Report zu generieren. Der damals vorgestellte Wizard ist nun heute weiter weit über 10 Jahre alt. Zeit für ein kleines Update. :-)

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.

Hierzu bitte folgende Schritte durchführen:
 
1. ZSAPlink starten und Nugget importieren
Wählen Sie den Radiobutton für "Import Nugget", und wählen Sie die Nugget-Datei aus dem Datei Speicherort aus. Schließlich klicken Sie auf die Schaltfläche "Ausführen", oder drücken Sie F8.
 
 
 
Ob der Import erfolgreich gewesen ist, erkennen Sie an der SAP Rückmeldung, die nach der Verarbeitung angezeigt wird.
 
 
 
2. Aktivierung von importierten Objekten
Als Nächstes müssen alle Objekte, die importiert wurden, aktiviert werden. Natürlich gibt es ein paar Möglichkeiten, dies zu tun, aber um eine saubere Aktivierung zu gewährleisten, kann wie folgt vorgegangen werden:
      • SE80 und inaktive Objekte auswählen

      • Datenelemente öffnen und die entsprechenden Wizard Elemente markieren. Anschließend gemeinsam aktivieren

      • Nun müssen die Strukturen und Tabellen Typen aktiviert werden

      • Anschließend das Programm für den SALV GUI STATUS

      • Bevor nun die beiden Funktionsgruppen aktiviert werden können, müssen vorher noch die Interfaces und Klassen aktiviert werden.

      • Nun können die beiden Funktionsgruppen aktiviert werden.

Sollte es hierbei Probleme geben, so sollten die Funktionsgruppen separat geöffnet und aktiviert werden.

Abschließend sollten alle Objekte aktiviert sein. 

3. Muster erstellen
 
In der SE80 bitte das Muster "YSO5_REPORT_WIZARD" anlegen. 
SAP Menü: Hilfsmittel --> Weitere Hilfsmittel --> Muster bearbeiten --> Muster anlegen
 
 
Im Editor selbst dann Folgendes einfügen: *$&$MUSTER und dann speichern.
 
 
Parallel kann auch gleich das Muster "YSO5_JOIN_WIZARD" angelegt werden. Der Join Wizard kann nämlich auch separat geladen werden.
 
Sobald der letzte Schritt abgeschlossen wurde, ist der Report Wizard voll funktionsfähig.
 
ABAP Report Wizard starten
  
Nachdem das Muster erstellt wurde, kann nun der Assistent verwendet werden. In SE80 einfach den Cursor auf eine leere Zeile im Quelltext-Editor und auf die Schaltfläche "Muster" klicken.
 
  
Im Dialog das Optionsfeld für "Pattern" auswählen und den Namen des Musters "YSO5_REPORT_WIZARD" eingeben.
 
Nach der Bestätigung wird der Assistent gestartet.
 
Ich hoffe euch gefällt das neue Update. Über Feedback würde ich mich freuen.
Solltet ihr Fragen haben, einfach die Kommentarfunktion nutzen.
 
In diesem Sinne

Blogging is a conversation, not a code.

Download

Dateien:
Information
Erstelldatum 18.02.2017
Änderungsdatum 18.02.2017
Version 1.0
Dateigröße 614.19 KB
Erstellt von Stefan Dietrich
Geändert von Stefan Dietrich
Downloads 317
Lizenz
Preis

Letzte Änderung am Samstag, 18 Februar 2017 18:34
Kommentare einblenden

Copyright © 2017 ABAP-Workbench.de