Praxishandbuch SAP-Basis – Troubleshooting in der Systemadministration. Manfred Sprenger
Чтение книги онлайн.
Читать онлайн книгу Praxishandbuch SAP-Basis – Troubleshooting in der Systemadministration - Manfred Sprenger страница 7
Ausführbares ABAP-Programm
Hierbei handelt es sich um ein ABAP-Programm vom Typ 1 (siehe Abbildung 2.1).
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 <SAP-Systemname>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.
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.
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:
Name des ABAP-Programms bzw. des externen Kommandos
Programmtyp (ABAP oder externes Kommando)
Name der Variante (falls zur Ausführung erforderlich)
Benutzer, unter dessen Kennung der Step gestartet wird
Zu verwendende Anmeldesprache für die Ausführung
Einem auszuführenden Job muss eine Startbedingung zugeordnet werden (
). Der wiederkehrende Start eines Jobs ist durch die Angabe eines Periodenwertes () möglich (siehe Abbildung 2.4).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 (
) (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 (). Voraussetzung ist natürlich, dass genau die angegebene Instanz noch über freie Hintergrundprozesse verfügt.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.
|