SAP Career Guide - A beginner’s manual on SAP careers for students and professionals

Gut auf den Punkt gebracht, mit einfach verständlichen Beispielen.

M. Küster

Praxishandbuch SAP-Basis – Troubleshooting in der Systemadministration

Die SAP-Anwendung bricht mit einem ABAP-Dump oder einer Fehlermeldung ab, ein Ausdruck wird einfach nicht ausgegeben, ein Anwender kann seine geplanten Aktionen aufgrund fehlender Berechtigungen nicht durchführen. Jeder SAP-Nutzer kennt diese oder ähnlich...

Leseprobe

Inhaltsverzeichnis

  • Vorwort
  • 1 System langsam bzw. ohne Reaktion
  • 2 Abbruch oder verzögerte Ausführung von Jobs
  • 3 Verbuchungsabbrüche
  • 4 Sperrverwaltung
  • 5 Probleme mit Nummernkreisen
  • 6 Programmabbrüche
  • 7 Druckprobleme
  • 8 Berechtigungsprobleme
  • 9 Fehleranalyse mithilfe des Debuggers
  • 10 Kommunikation über RFC- und HTTP-Schnittstellen
  • 11 Wichtige Log- und Tracedateien
  • 12 Wie findet man Tabellennamen?
  • Fazit
  • Anhang
  • A Der Autor
  • B Disclaimer

Weitere Informationen

Autor/in:

Manfred Sprenger

Katgorie:

IT Management, Administration

Sprache:

Deutsch

Leseprobe

2.1 Konzept der Hintergrundverarbeitung

2.1.1 Job und Job-Step

Die SAP-Hintergrundverarbeitung führt Jobs aus, die aus einem oder mehreren Job-Steps bestehen. Die Job-Steps werden gemäß der im Job festgelegten Reihenfolge ausgeführt. Im Normalfall erfolgt die Verarbeitung synchron, d.h., erst wenn ein Step beendet wurde, wird der nächste gestartet. Bei Abbruch eines Steps bricht der gesamte Job ab.

Datenbankänderungen bei Jobabbrüchen

Beachten Sie, dass Änderungen, die von einem Step durchgeführt und mit COMMIT bestätigt wurden, durch den Abbruch nicht zurückgesetzt werden.

Ein Job-Step kann durch ein ausführbares ABAP-Programm, ein externes Kommando oder durch ein externes Programm realisiert werden. Daher erfahren Sie zunächst, was hinter diesen Begriffen steht, um dann zur Definition eines Jobs überzugehen.

Ausführbares ABAP-Programm

Hierbei handelt es sich um ein ABAP-Programm vom Typ 1 (siehe Abbildung 2.1).

Troubleshooting

Abbildung 2.1: Ausführbares Programm

Ungeeignete Programmtypen für Job-Steps

Dialogtransaktionen, d.h. Anwendungen, die auf ABAP-Programmen vom Typ M = Modulpool basieren, können – ebenso wenig wie Funktionsbausteine – nicht zur Definition eines Job-Steps verwendet werden.

Verfügt das für einen Job-Step infrage kommende ABAP-Programm über ein Selektionsdynpro, muss zumindest eine sogenannte Variante vorhanden sein. Diese beinhaltet die für den Startzeitpunkt des Job-Steps relevanten Werte für die Selektionsparameter des Programms. Bei der Definition des Job-Steps sind in diesem Fall der Name des Programms sowie der Variante anzugeben.

Externes Programm

Ein externes Programm ist eine ausführbare Datei auf Hostsystemen, auf die das SAP-System zugreifen kann. Zu diesen Systemen gehören insbesondere die Applikationsserver des SAP-Systems. Externe Programme werden, wenn sie Bestandteile eines Jobs sind, normalerweise vom Betriebssystembenutzer adm, also z.B. se1adm, ausgeführt. Beachten Sie, dass externe Programme betriebssystemabhängig benannt und parametrisiert sind. Um beispielsweise das Inhaltsverzeichnis eines Dateipfades abzurufen, müssen Sie bei Windows das Kommando dir, bei Linux das Kommando ls aufrufen.

Externes Kommando

Mit einem externen Kommando bietet die SAP die Möglichkeit, unter einem einheitlichen Kommandonamen für verschiedene Betriebssysteme das passende externe Programm zuzuordnen. Die Definition solcher externen Kommandos erfolgt mithilfe der Transaktion SM69. Abbildung 2.2 zeigt Beispiele für externe Kommandos.

Troubleshooting

Abbildung 2.2: Externe Kommandos

Definition von Jobs

Die Definition von Jobs erfolgt bevorzugt mithilfe der Transaktion SM36. In Abbildung 2.3 sehen Sie ein Beispiel für einen Job mit mehreren Steps.

Troubleshooting

Abbildung 2.3: Beispiel Job-Steps

Die Spalte Nr. zeigt an, in welcher Reihenfolge die Steps ausgeführt werden sollen. Zusätzlich finden Sie in der Abbildung folgende Informationen:

CalloutCaption Name des ABAP-Programms bzw. des externen Kommandos

CalloutCaption Programmtyp (ABAP oder externes Kommando)

CalloutCaption Name der Variante (falls zur Ausführung erforderlich)

CalloutCaption Benutzer, unter dessen Kennung der Step gestartet wird

CalloutCaption Zu verwendende Anmeldesprache für die Ausführung

Einem auszuführenden Job muss eine Startbedingung zugeordnet werden (CalloutCaption). Der wiederkehrende Start eines Jobs ist durch die Angabe eines Periodenwertes (CalloutCaption) möglich (siehe Abbildung 2.4).

Troubleshooting

Abbildung 2.4: Startbedingung für einen Job

2.1.2 Batch-Scheduler

Der Batch-Scheduler ist ein in regelmäßigen Abständen in einem SAP-System ablaufendes Systemprogramm, das für jeden zur Ausführung eingeplanten Job überprüft, ob die Startbedingung erfüllt ist. Wenn das Ergebnis positiv ausfällt, erhalten diese Jobs den Status »bereit«. Der zeitliche Abstand zwischen zwei Starts des Schedulers wird durch den Parameter rdisp/btctime festgelegt; der Standardwert beträgt 60 Sekunden.

Der Scheduler verteilt die zur Ausführung fertigen Jobs auf die zur Verfügung stehenden Hintergrundprozesse. Ein Hintergrundprozess führt einen Job immer in Gänze aus (sofern er nicht abbricht), d.h., der Prozess steht während einer Jobausführung nicht für andere Aufgaben zur Verfügung. In der Konsequenz können nicht mehr Jobs gleichzeitig ablaufen als Hintergrundprozesse vorhanden sind. Die in einer Instanz nutzbaren Hintergrundprozesse werden durch den Parameter rdisp/wp_no_btc festgelegt.

Betriebsarten

Mithilfe der Definition sogenannter Betriebsarten ist es möglich, die Anzahl der zur Verfügung stehenden Hintergrundprozesse flexibel zu gestalten (siehe Transaktion RZ04/SM63). So können z.B. für den Nachtbetrieb mehr Hintergrundprozesse als für den Tagesbetrieb bereitgestellt werden.

Haben zur Ausführungszeit des Schedulers mehr Jobs den Status »bereit« als Hintergrundprozesse vorhanden sind, können nicht alle Jobs wie geplant gestartet werden. In diesem Fall bietet sich eine Priorisierung dieser Jobs mithilfe der Jobklasse an, die einem Job bei der Definition zugewiesen wird (CalloutCaption) (siehe Abbildung 2.5). Bei gleicher Jobklasse werden zudem Jobs für die Startfreigabe bevorzugt, für die unter Ausführungsziel eine Instanz mit Hintergrundprozessen eingetragen ist (CalloutCaption). Voraussetzung ist natürlich, dass genau die angegebene Instanz noch über freie Hintergrundprozesse verfügt.

Troubleshooting

Abbildung 2.5: Jobklasse (Priorität)

Für die Vergabe der Jobklasse gelten die in Tabelle 2.1 aufgelisteten Empfehlungen:

Jobklasse Empfehlung
A Für den Betrieb unbedingt notwendige und zeitkritische Jobs. Beispiel: Job RDDIMPD für die Steuerung der Importe von Transportaufträgen.
B Regelmäßig, mit kürzeren Wiederholungsperioden (z.B. stündlich) laufende Jobs, die nur mit geringer Verzögerung gestartet werden sollen.
C Jobs, die keine erhöhte Priorität erfordern. Jobklasse »C« ist die Standardklasse.

Tabelle 2.1: Jobklassen

Reservierung von Hintergrundprozessen für Klasse »A«

Bei der Definition von Betriebsarten (Transaktion RZ04) haben Sie die Möglichkeit, Hintergrundprozesse speziell für Jobs der Klasse »A« zu reservieren (siehe CalloutCaption in Abbildung 2.6). Beachten Sie aber unbedingt: Wird in einem auf diese Weise reservierten Prozess ein Job der Klasse »A« gestartet und ist gleichzeitig ein weiterer Hintergrundprozess verfügbar, wird dieser sofort für einen anderen Klasse-A-Job reserviert, damit der nächste anstehende Job dieser Klasse nach Möglichkeit sofort starten kann.

Troubleshooting

Abbildung 2.6: Reservierung von Hintergrundprozessen für Klasse »A«

Schlechtes Beispiel für Klasse-A-Reservierung

Ihnen stehen vier Hintergrundprozesse zur Verfügung, von denen zwei für die Klasse »A« reserviert werden. Wenn nun zeitgleich zwei Klasse-A-Jobs laufen, ist eine Ausführung von Jobs der Klassen »B« und »C« nicht mehr möglich.

Alle Inhalte. Mehr Informationen. Jetzt entdecken.

et.training - Ihre Lernplattform für SAP-Software

  • Zugriff auf alle Lerninhalte1
  • Regelmäßige Neuerscheinungen
  • Intelligenter Suchalgorithmus
  • Innovatives Leseerlebnis
  • Maßgeschneidere Lernpfade
  • Zertifikate & QA-Tests2

Sie haben bereits ein Konto?

1 Sie erhalten Zugriff auf alle Lerninhalte. Online-Trainings, Zertifikate sind NICHT Teil der Flatrate.

2 Weitere Informationen auf Anfrage.