HintergrundFunktionsbausteine der Hintergrundverarbeitung

 

Die folgenden Funktionsbausteine stehen für die Hintergrundverarbeitung zur Verfügung. Verwenden Sie keine anderen für die Hintergrundsteuerung vorgesehenen Funktionsbausteine, da diese für interne Zwecke reserviert sind.

  • JOB_OPEN: Hintergrund-Jobs anlegen

    Mit JOB_OPEN können Sie einen Hintergrund-Job anlegen. Der Funktionsbaustein gibt die eindeutige Nummer zurück, die zusammen mit dem Job-Namen zur Identifizierung des Jobs erforderlich ist.

    Nachdem Sie den Job angelegt haben, können Sie mit JOB_SUBMIT Job-Steps hinzufügen und den Job mit JOB_CLOSE zur Verarbeitung übergeben.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37) oder unter Programmbeispiel: Jobs mit JOB_OPEN anlegen.

  • JOB_SUBMIT, ABAP SUBMIT: Job-Steps einem Job hinzufügen

    Mit JOB_SUBMIT können Sie Job-Steps einem Job hinzufügen, den Sie mit JOB_OPEN angelegt haben.

    Ein Job-Step ist eine unabhängige Arbeitseinheit innerhalb eines Hintergrund-Jobs, die Ausführung eines ABAP- oder externen Programms. Jeder Job-Step kann seinen eigenen Berechtigungsbenutzer und spezifische Druck- und Archivierungsangaben haben.

    Verwandte Funktionsbausteine sind:

    • JOB_OPEN: Hintergrund-Job anlegen.

    • JOB_CLOSE: Hintergrund-Job zur Verarbeitung an die Hintergrundsteuerung übergeben.

      Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37) oder unter Jobs einplanen: Ganzsteuerungsverfahren.

    • JOB_CLOSE: Jobs an die Hintergrundsteuerung übergeben

      Mit JOB_CLOSE übergeben Sie einen Hintergrund-Job zur Verarbeitung an die Hintergrundsteuerung. Sobald Sie den Job abgeschlossen haben, können Sie keine weiteren Job-Steps mehr hinzufügen oder Angaben zum Job bzw. zu den Job-Steps ändern.

      Der Funktionsbaustein gibt ein Kennzeichen zurück, das angibt, ob der Job automatisch freigegeben wurde oder nicht. Ein Job wird nur automatisch zur Verarbeitung freigegeben, wenn der Einplaner die Freigabeberechtigung RELE für das Berechtigungsobjekt Operationen auf Hintergrund-Jobs besitzt.

      Ein Job-Step ist eine unabhängige Arbeitseinheit innerhalb eines Hintergrund-Jobs, die Ausführung eines ABAP- oder externen Programms. Jeder Job-Step kann seinen eigenen Berechtigungsbenutzer und spezifische Druck- und Archivierungsangaben haben.

      Verwandte Funktionsbausteine sind:

      • JOB_OPEN: Hintergrund-Job anlegen.

      • JOB_SUBMIT: Job-Steps zu einem Job hinzufügen.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37) oder unter Jobs einplanen: Ganzsteuerungsverfahren.

  • BP_JOBVARIANT_SCHEDULE und BP_JOBVARIANT_OVERVIEW

    Mit den beiden folgenden Funktionsbausteinen können Hintergrund-Jobs schnell und einfach eingeplant und verwaltet werden.

    • BP_JOBVARIANT_SCHEDULE:

      Zur Einplanung eines Jobs für die Ausführung.

      Mit diesem Funktionsbaustein wird die Einplanung eines Jobs erheblich vereinfacht. Sie müssen lediglich einen ABAP-Report angeben. Der Funktionsbaustein zeigt dann Bildschirmbilder an, in denen die Benutzer die gewünschte Variante angeben und eine einmalige oder wiederholte Startzeit für den Job auswählen können.

    • BP_JOBVARIANT_OVERVIEW:

      Zur Verwaltung von Jobs.

      Dieser Funktionsbaustein erleichtert die Verwaltung von Jobs. Die Benutzer können nicht aktive Jobs löschen und Job-Protokolle sowie Spool-Aufträge abgeschlossener Jobs anzeigen.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37) oder unter Jobs einplanen und verwalten: Einfaches Verfahren.

  • BP_CALCULATE_NEXT_JOB_STARTS: Startzeitpunkt für periodisch wiederholte Jobs ermitteln

    Mit diesem Funktionsbaustein können Sie Startdatum und Startuhrzeit von Jobs ermitteln, die periodisch ausgeführt werden. Sie können die Zeitspanne für die Analyse angeben.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37) oder unter Startzeitpunkte für periodisch wiederholte Jobs ermitteln.

  • BP_CHECK_EVENTID: Ereignisbezeichnungen prüfen

    Prüfen Sie mit Transaktion SM62, ob der von Ihnen angegebene Ereignisname bereits im SAP-System definiert ist. Der Rückgabewert 0 zeigt an, dass das Ereignis bereits im SAP-System definiert ist.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37).

  • RAISE-Methode: Ereignis aus einem ABAP-Programm auslösen

    Die RAISE-Methode gehört zur Klasse CL_BATCH_EVENT und löst Ereignisse im Hintergrundverarbeitungssystem aus. Sie können sie verwenden, um Ereignisse aus ABAP-Programmen heraus auszulösen. Das Auslösen eines Ereignisses weist das Hintergrundverarbeitungssystem an, alle auf dieses Ereignis wartenden Hintergrund-Jobs zu starten.

    Sie können ein Ereignis mit oder ohne ein Ereignisargument auslösen.

    Bei Verwendung der RAISE-Methode können Sie einen Zielserver angeben, auf dem das Ereignis ausgelöst werden soll.

    Weitere Informationen finden Sie unter Ereignisse aus ABAP-Programmen auslösen.

    Möchten Sie ein Ereignis aus einem externen Programm, Skript oder einer Batch-Datei auslösen, verwenden Sie das Programm SAPEVT.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37) oder unter Mit Ereignissen arbeiten.

  • BP_JOB_COPY: Hintergrund-Jobs kopieren

    Kopiert einen Hintergrund-Job. Die Kopie des Jobs enthält alle Job-Steps und zugehörigen Attribute, wie beispielsweise Benutzerberechtigungen und Druck- und Archivierungsangaben. Die Kopie besitzt jedoch keine Angaben zum Starttermin. Diese müssen Sie selbst eintragen.

    Für diesen Funktionsbaustein stehen Ihnen zwei verschiedene Modi zur Verfügung:

    • Interaktiv (DIALOG = BTC_YES): Der Benutzer muss den Job-Namen angeben und den Kopiervorgang bestätigen oder abbrechen. Mit TARGET_JOBNAME angegebene Standardnamen werden ignoriert.

    • Nichtinteraktiv (DIALOG = BTC_NO): Der Job wird ohne Benutzerinteraktion kopiert. Sie müssen mit TARGET_JOBNAME einen neuen Job-Namen angeben.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37).

  • BP_JOB_DELETE: Hintergrund-Jobs löschen

    Löscht einen Hintergrund-Job und das entsprechende Job-Protokoll (nach erfolgreicher Verarbeitung des Jobs).

    Das Löschen eines Hintergrund-Jobs ist an keine Bedingungen geknüpft, jedoch kann ein aktiver Job nicht gelöscht werden, und ein Job kann sich nicht selbst löschen. Abgebrochene Jobs werden aber gelöscht.

    Falls Sie abgebrochene Jobs und deren Protokolle aufheben möchten, können Sie mit dem Parameter DELANFREP im Funktionsbaustein JOB_OPEN automatisches Löschen angeben. Jobs können dann erst nach ihrer erfolgreichen Verarbeitung automatisch gelöscht werden.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37) oder unter Jobs auswählen und löschen.

  • BP_JOB_GET_PREDECESSORS: Vorgänger-Job eines Jobs ermitteln

    Mit diesem Funktionsbaustein können Sie den Vorgänger-Job eines bestimmten Jobs ermitteln. Vorgänger-Jobs sind Jobs, die (eventuell erfolgreich) verarbeitet sein müssen, bevor der betreffende Job gestartet werden kann.

    Der Funktionsbaustein ermittelt nur den direkten Vorgänger-Job, an den der Start eines Jobs gekoppelt ist. Er kann nicht ermitteln, ob der Vorgänger-Job seinerseits Vorgänger hat.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37).

  • BP_JOB_GET_SUCESSORS:

    Mit diesem Funktionsbaustein können Sie die Nachfolger-Jobs eines Jobs ermitteln. Nachfolger-Jobs sind Jobs, die erst für den Start vorgesehen sind, wenn der Job (eventuell erfolgreich) verarbeitet wurde.

    Der Funktionsbaustein kann mehr als einen Nachfolger ermitteln, falls der Nachfolger-Job seinerseits Nachfolger hat.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37).

  • BP_JOB_MAINTENANCE: Job-Pflegefunktionen

    Mit diesem Funktionsbaustein starten Sie die Überwachung und Steuerung von Jobs der Hintergrundverarbeitung (Transaktion SM37). Die Benutzer müssen berechtigt sein, auf fremde Jobs zuzugreifen oder Jobs freizugeben.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37) oder unter Jobs verwalten: Job-Listen generieren.

  • BP_JOB_SELECT: Jobs aus der Datenbank auswählen

    Mit diesem Funktionsbaustein können Sie die Jobs (Sätze der Form TBTCJOB) ermitteln, die den von Ihnen angegebenen Auswahlkriterien entsprechen.

    Mit BP_JOB_SELECT können Sie Jobs ermitteln, die Sie weiter verarbeiten möchten. Sie können beispielsweise Jobs auswählen, die einer bestimmten Namenskonvention entsprechen, und ihren Status mit dem Feld TBTCJOB-STATUS überprüfen.

    Ein Programmbeispiel für diesen Funktionsbaustein finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37) oder unter Jobs auswählen und löschen.

  • BP_FIND_JOBS_WITH_PROGRAM: Jobs, die bestimmte Programme ausführen, aus der Datenbank lesen

    Sie können diesen Funktionsbaustein wie BP_JOB_SELECT verwenden, um eine Liste von Jobs zu generieren, die mit BP_JOBLIST_PROCESSOR angezeigt und bearbeitet werden kann. Dieser Funktionsbaustein wählt die Jobs nach dem angegebenen Programm aus. Beispielsweise können Sie die Jobs auswählen, die das von einem Benutzer eingeplante Programm enthalten.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37). Ein Programmierbeispiel ist unter Job-Status anzeigen: SHOW_JOBSTATE zu finden.

  • BP_JOBLIST_PROCESSOR: Job-Listen für Benutzer anzeigen

    Mit dem Funktionsbaustein BP_JOBLIST_PROCESSOR können Sie den Benutzern Ihres Programms eine Liste mit Jobs anzeigen. Das System zeigt die Jobs in dem Format an, das auch in der Job-Übersicht der Hintergrundsteuerung verwendet wird.

    Die Job-Liste muss an BP_JOBLIST_PROCESSOR in einer internen Tabelle übergeben werden, die mit BP_JOB_SELECT erzeugt wird.

    Zur Anzeige der Job-Liste stehen Ihnen drei verschiedene Modi zur Verfügung:

    • Anzeigemodus: Der Benutzer kann Job-Attribute und Job-Ergebnisse wie beispielsweise Spool-Aufträge und Job-Protokolle anzeigen, jedoch keine Jobs ändern oder zur Verarbeitung freigeben.

    • Bearbeitungsmodus: Der Benutzer kann alle Tätigkeiten der Job-Pflege durchführen, für die er berechtigt ist.

    • Auswahlmodus: Der Benutzer wird aufgefordert, einen Job aus der Liste auszuwählen. Nach erfolgter Auswahl wird die Liste geschlossen und die Struktur TBTCJOB des ausgewählten Jobs an Ihr Programm zurückgegeben.

    Berechtigungen

    Die Verarbeitung von Job-Listen unterliegt Berechtigungsprüfungen für die Hintergrundverarbeitung. Eine Beschreibung der entsprechenden Berechtigungen finden Sie in der Dokumentation BC - Benutzer, Berechtigungen und Systemsicherheit sowie in der Dokumentation zum Customizing.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37).

  • SHOW_JOBSTATE: Status eines Jobs prüfen

    SHOW_JOBSTATE Gibt einen der sechs möglichen Status für einen Job zurück, der durch den Job-Namen und die Job-Nummer gekennzeichnet ist.

    Beispiel Beispiel

    Beispiel-Code ist unter Job-Status anzeigen: SHOW_JOBSTATE zu finden.

    Ende des Beispiels.
  • FUNCBP_JOBLOG_READ: Job-Protokolle lesen

    Übergibt den Inhalt eines Job-Protokolls an eine interne Tabelle zur weiteren Verarbeitung. Sie können beispielsweise die Protokolle zusammenhängender Jobs in einem Protokoll zusammenfassen.

    Ein Programmbeispiel finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37) oder unter Job-Protokoll in eine interne Tabelle kopieren.

  • BP_JOBLOG_SHOW: Job-Protokolle anzeigen

    Ein Job-Protokoll enthält Meldungen der Hintergrundsteuerung zur Ausführung eines Jobs, einschließlich der Fehlermeldungen von im Job aufgeführten ABAP-Programmen bzw. der Ergebnisse von externen Programmen.

    Ein Programmbeispiel finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37) oder unter Job-Protokolle anzeigen.

  • BP_START_DATE_EDITOR: Starttermin anzeigen/anfordern

    Mit diesem Funktionsbaustein können Sie es den Benutzern ermöglichen, den Startzeitpunkt für einen Job selbst zu wählen. Die standardmäßigen Bildschirmbilder für die Einplanung von Hintergrund-Jobs werden angezeigt.

    Weitere Einzelheiten hierzu finden Sie in der Online-Dokumentation der Funktionsbibliothek (Transaktion SE37) oder unter Angaben zur Startzeit von Benutzern ermitteln.

  • BP_JOB_READ: Job-Spezifikationen abrufen

    Mit diesem Funktionsbaustein können Sie die Job-Header-Tabelle lesen (TBTCO, Spezifikationen, die global für einen Job gelten, wie z.B. Startzeit), sowie die Job-Step-Tabelle (TBTCSTEP, ein Datensatz für jeden Step in einem Job, einschließlich Informationen wie auszuführendes Programm, generierter Spool-Auftrag etc.).

    Zum Lesen dieser Tabellen benötigen Sie den Job-Namen und die Job-Nummer.

    Die vom Funktionsbaustein zurückgegebenen Daten werden durch den Importparameter JOB_READ_OPCODE gesteuert. Dieser Parameter kann die folgenden Werte haben (in LBTCHDEF definiert):

    • BTC_READ_JOBHEAD_ONLY:

      Nur die Job-Header-Daten lesen (TBTCO)

    • BTC_READ_ALL_JOBDATA:

      Alle Job-Daten lesen (TBTCO, TBTCSTEP).

  • SHOW_JOBSTATE: Job-Status anzeigen

    Mit diesem Funktionsbaustein können Sie den Status eines Jobs im Hintergrundverarbeitungssystem anzeigen. Bei den Status handelt es sich um die Status, die Sie in der Verwaltungstransaktion für die Hintergrundverarbeitung anzeigen können (Transaktion SM37).

    Beispiel Beispiel

    Ein Programmierbeispiel ist unter Job-Status anzeigen: SHOW_JOBSTATE zu finden.

    Ende des Beispiels.
  • Funktionsbausteine für die Parallelverarbeitung

    Im Zusammenhang mit den Schlüsselwörtern ABAP CALL FUNCTION STARTING NEW TASK IN DESTINATION GROUP, WAIT und RECEIVE können drei Funktionsbausteine verwendet werden, um die Parallelverarbeitung in Programmen zu implementieren, die interaktiv oder im Hintergrundverarbeitungssystem ausgeführt werden.

    Eine Liste dieser Funktionsbausteine und weitere Informationen zu ihrer Verwendung sind unter Parallelverarbeitung implementieren zu finden.