Bedeutung von Ereignissen der Hintergrundverarbeitung
Neben der Einplanung von Jobs zu bestimmten Terminen und an bestimmten Kalendertagen unterstützt die Hintergrundverarbeitung auch die ereignisgesteuerte Einplanung von Jobs. Die folgende Abbildung zeigt, wie Ereignisse der Hintergrundverarbeitung benutzt und bearbeitet werden können.

Ereignisse haben nur im Hintergrundverarbeitungssystem Gültigkeit und können nur dazu verwendet werden, Hintergrund-Jobs zu starten.
Ein Ereignis ist ein Signal an das Hintergrundverarbeitungssystem, dass ein bestimmter Zustand im System erreicht ist. Das Hintergrundverarbeitungssystem startet dann alle Jobs, die auf dieses Ereignis warten.
In der Event History wird ein Protokoll mit allen im System ausgelösten Ereignissen gespeichert. Weitere Informationen finden Sie unter Mit ausgelösten Ereignissen arbeiten.
Es gibt zwei verschiedene Ereignistypen:
Systemereignisse: Systemereignisse sind von SAP vordefiniert und werden automatisch durch Systemveränderungen ausgelöst, beispielsweise wenn ein Betriebsartenwechsel stattfindet. Sie können Systemereignisse nicht modifzieren.
Benutzerereignisse: Benutzerereignisse werden von Benutzern definiert und müssen von ABAP- oder externen Programmen ausgelöst werden. Verwenden Sie zum Auslösen eines Benutzerereignisses in der Hintergrundverarbeitung ein externes Programm, wenn Sie signalisieren möchten, dass externe Daten in das SAP-System übertragen werden sollen.
Ein Ereignisargument ist ein optionaler Textstring, der zum Definieren eines Ereignisses verwendet werden kann. Ereignisgesteuerte Jobs können nicht nur so eingeplant werden, dass sie nach einem spezifischen Ereignis starten, sondern auch nach einem durch einen spezifischen Ereignisparameter definierten Ereignis.
Sie können ein Ereignisargument angeben, wenn Sie:
einen Job einplanen, der auf dieses Ereignis wartet
ein Ereignis auslösen
Im Gegensatz zum Ereignisnamen sind Ereignisargumente nicht im SAP-System definiert.
Wenn Sie bei der Job-Einplanung ein Ereignisargument angeben, ist der Job erst startberechtigt, wenn das Ereignis mit dem Argument ausgelöst wird.
Geben Sie bei der Job-Einplanung kein Argument an, wird der Job mit dem Eintreten des Ereignisses gestartet. Der Job wird gestartet, unabhängig davon, welche Zeichenkette dem Argument zugeordnet wurde.
Start von Jobs, die auf ein Ereignis warten
Job |
Ereignis |
Ergebnis |
Job wurde mit Ereignis-ID |
|
Job startet nicht, sondern wartet weiterhin auf |
|
Job startet |
|
|
Job startet nicht, wartet weiterhin auf |
|
Job wurde mit Ereignis-ID |
|
Job startet |
|
Job startet |
Ein als Hintergrund-Job laufendes ABAP-Programm kann ermitteln, welches Ereignis und welches Argument beim Start angegeben wurden. Dadurch ist es in der Lage, abhängig vom angegebenen Argument auf das Ereignis zu reagieren
Beispiel
Beispiel für Ereignisse und Ereignisargumente
Bei einem Betriebsartenwechsel wird ein Ereignis im Hintergrundverarbeitungssystem ausgelöst. Bei dem Ereignis handelt es sich um das SAP-Systemereignis SAP_OPMODE_SWITCH. Als Argument trägt das Ereignis den Namen der neuen Betriebsart.
Wenn Sie Ihren Job für das Ereignis SAP_OPMODE_SWITCH mit dem Argument NACHT einplanen, wird der Job beim nächsten Wechsel zur Betriebsart NACHT zur Ausführung fällig.
Sie können einen Job auch so einplanen, dass er bei jedem Eintreten des Ereignisses wiederholt wird. Für das obige Beispiel würde das bedeuten, dass Ihr Job jedes Mal gestartet wird, wenn die Betriebsart NACHT aktiv wird.
Hinweis
Die Drucktaste Betriebsart
ermöglicht es Ihnen, einen Job so einzuplanen, dass er erst startet, wenn eine bestimmte Betriebsart aktiviert wird.