Beispiel: Einen SAP-ABAP-Job erstellen innerhalb der AE
Ein Benutzer von Automic Automation möchte einen SAP-Job (JOBS) erstellen, um den Batch-Lauf eines ABAP-Programms auszuführen. Dieses soll innerhalb der Automation Engine ausgeführt werden, ohne dafür zum SAP-Mandanten wechseln zu müssen.
Diese Seite beinhaltet Folgendes:
Was werde ich lernen?
- Wie man einen SAP-Agenten so konfiguriert, dass er über Login- und Verbindungsobjekte mit Ihrem SAP-System kommuniziert.
- Wie man die Rechte des Agenten konfiguriert.
- Wie man einen SAP-Job erstellt und ausführt.
- Wie man die Reports, die sich aus der Jobausführung ergeben, überprüft.
Was wird in diesem Beispiel beschrieben?
Dieses Beispiel beschreibt Objekte, Objekteinstellungen und die erforderlichen Schritte, um einen SAP-Job zu erstellen, diesen auf dem SAP-Mandanten auszuführen und auf die Details der Ausführung zuzugreifen, ohne die Automation Engine verlassen zu müssen.
Übersicht
Um SAP-Jobs erfolgreich auszuführen, müssen Sie die folgenden Schritte durchführen:
- die Binärdateien des Agenten müssen installiert und die INI-Datei für die Verbindung zur Automation Engine konfiguriert sein
- der SAP-Agent muss definiert sein
- es muss mindestens ein Verbindungsobjekt (CONN) definiert sein, das den Agenten mit dem SAP-Anwendungsserver verbindet
- es muss ein Login-Objekt (LOGIN) definiert sein, das die zur Ausführung des Jobs benötigten Benutzerdaten bereitstellt
- es muss ein SAP-ABAP-Job vorhanden sein
Warum ist ein Login-Objekt notwendig?
Bei der Ausführung eines SAP-Jobs in der Automation Engine wird separat ein Job im Ziel-SAP-System erstellt. Die Verbindung zwischen den beiden Systemen wird durch die Benutzerdaten hergestellt, die in dem Agenten zugewiesenen Verbindungsobjekt eingegeben wurden. (Dies wird weiter unten ausführlicher erklärt.)
Der Job im SAP-System hat zwei Benutzer:
- Den Benutzer mit Eigentümerrechten für den Job, dessen Benutzerdaten normalerweise aus dem Verbindungsobjekt entnommen werden.
- Den Benutzer, unter dem das ABAP-Programm ausgeführt wird und dessen Benutzerdaten immer im Login-Objekt definiert sind.
Der SAP-Job (JOBS) in der Automation Engine enthält allerdings die Benutzerdaten des ihm zugewiesenen Login-Objekts. Die Option Die Agent-Login-Information mit Job-Login-Information überschreiben, die Sie beim Definieren der Jobattribute auswählen können, führt dazu, dass die für die Verbindung relevanten Benutzerdaten mit denen des Login-Objekts überschrieben werden. Dies vereinfacht das Identifizieren und Nachverfolgen von Prozessen, das Beheben von Fehlern usw.
Die folgende Grafik veranschaulicht dies:
In diesem Beispiel verwendete Objekte
Definieren und Starten eines SAP-Jobs für den Batch-Lauf eines ABAP-Programms
Installieren und Konfigurieren der Binärdateien des Agenten
Stellen Sie sicher, dass die Binärdateien des Agenten installiert sind und die INI-Datei für die Verbindung mit der Automation Engine konfiguriert ist.
Ihr Systemadministrator hat sich wahrscheinlich bereits um die ordnungsgemäße Installation des Agenten und dessen Konfiguration gekümmert, aber dies ist ein Überblick über die Schritte, die erforderlich sind, um die Verbindung zwischen der Automation Engine und dem SAP-System herzustellen:
- Installieren Sie die Binärdateien des Agenten in der empfohlenen Ordnerstruktur.
- Passen Sie die Konfigurationsdatei so an, dass sich der Agent mit der Automation Engine verbinden kann.
- Laden Sie Version 3 des SAP Java Connector (JCO) von der entsprechenden SAP-Webseite herunter und installieren Sie diesen im selben Verzeichnis wie die Binärdateien des Agenten.
- Installieren Sie den Service Manager oder erweitern Sie dessen Definition so, dass er den Agenten aus der Ferne starten/stoppen kann.
SAP-Agenten erstellen oder aktualisieren
Sobald die Binärdateien des Agenten installiert wurden, erstellt die Automation Engine automatisch ein Agentenobjekt, sofern dieses noch nicht existiert. Es ist natürlich auch möglich, zuerst das Agentenobjekt zu erstellen und dann die Binärdateien zu installieren. Der SAP-Agent interpretiert und transformiert die Kommandos, die er vom Automation Engine-Mandanten erhält, damit SAP diese versteht.
-
Melden Sie sich in Ihrem Automation Engine-System in Mandant 0 an. Agenten können nur in Mandant 0 erstellt werden.
-
Wechseln Sie in die Perspektive Process Assembly und wählen Sie in der Symbolleiste die Schaltfläche Objekt hinzufügen aus. Alternativ können Sie auch an beliebiger Stelle in der Liste einen Klick mit der rechten Maustaste ausführen und dort Hinzufügen > Objekt hinzufügen auswählen.
-
Der Dialog Objekt hinzufügen wird angezeigt. Vorlagen für die Erstellung von Agenten sind für alle Zielsysteme verfügbar, mit denen sich die Automation Engine verbinden kann. Sie können die SAP-Vorlage auf folgende Arten auswählen:
-
Klicken Sie auf die Schaltfläche Hinzufügen. Das neue Objekt wird sofort in der Datenbank erstellt. Die Automation Engine gibt ihm einen eindeutigen Namen, der aus einem Präfix, welches den Objekttyp angibt, dem Wort NEW und einer Nummer besteht.
-
Der Dialog Objektname wird geöffnet und zeigt den vorgeschlagenen Namen an. Sie können den Namen behalten oder ihn entsprechend der Namenskonventionen Ihres Unternehmens ändern. Klicken Sie auf die Schaltfläche OK, wenn Sie die Bearbeitung abgeschlossen haben.
-
Die Seiten "Agentendefinition" werden angezeigt. Einige der Seiten sind für alle Objekttypen gleich. Für unser Beispiel ist es nicht erforderlich, Daten auf diesen Seiten einzugeben, aber hier finden Sie mehr darüber: Seite "Allgemein", Seite "Berechtigungen" und Seite "Dokumentation".
Agenten Rechte gewähren
Gewähren Sie dem gerade erstellten Agenten die erforderlichen Rechte in dem Mandanten, der den Job ausführen wird.
Nachdem das Objekt umbenannt wurde, öffnet sich der Agent mit Fokus auf der Hauptseite der Definition, Agent. In der oberen Hälfte der Seite wird eine Liste der Mandanten angezeigt, die in Ihrem System zur Verfügung stehen. Hier gewähren Sie dem neuen Agenten die entsprechenden Rechte für den Mandanten, in dem die Jobs ausgeführt werden. In diesem Beispiel entscheiden wir uns für Mandant 100.
Hinweis: Der Agent ist nun aktiv. Wechseln Sie anschließend in die Administration-Perspektive, in der Sie den Agenten überprüfen und bearbeiten können:
Ein Verbindungsobjekt (CONN) in Mandant 0 erstellen
Dieses Objekt stellt sowohl die Verbindungsdaten zum SAP-Anwendungsserver als auch die SAP-Login-Parameter (SAP-Mandant, Benutzer und Passwort) bereit. Über das Verbindungsobjekt kann sich der Agent beim Hochfahren im SAP-System anmelden.
Da wir alles Nötige vorbereiten, um mit SAP-ABAP-Jobs zu arbeiten, brauchen wir auch den richtigen Verbindungstyp. Dabei handelt es sich um R3/Remote Function Call:
-
Wechseln Sie in die Perspektive Process Assembly und fügen Sie ein Verbindungsobjekt des Typs R3 hinzu.
-
Die Definition der R3-Verbindung besteht aus mehreren Seiten. Für unser Beispiel ist es nicht erforderlich, Daten auf den gemeinsamen Seiten einzugeben, aber hier finden Sie mehr darüber: Seite "Allgemein", Seite "Berechtigungen", Seite "Versionsmanagement" und Seite "Dokumentation".
-
Auf der Seite R3-Verbindung geben Sie im Abschnitt Verbindungsparameter die Daten zur Verbindung mit dem SAP-Anwendungsserver ein.
-
Geben Sie im Abschnitt Login-Parameter die Anmeldedaten (Mandant, SAP-Benutzer und Passwort) ein.
-
Speichern Sie Ihre Änderungen.
Das ist alles, was Sie zur Herstellung der Verbindung brauchen. Alle anderen Felder sind optional.
Weisen Sie das Verbindungsobjekt dem SAP-Agenten zu
Nachdem sowohl die Verbindung als auch der Agent definiert wurden, können Sie diese miteinander verbinden. Wechseln Sie in die Administration-Perspektive und öffnen Sie den zuvor definierten Agenten. In der unteren Hälfte der Seite weisen Sie ihm das Verbindungsobjekt zu, das Sie gerade erstellt haben:
Speichern Sie Ihre Änderungen.
Hinweis: Der Agent ist nun mit Ihrem SAP-Mandanten verbunden.
Erstellen Sie das Login-Objekt
Der Job, den Sie in der Automation Engine erstellen und im SAP-Mandanten ausführen wollen, benötigt ein Login-Objekt, das die Benutzerdaten des SAP-Benutzers enthält, unter dem er im SAP-System ausgeführt wird.
Das Login-Objekt, das diese Daten enthält, erstellen Sie im selben Mandanten, in dem Sie auch den Job erstellen. In diesem Fall ist das der Mandant 100; hier haben wir dem Agenten die benötigten Rechte gewährt, um Jobs auszuführen.
Bedenken Sie: Wenn Sie später den SAP-Job definieren, können Sie die Option Die Agent-Login-Information mit Job-Login-Information überschreiben aktivieren, um die hier definierten Benutzerdaten zur Anmeldung im SAP-System zu nutzen, anstelle des Agenten-Logins.
-
Wechseln Sie in die Perspektive Process Assembly und fügen Sie ein Login-Objekt hinzu. Die Hauptseite der Login-Definition sieht folgendermaßen aus:
-
Klicken Sie in der Symbolleiste auf Zeile hinzufügen, um eine neue Zeile hinzuzufügen.
-
Geben Sie in der Zelle Agent / Name den Namen des Agenten ein, für den diese Login-Informationen gültig sind. Führen Sie eine der folgenden Aktionen aus:
-
Wählen Sie einen bestehenden Agenten aus der Dropdown-Liste aus.
Die angrenzende Zelle Typ zeigt die Plattform des Agenten automatisch an.
-
Geben Sie den Namen des Agenten oder einen Teil davon ein.
Falls dieser bereits verfügbar ist, listet die "Find as you type"-Funktion die Treffer sofort auf.
-
Geben Sie "*" ein, um dieses Login für alle Agenten dieses Typs zu übernehmen.
-
-
Wählen Sie in der Dropdown-Liste Typ die Agentenplattform aus. In diesem Fall ist das R3.
-
In den Feldern Benutzername/ID und Passwort geben Sie die im SAP-System definierten Benutzerdaten ein, mit denen der Job ausgeführt wird. Der SAP-Mandant und der Benutzername werden durch ein Komma getrennt.
-
Speichern Sie Ihre Änderungen.
Erstellen Sie einen SAP-ABAP-Job
Erstellen Sie den Job. Wir werden uns hier nicht weiter mit den vielen Parametern, die Sie für ein SAP-Jobobjekt definieren können, beschäftigen; in unserem Beispiel konzentrieren wir uns auf die erforderlichen grundlegenden Einstellungen, mit denen Sie es von der Automation Engine aus in Ihrem SAP-System verarbeiten können.
-
Klicken Sie in der Perspektive Process Assembly auf Hinzufügen > Objekt hinzufügen. Scrollen Sie im Dialog nach unten, um die Liste "Job (JOBS)" zu erweitern, und wählen Sie die Vorlage SAP_ABAP Job aus.
-
Geben Sie einen Namen ein und klicken Sie auf Hinzufügen.
-
Die Seiten der SAP-Job-Definition öffnen sich und zeigen die entsprechende Seite für SAP an. Entscheiden Sie, ob Sie die Anmeldeinformationen für den Agenten zur Anmeldung im SAP-System nutzen möchten, und führen Sie den Job aus.
-
Wechseln Sie zur Seite Prozess und geben Sie hier Ihr Script ein. Hierzu können Sie entweder den Script-Editor oder die Ansicht Formular nutzen. Zum Beispiel:
-
Wechseln Sie zur Seite Attribute.
-
Legen Sie die Ausführungseinstellungen fest. Hier etablieren Sie die Beziehung zwischen dem Job, dem Agenten, der die Verbindung zum entsprechenden SAP-Mandanten herstellt, und dem Login-Objekt, das die SAP-Benutzerdaten enthält:
Bevor Sie Ihren Job ausführen, können Sie dessen Einstellungen prüfen:
- Öffnen Sie in der Perspektive Process Assembly die Liste Explorer.
- Wählen Sie den Job aus und klicken Sie auf die Schaltfläche Details in der Symbolleiste.
- Die wichtigsten Daten zum Job werden angezeigt.
Hinweis: Sie können den Job nun ausführen.
Den Job ausführen
-
Speichern Sie Ihre Änderungen und wechseln Sie zur Liste Explorer in der Perspektive Process Assembly.
-
Wählen Sie den zuvor erstellten Job aus und klicken Sie im Kontextmenü auf Ausführungsoptionen > Ausführen. Alternativ können Sie auch die Schaltfläche in der Symbolleiste verwenden:
-
Anschließend teilt Ihnen eine Pop-up-Nachricht im oberen Teil Ihres Bildschirms mit, ob der Job erfolgreich gestartet wurde oder nicht. Falls ja, enthält sie einen Link zum Report des Jobs.
-
Klicken Sie auf Report öffnen. Sie können im Fenster Reports auf alle Reports zugreifen, die für den Job erstellt wurden. Standardmäßig wird der Job-Report (REP) angezeigt:
Es sind weitere Reports verfügbar, wie zum Beispiel das Agentenlog (PLOG), das die Details zur Ausführung enthält:
Hinweis: Das Automic Web Interface bietet die folgenden zusätzlichen Möglichkeiten, um die Details zum ausgeführten Job zu überprüfen:
-
Die Liste Ausführungen
Sobald ein Objekt aktiviert ist, beginnt die Automation Engine mit der Aufzeichnung der Daten bezüglich der Ausführung und beendet diese, wenn die Ausführung abgeschlossen ist. Jeder Lauf wird in Form von historischen Daten aufgezeichnet und gespeichert und anschließend in der Liste Ausführungen zur Verfügung gestellt. So wird der Zugriff auf die wichtigsten Informationen zu den Aufgaben zentralisiert.
Sie können in den Perspektiven Process Assembly und Process Monitoring auf die Liste zugreifen.
Wählen Sie den Job aus und klicken Sie entweder auf die Schaltfläche Ausführungen in der Symbolleiste oder klicken Sie im Kontextmenü auf Monitoring > Ausführungen.
-
Die Details zum ausgeführten Job in der Liste Aufgaben (Process Monitoring).
- Wechseln Sie in die Perspektive Process Monitoring und öffnen Sie den Filter, um nach der Aufgabe zu suchen. Sie können beispielsweise die RunID-Nummer in der Liste Ausführungen kopieren und in das Feld Aufgaben-RunID einfügen.
-
Wählen Sie die Aufgabe und klicken Sie auf die Schaltfläche Details in der Symbolleiste.
Anschließend werden die wichtigsten Daten zur Ausführung des Jobs angezeigt.
Nützliche Links
Dieses Beispiel enthält Referenzen zu einigen Funktionen, über die Sie vielleicht mehr erfahren möchten.
- Installation
-
Objekte
- Objekte ausführen
- Details zu Objekten und Aufgaben finden
-
Reports
- Historische Ausführungsdaten