Information

Please visit our international page to see all the numbers matching your region.

SAP-Praxishandbuch ABAP Teil 2: Performance, Erweiterungen, Transportwesen - 2., erweiterte Auflage

SAP-Praxishandbuch ABAP Teil 2: Performance, Erweiterungen, Transportwesen - 2., erweiterte Auflage

Langue

Allemand

Pages

292

Édition

2

Niveau

Intermédiaire

ISBN

9783960122241

ISBN Imprimer

9783960122197

Livres numériques

ou accéder à l'ensemble du contenu

Taux forfaitaire

19 € par mois

  • Licence unique
  • Plus de 1000 livres électroniques et tutoriels vidéo
  • Accès instantané
  • 12 mois(228 €par an)
  • renouvellement automatique

Plus de détails

Ein umfassendes Kundenprojekt zu realisieren, stellt den ABAP-Entwickler vor vielfältige Aufgaben. Nachdem Teil 1 dieses Handbuchs vor allem auf die grundsätzliche Strukturierung einer ABAP-Programmieranforderung abzielte, befasst sich Teil 2 mit wichtigen Detailaspekten. Die neue Auflage berücksichtigt dabei besonders die Möglichkeiten, die sich durch den rasanten Fortschritt in der Datenbank-, Internet- und Entwicklungstechnologie ergeben.

Hier erfahren Sie, welche Einflussmöglichkeiten der Entwickler auf die Programmperformance hat, um unnötig lange Programmlaufzeiten zu vermeiden und die Vorteile der schnellen HANA-Datenbank voll auszureizen. Sie lernen effiziente ABAP-Programmierlogik und das Data Dictionary genauer kennen. Zudem erfahren Sie, wie der SAP-Standard mit Werkzeugen wie dem Modifikationsassistenten, mit User-Exits, Screen- Erweiterungen, Enhancement-Technologie oder auch Customer Includes sinnvoll erweitert werden kann, um damit spezifische Anforderungen eines Unternehmens zu berücksichtigen. Der Autor zeigt Ihnen erprobte Lösungen rund um Berechtigungskonzepte und das SAP-Transportwesen und hilft Ihnen, das SAP Support Portal für notwendige Wartungsarbeiten zu nutzen. Profitieren Sie von den Erfahrungen eines Senior Developers!

  • Auswirkungen neuer Technologien auf die Praxis der ABAP-Entwicklung
  • Änderungen und Erweiterungen gegenüber dem SAP-Standard
  • Einflussmöglichkeiten des Entwicklers auf die Performance
  • Transportprozesse zur Produktivsetzung von Anwendungen

Exemple de lecture

2.1 Performance-Analyse

In SAP-Systemen gibt es verschiedene Hilfsmittel zur Performance-Analyse, u.a.

  • Performance-Trace mit der Transaktion ST05,
  • ABAP-Laufzeitanalyse mit der Transaktion SAT
  • Speziell für die HANA-Datenbank: der SAP HANA Plan Visualizer, dieses Tool ist in der SQL-Konsole des HANA Studio verfügbar.
  • Single-Transaction-Analyse mit der Transaktion ST12.
  • Systemübergreifende Perfromanceanalyse z.B. mit dem DBA-Cockpit oder mit dem SQL-Monitor. Beide Werkzeuge werden im Regelfall vom SAP-Basisteam verwendet und werden daher hier nicht weiter betrachtet.

Im folgenden Abschnitt finden Sie die zwei erstgenannten Tools eingehender erläutert.

2.1.1 Analyse mit der Transaktion ST05

Das wohl bekannteste Hilfsmittel zur Performance-Analyse ist die Transaktion ST05. Alternativ kann das Pull-down-Menü System • Hilfsmittel • Performance-Trace verwendet werden. Dieser Performance-Trace kann verschiedene Performance-/Leistungsanalysen durchführen:

  • SQL-Trace – protokolliert Datenbank-Zugriffe von Programmen und Transaktionen,
  • RFC-Trace – protokolliert instanzübergreifend den Aufruf von RFC-Funktionsbausteinen,
  • Enqueue-Trace – protokolliert das Sperren von Objekten,
  • Puffer-Trace – protokolliert, welche Zugriffe auf den Tabellenpuffer erfolgen und wie der Tabellenpuffer geladen wird,
  • HTTP-Trace – Analyse der Datenschnittstelle zwischen SAP und Web-Application-Server beim Einsatz von Web-Dynpros.

Die Performance-Analyse erlaubt die Protokollierung von einem oder mehreren dieser Aspekte. In der näheren Betrachtung beschränken wir uns auf den SQL-Trace, also die Protokollierung von Datenbank-Zugriffen.

In einem Bildschirmmodus rufen wir das Beispiel-Programm ZCU_ABAP_PERFORMANCE auf und wählen die Programmiertechnik »VIEW«. Über einen View mit Vertragskonten (FKKVKP), deren Verträge (EVER) und die Customizing-Tabelle TE097AT (Texte zum Kontenfindungsmerkmal) wird eine Selektion ausgeführt.

Bevor das Programm gestartet wird, rufen wir in einem zweiten Bildschirmmodus mit der Transaktion ST05 die Performance-Analyse auf (siehe Abbildung 2.1).

ABAP

Abbildung 2.1: Selektionsbildschirm der Transaktion ST05 (Performance-Trace)

Nachdem wir den SQL-Trace ausgewählt und den Filter auf den eigenen Usernamen eingeschaltet haben, starten wir durch Anklicken des Buttons die Protokollierung von Datenbank-Zugriffen des Users.

Keine parallelen Programmläufe bei der Performance-Analyse mit der Transaktion ST05

Bei der Performance-Analyse mit der Transaktion ST05 ist darauf zu achten, dass unter Ihrem User keine weiteren Programme auf dem System laufen (z.B. Hintergrundprogramme), da ansonsten die Analyse falsche Ergebnisse liefert.

Jetzt wird das zu analysierende Programm ZCU_ABAP_PERFORMANCE gestartet. Sobald dieses Programm die selektierten Daten zur Anzeige bringt, wechseln wir wieder in den Bildschirmmodus für den SQL-Trace und verwenden den Button , um die Protokollierung zu beenden.

Die Anzeige des SQL-Trace wird über den Button gestartet.

ABAP

Abbildung 2.2: Selektionsbild zur Anzeige des SQL-Trace

Im darauffolgenden Bild (siehe Abbildung 2.2) können Einschränkungen zur Selektion des Performance-Trace vorgenommen werden. In diesem Selektionsbild ist der Zeitraum voreingestellt, in dem der User den letzten Performance-Trace ausgeführt hat. Wird diese Auswahl ohne Änderungen mit dem Icon bestätigt, erhalten Sie das Protokoll der Datenbank-Zugriffe des letzten Programmlaufs.

ABAP

Abbildung 2.3: SQL-Trace eines Programmlaufs mit der Programmiertechnik »VIEW«

Der Protokollausschnitt in Abbildung 2.3 zeigt, dass die Selektion von 372.420 Datensätze durch das Programm insgesamt 2.860.928 Mikrosekunden (0,000001 Sekunden) dauerte. Also benötigte der Programmlauf ca. 2,86 Sekunden.

ABAP

Abbildung 2.4: Button-Leiste im SQL-Trace

Auf bestimmten Zeilen ist ein direkter Absprung in den protokollierten Quellcode durch einen Doppelklick auf einen der in Abbildung 2.4 gezeigten Icons möglich. So können für diese Zeilen weitere Informationen aus dem Trace-Protokoll gewonnen werden, z.B.

Standard ALV-Grid Funktionen anzeigen: ermöglicht die Verwendung von Standard-ALV-Grid Funktionen für weitere Auswertungen des angezeigten Protokolls (z.B. Sortierung, Filter, Zwischensummen, etc).

Anweisung anzeigen: Hier werden Details zur markierten Zeile, z.B. Details zum View, angezeigt (siehe Abbildung 2.5).

DDIC Informationen anzeigen: zeigt Dictionary-Informationen zum Objekt (siehe Abbildung Abbildung 2.6).

Ausführungplan anzeigen: Hier werden Ihnen Detailinformationen über die Ausführung des Views in der HANA-Datenbank angezeigt (siehe Abbildung 2.7).

ABAP

Abbildung 2.5: Anzeige des Select-Statements im SQL-Trace

ABAP

Abbildung 2.6: Dictionary-Informationen im SQL-Trace

ABAP

Abbildung 2.7: Auführungsplan der HANA-Datenbank zur Selektion der Daten

Mit dem im Ausführungsplan der HANA-Datenbank erhalten Sie einen Einblick in die Strategie des Datenbanksystems zur Selektion der Daten.

2.1.2 Laufzeitanalyse mit der Transaktion SAT

Mit der Transaktion SAT können Laufzeitanalysen beliebiger ABAP-Programme durchgeführt werden. Diese Transaktion ist die modernere Alternative zur »alten« Transaktion SE30.

Die ABAP-Laufzeitanalyse ermöglicht eine vollständige Prüfung des Programms, und geht damit deutlich über die reine SQL-Analyse der Transaktion ST05 hinaus. Zur Erläuterung der Laufzeitanalyse nutzen wir die Transaktion SAT für einen Programmlauf des ZCU_ABAP_PERFORMANCE (siehe Abbildung 2.8).

Geben Sie der Laufzeitanalyse eine Bezeichnung (hier: Selektion mit View). Verwenden Sie im Selektionsbild im Subscreen Im Dialog den Radiobutton Programm und geben Sie in das leere Feld dahinter den Namen des Programmes ein (hier ZCU_ABAP_PERFORMANCE), für das eine Laufzeitanalyse durchgeführt werden soll. Weitere Eingaben sind nicht erforderlich.

ABAP

Abbildung 2.8: Start der Performance-Analyse mit der Transaktion SAT

Mit dem Button starten Sie das Programm ZCU_ABAP_PERFORMANCE. Es wird zunächst dessen Selektionsbildschirm angezeigt. Hier tätigen Sie die erforderlichen Angaben und starten das Programm.

Nach Beendigung des Programmlaufs kehren Sie mit zweimaliger Betätigung des Icons zurück in die Laufzeitanalyse, die Sie in zunächst in der Übersicht sehen (siehe Abbildung 2.9).

ABAP

Abbildung 2.9: Übersicht der SAT-Laufzeitanalyse

Unter dem Reiter Desktop 1 kann der Entwickler im linken Bildschirmteil erkennen, in welchen Programmteilen und bei welchen Datenbankzugriffen das Programm wie viel Zeit zur Abarbeitung der Befehle benötigt hat (Laufzeitanalyse siehe Abbildung 2.10).

Die rechte Bildschirmseite der Laufzeitanalyse ermöglicht die zeitgleiche Betrachtung verschiedener Analyse-Ergebnisse.

ABAP

Abbildung 2.10: Laufzeitmessungen

Über den Reiter Hitliste lassen sich gleichartige Trace-Ereignisse zusammenfassen. Die Zeiten der jeweiligen Trace-Ereignisse werden dabei aufsummiert. Der Reiter DB-Tabellen zeigt die im Programm verwendeten Datenbank-Tabellen und die Zeiten für den Zugriff auf diese (siehe Abbildung 2.11).

ABAP

Abbildung 2.11: Datenbank-Zugriffe und deren Zeiten

Unter dem Reiter Zeiten werden für die Bearbeitung von Programmbefehlen und Programmereignissen (Events) benötigten Zeiten aufgeführt (siehe Abbildung 2.12).

ABAP

Abbildung 2.12: Zeiten für die Bearbeitung Anweisungen und Events

Wie die Abbildungen der Laufzeitanalysen zeigen, werden in diesen Darstellungen auch die Datenbank-Zugriffe und Programmbefehle von SAP-Systemprogrammen aufgeführt, auf die der Entwickler nur wenig Einfluss hat.

Wie Sie sehen konnten, bietet die ABAP-Laufzeitanalyse der Transaktion SAT im Vergleich zum Performance-Trace der Transaktion ST05 erheblich detailliertere Analysemöglichkeiten für den ABAP-Entwickler.

Support-Team

  • Pour plus d'aide, consultez notre documentation ou cliquez sur Chat.