Jobkontrollsprache (JCL)

Dieser Abschnitt behandelt folgende Themen:


Verwendung von JCL in Entire Operations

Jobkontrollsprache (JCL/Job Control Language) wird in Entire Operations in folgender Weise verwendet:

  • Master-JCL
    Das ist die JCL in ihrem ursprünglichen Format auf dem Original-Datenträger. Die gängigen JCL-Speicherarten der Betriebssysteme werden unterstützt. Auch die Quelltexte für die dynamische JCL-Generierung zählen zur Master-JCL.

  • Aktive JCL
    Das ist die tatsächlich an das Betriebssystem zur Ausführung übergebene JCL. Sie wird zur Aktivierungszeit des Jobs oder Netzwerks aus der Master-JCL erzeugt. Dabei werden die Symbole durch Werte aus der aktiven Symboltabelle ersetzt. Falls es sich um dynamische JCL handelt, wird die Generierung zu diesem Zeitpunkt ausgeführt. Die aktive JCL wird in der aktiven Datenbank von Entire Operations gespeichert.

  • Vorgenerierte aktive JCL
    Aus Performance-Gründen kann es notwendig werden, aktive JCL im voraus zu generieren. Die Vorgenerierung aktiver JCL wird mit einem Kontextmenü-Kommando aufgerufen. Siehe Aktive JCL vorgenerieren.

    Die Vorgenerierung muss jedes Mal neu ausgeführt werden, wenn

    • die Definition der Master-JCL-Speicherung geändert wurde,

    • die Master-JCL editiert wurde,

    • die zugehörige Symboltabelle geändert wurde.

  • Gestartete JCL - Kopfinformationen
    Entire Operations fügt in die gestartete JCL einen Kopf mit Entire Operations-Umgebungsinformationen als Kommentar ein.

    Für UNIX wird der Kopf in das Rahmen-Script eingefügt.

    Für Windows wird der Kopf in die Rahmen-BAT-Datei eingefügt.

  • Gestartete JCL - Umgebungsvariablen für UNIX und Windows
    Das generierte und gestartete JCL-Rahmenskript (UNIX) bzw. die Rahmen-BAT-Datei (Windows) kann als Umgebungsvariablen zur Verfügung gestellte, vordefinierte Symbole enthalten. Weitere Informationen siehe Reservierte Symbole für UNIX- und Windows-Umgebungsvariablen im Kapitel User Exits.

JCL editieren

Das Editieren von JCL ist mit dem internen Editor möglich..

Symbolersetzung in der JCL

  1. Bei allen Speicherarten von Master-JCL können Symbole zur Ersetzung definiert werden.

  2. Fluchtzeichen für Symbole können systemweit vorgegeben werden, sie können aber auch für jeden Job individuell definiert werden. Standardwerte für Fluchtzeichen können für jedes Betriebssystem definiert werden.

  3. Fluchtzeichen zur Symbolersetzung dürfen nicht in Konflikt mit anderweitig in der JCL verwendeten Zeichen kommen.

Weitere Informationen siehe Symboltabellen und Symbole.

Jobkontrolle für Jobs unter BS2000

Namenskonventionen für Arbeitsdateien

Die Namensgenerierung für Arbeitsdateien unter BS2000 ist beschrieben unter BS2000 im Abschnitt Namenskonventionen bei Arbeitsdateien in der Entire Operations Installation und Inbetriebnahme-Dokumentation.

User Exit zur Vergabe von BS2000-Arbeitsdateinamen

Namen von BS2000-Arbeitsdateien können auch durch einen User Exit erzeugt werden; siehe Generieren von SYSOUT-Dateinamen für BS2000 im Abschnitt API-Routinen.

Jobkontrolle für Jobs unter UNIX

Die Environment-Variable $EOR_WORK von Entire System Server (NPR) unter UNIX enthält den Namen des Entire Operations-Arbeitsverzeichnisses. Innerhalb dieses Verzeichnisses werden die Arbeitsdateien hierarchisch gespeichert.

Jobkontrolle für Jobs unter Windows

Charakteristika der Jobkontrolle unter Windows

Das Jobkontrollsystem von Entire Operations läuft auch in einer Windows-Umgebung, mit folgenden Charakteristika:

  • betriebssystemneutrale Modellierung von Job-Netzwerken,

  • transparente Bereitstellung der bisherigen Funktionalität und Flexibilität von Entire Operations auch für Windows,

  • Unterstützung von DOS-Batch-Dateien und ausführbaren Programmen (EXE),

  • Vermeidung der direkten Eingabe von Windows-DOS-Kommandos,

  • Ablauffähigkeit in gemischten Großrechner-/Windows-/UNIX-Umgebungen,

  • Jobkontrolle auf mehreren Windows-Maschinen gleichzeitig.

Erforderliche Komponenten

  • Entire Operations-Monitor
    Der Monitor kann unter dem Betriebssystemen BS2000, z/OS, z/VSE und UNIX laufen und dabei gleichzeitig Jobs steuern, die auf den Plattformen BS2000, z/OS, z/VSE und UNIX zur Ausführung kommen.

  • Entire System Server (NPR) für Großrechner, UNIX und Windows
    Erforderlich für den Zugriff auf Großrechner-, UNIX- oder Windows-Betriebssysteme.

    Auf jeder zu steuernden Maschine muss ein Entire System Server/Windows-Server installiert sein. Dieser wird als Windows-Service installiert und kann mit der Windows-Dienste-Verwaltung administriert werden.

  • Entire Net-work/EntireX Broker
    Dient als Transportschicht.

Einbettung in Entire Operations

Die Entire System Server-Knoten für UNIX oder Windows werden analog zu Großrechner-Entire System Server-Knoten über eine Knotennummer angesprochen, die parallel zum Knotennamen (z.B. TCP/IP-Namen) innerhalb Entire Operations als Kurzbezeichnung verwendet wird.

Ausführung von Betriebssystem-Funktionen

Zur Ausführung von Betriebssystem-Funktionen gibt es auf jedem Windows-Knoten einen Server vom Typ Entire System Server/Windows. Dieser Server läuft als Windows-Prozess im Hintergrund.

Zur Kommunikation mit den Servern verwenden der Entire Operations Monitor und die Entire Operations-Online-Anwendung folgende Komponenten:

  • die Kommunikationsschicht der System Automation Tools (SAT),

  • den Entire Broker zur Übermittlung von Client/Server-Anforderungen,

  • Entire Net-Work als Transportschicht.

Es können maximal 740 Windows-Knoten gleichzeitig bedient werden.

Dateinamen

Da auf Großrechnern kein umgekehrter Schrägstrich ( \ ) zur Verfügung steht, können Windows-Dateinamen alternativ auch mit einem normalen Schrägstrich ( / ) geschrieben werden, wenn dem Dateinamen unmittelbar die Zeichenfolge +F+ vorausgeht. Dies gilt auch für Dateinamen innerhalb von JCL.

Beispiel:

Original Windows:
c:\jcl\script1.bat
Alternative Darstellung:
+F+c:/jcl/script1.bat

SYSOUT-Umlenkung

Vom Entire Operations Monitor werden alle Jobs mit Umlenkung der Job-Ausgabe in eine Datei gestartet. Die SYSOUT-Dateien werden im Entire Operations-Arbeitsverzeichnis abgelegt. Im Falle einer Job-Wiederholung wird die alte SYSOUT-Datei umbenannt.

Das Entire Operations-Arbeitsverzeichnis

Die Umgebungsvariable %EOR_WORK% von Entire System Server unter Windows enthält den Namen des Entire Operations-Arbeitsverzeichnisses. Innerhalb dieses Verzeichnisses werden die Arbeitsdateien hierarchisch abgelegt.

Die Namensgenerierung für Arbeitsdateien unter BS2000 ist beschrieben unter Namenskonventionen bei Arbeitsdateien, Abschnitt Windows in der Entire Operations Installation und Inbetriebnahme-Dokumentation.

Der Name des Arbeitsverzeichnisses für ein aktives Netzwerk ist in dem vordefinierten Symbol P-NADIR verfügbar. Anwendungsspezifische Arbeitsdateien dürfen dort abgelegt werden, soweit es keine Namenskonflikte mit von Entire Operations erzeugten Dateien gibt.

Von Entire Operations und von der Anwendung erzeugte Arbeitsdateien werden bei der Netzwerk- oder Job-Deaktivierung vom Entire Operations Monitor gelöscht.

Umgebungsvariablen

Umgebungsvariablen (Environment Variables) von Windows können innerhalb von Dateinamen beliebig verwendet werden. Dies entspricht dem aus BAT-Dateien gewohnten Verhalten. Die Kombination von Umgebungsvariablen und Variablen aus Symboltabellen ist möglich.

Jobkontrolle

Die Jobkontrolle für Windows kann an beliebiger Stelle abgelegt sein. Sie kann unter anderem in Natural-Textobjekten oder in Großrechner-Dateien abgelegt sein. Symbolersetzung und JCL-Generierung (Speicherart MAC) stehen zur Verfügung.

Job-Start und Jobkontrolle

Jobs werden wie auf dem Großrechner vom Entire Operations Monitor bedingungs- und zeitabhängig gestartet. Accounting-Daten werden gewonnen und gespeichert. Der manuelle Job-Abbruch (Cancel) aus der Online-Umgebung ist möglich.

Job-Ende-Prüfung

Entire Operations fügt der Windows-Jobkontrolle einige echo-Anweisungen hinzu, um bestimmte Meldungen im SYSOUT steuern zu können:

  • Start- und Ende-Meldung mit Zeitangabe

  • Job-Laufzeit

Anhand dieser Meldungen wird die Vollständigkeit des Job-Laufs überprüft. Außerdem werden Abrechnungsinformationen (Accounting-Daten) gewonnen. Zur Prüfung des Jobs kann man die Suche nach Zeichenketten im SYSOUT und Job-Ende-Prüfungsroutinen verwenden.

Job-Ende-Aktionen

Das Versenden von Nachrichten (z.B. mittels E-Mail) an Benutzer kann von Windows-Knoten aus erfolgen. In der Knoten-Definition von Windows-Knoten kann man ein Programm zum Senden von Nachrichten definieren. Dieses Programm muss von der DOS-Eingabeaufforderung ("Command Prompt") aus aufgerufen werden können. Ein Beispiel dafür ist das Shareware-Programm wsendmail. Alle anderen Formen der Nachrichtenübermittlung, wie die Entire Operations-Mailbox, können weiterhin verwendet werden.

Das Drucken von Dateien und SYSOUT-Listen kann als Job-Ende-Aktion definiert werden. Für jeden Windows-Knoten kann ein Windows-Druckbefehl mit Platzhalter für den Dateinamen definiert werden. Über User Exits können weitere Aktionen ausgeführt werden.

Dynamische JCL-Generierung (JCL-Speicherart MAC)

Dieser Abschnitt behandelt folgende Themen:

Weitere Informationen siehe Dynamische JCL-Generierung (MACRO-Funktionalität) im Dokument Konzept und Leistungsumfang.

Was ist dynamische JCL-Generierung?

Sobald Entire Operations ein Job-Netzwerk aktiviert, wird die JCL der Jobs im Netzwerk in die aktive Datenbank kopiert. Entire Operations stellt eine Funktion zur Verfügung, mit der Sie Variablen in der ursprünglichen JCL benutzten können, und die Teile der JCL je nach Programmlogik erzeugen kann. Variablen werden durch ihre aktuellen Werte entweder bei Aktivierung oder beim Job-Start ersetzt. Dieser Vorgang wird als Dynamische JCL-Generierung bezeichnet und betrifft nur Jobs mit Speicherart MAC in Entire Operations.

Die dynamisch generierte JCL ist z.B. dann sinnvoll, wenn die JCL nur unter bestimmten Umständen einen Verarbeitungsschritt enthalten soll. Beispiel: Ist das aktuelle Datum YYYYMMDD, dann soll der Jobstep X aufgenommen werden.

Die dynamische JCL kann für Jobs mittels der Editierfunktion in der Job-Verwaltung von Entire Operations definiert werden. Zur Konvertierung der bestehenden JCL in das Entire Operations MAC-Format ist die JCL-IMPORT-Funktion in der Job-Definition zu benutzen, wobei NAT als JCL-Speicherart anzugeben ist. In jedem Falle muss das Editor-Kommando MACRO zur Generierung der endgültigen JCL benutzt werden; zum Testen der Generierung steht das Editor-Kommando TEST zur Verfügung.

Anmerkung:
Das Macro TEST aktiviert nur Job- und Netzwerk-Symboltabellen, d.h., die Funktion des Macros TEST kann mit der Meldung Symbol nicht gefunden einen Fehlschlag anzeigen, aber dennoch erfolgreich durchlaufen, wenn das Macro beim Laden aktiver JCL ausgeführt wird und dabei mehrere Symboltabellen (zum Beispiel Aufrufer-Symboltabellen) zur Verfügung stehen.

Macro-Jobs editieren und generieren

Zum Editieren und Generieren von MAC-Jobs müssen Sie den integrierten Editor verwenden.

Weitere Informationen siehe:

Job-Ausführung

Job-Ausführung als Dummy-Job

Die Ausführung als Dummy-Job bedeutet, dass der Job ohne Job Control und ohne eigene Aktion innerhalb Entire Operations abläuft. Dummy-Jobs können eine erwartete Laufzeit haben, die sie dann im System warten. Dummy-Jobs enden immer mit dem Zustand o.k..

Ausführliche Informationen siehe Dummy-Job benutzen.

Job-Ausführung mit Epilog-Skript (UNIX und Windows)

Sie können ein Epilog-Skript innherhalb des JCL-Rahmens eines UNIX- oder Windows-Jobs laufen lassen. Das Epilog-Skript wird vom Frame-Skript aufgerufen und läuft nach dem Main-Skript. Im Normalfall ruft das Frame-Skript das Main-Skript direkt auf.

Weitere Informationen siehe Reserviertes Symbol für Epilog-Skripte (UNIX und Windows) im Kapitel Symboltabellen und Symbole.