Ausführen einer Kommandodatei
Eine Kommandodatei lässt sich von jeder physikalischen Konsole und von jedem berechtigten Benutzerprogramm aufrufen, sofern sie den Berechtigungsschlüssel E besitzen (siehe Abschnitt „Berechtigte Benutzerprogramme mit Operatorfunktionen"). Der aufrufenden Konsole bzw. dem Benutzerprogramm müssen jedoch alle Aufgabengebiete zugeordnet sein, auf die sich die Kommandos in der Kommandodatei beziehen (über den Berechtigungsschlüssel).
Das System bearbeitet zu einem gegebenen Zeitpunkt höchstens eine Kommandodatei. Empfängt es während der Bearbeitung einer Kommandodatei ein weiteres RUN-Kommando, so verzögert es die Ausführung dieses Kommandos so lange, bis die aktuelle Kommandodatei abgearbeitet ist.
Dabei geht das System wie folgt vor:
Stehen mehrere RUN-Kommandos in einer Kommandofolge, so werden sie in der Reihenfolge bearbeitet, wie sie in der Kommandofolge stehen.
Wird eine RUN-Prozedur mit dem Kommando CANCEL-RUN-PROCESS gestoppt, so werden auch alle in der RUN-Datei enthaltenen RUN-Kommandos nicht mehr ausgeführt.
Wenn die Ausführung einer Kommandodatei gestartet wird, zeigt dies Meldung NBR1000
an. Der Aufrufer einer Kommandodatei erhält nur Meldungen, die beim Ausführen der einzelnen Kommandos entstehen; die Kommandos selbst werden ihm i.d.R. nicht angezeigt.
Will der Kommandogeber das Kommando aus der RUN-Datei auf der Konsole mitprotokollieren, kann er dies mit dem Systemparameter NBRUNSP=Y erreichen. Unabhängig vom Systemparameter NBRUNSP werden Kommandos aus RUN-Dateien in der Protokolldatei (CONSLOG) festgehalten.
Enthält eine Kommandodatei Spezialkommandos, so läuft sie nur dann korrekt ab, wenn das berechtigte Benutzerprogramm bereits gestartet worden ist, das die Spezialkommandos empfangen und ausführen soll.
Der Ablauf einer Kommandodatei, die Spezialkommandos enthält, muss daher mit dem Start des berechtigten Benutzerprogramms koordiniert werden.
Dazu sind folgende Aktionen von der RUN-Prozedur aus zu veranlassen:
berechtigte Benutzerprogramme zur Bearbeitung von Spezialkommandos starten
(mit ENTER-JOB-Kommandos)Bearbeitung der Kommandodatei anhalten und die Bedingung zum Fortsetzen festlegen
(mit einem ASTOP-Kommando)
Um die Anlaufzeit auszunutzen, die die Tasks benötigen, stellt man die ENTER-JOB-Kommandos am günstigsten an den Anfang der Kommandodatei und das ASTOP-Kommando unmittelbar vor das erste Spezialkommando.
Die Bearbeitung der Kommandodatei wird fortgesetzt, wenn eine der folgenden Bedingungen erfüllt ist:
Es sind so viele AGOGO-Komandos eingetroffen, wie im ASTOP-Kommando als Bedingung festgelegt ist.
Die Wartezeit ist verstrichen, ohne dass genügend viele AGOGO-Kommandos eingetroffen sind.
Der Zeitraum, für den die Kommandobearbeitung bei einem ASTOP-Kommando unterbrochen wird, kann mit dem Systemparameter NBRUNWT festgelegt werden.
Er liegt zwischen 10 und 255 Sekunden und beträgt standardmäßig 180 Sekunden.
Beispiel für Spezialkommando
Die Systembetreuung hat für das von ihr betreute System das Spezialkommando SPECI vorgesehen, welches in der Kommandodatei nach dem Systemstart benutzt werden soll.
Diese Datei muss unter anderem folgende Kommandos enthalten:
/ENTER-JOB SPEC.CMD-PROC : /ASTOP /SPECI :
Die Datei SPEC.CMD-PROC muss dabei eine geeignete Kommandofolge zum Starten des Benutzerprogramms enthalten, das für die Verarbeitung des SPECI-Kommandos erstellt wurde. Die Datei sollte zudem das Kommando AGOGO enthalten, das zusammen mit dem Kommando ASTOP der RUN-Prozedur die Synchronisierung herstellt.
Das Zusammenspiel zwischen der Bearbeitung einer Kommandodatei und den Aktionen eines einzelnen berechtigten Benutzerprogramms zeigt das folgende Bild.
Bild 29: Bearbeiten einer Kommandodatei
Abbrechen einer Kommandodatei
Das Kommando CANCEL-RUN-PROCESS bricht die Bearbeitung einer gestarteten Kommandodatei ab. Zu seiner Ausführung muss der Operator eine RUN-ID angeben, die jeder gestarteten Kommandodatei nach dem Kommando RUN zugeteilt wird. Kommandodateien, die rekursiv aus einer anderen RUN-Sequenz angestartet werden, erhalten dieselbe RUN-ID wie die erzeugende Kommandodatei. Im Falle des Abbruchs einer Kommandodatei mit CANCEL-RUN-PROCESS werden automatisch auch alle erzeugten Kommandodateien abgebrochen. Das Kommando muss nicht notwendigerweise von derselben Konsole eingegeben werden, von dem aus das Kommando RUN gestartet wurde.
Es setzt allerdings den Berechtigungsschlüssel E voraus.