JCL - JOB-Anweisung
JOB-Anweisung ist die erste Steueranweisung in einer JCL. Dies gibt dem Betriebssystem, dem Spool und dem Scheduler die Identität des Jobs. Die Parameter in der JOB-Anweisung helfen den Betriebssystemen bei der Zuweisung des richtigen Schedulers, der erforderlichen CPU-Zeit und der Ausgabe von Benachrichtigungen an den Benutzer.
Syntax
Es folgt die grundlegende Syntax einer JCL-JOB-Anweisung:
//Job-name JOB Positional-param, Keyword-param
Beschreibung
Sehen wir uns die Beschreibung der in der obigen JOB-Anweisungssyntax verwendeten Begriffe an.
Berufsbezeichnung
Dies gibt dem Job eine ID, während er an das Betriebssystem gesendet wird. Es kann eine Länge von 1 bis 8 mit alphanumerischen Zeichen haben und beginnt direkt nach //.
JOB
Dies ist das Schlüsselwort, um es als JOB-Anweisung zu identifizieren.
Positionsparameter
Es gibt Positionsparameter, die zwei Arten haben können:
Positionsparameter | Beschreibung |
---|---|
Account information | Dies bezieht sich auf die Person oder Gruppe, der die CPU-Zeit geschuldet ist. Es richtet sich nach den Regeln des Unternehmens, dem die Mainframes gehören. Wenn es als (*) angegeben ist, wird die ID des Benutzers verwendet, der sich derzeit am Mainframe-Terminal angemeldet hat. |
Programmer name | Dies identifiziert die Person oder Gruppe, die für die JCL verantwortlich ist. Dies ist kein obligatorischer Parameter und kann durch ein Komma ersetzt werden. |
Schlüsselwort-Parameter
Im Folgenden sind die verschiedenen Schlüsselwortparameter aufgeführt, die in der JOB-Anweisung verwendet werden können. Sie können einen oder mehrere Parameter basierend auf den Anforderungen verwenden, die durch Komma getrennt sind:
Schlüsselwortparameter | Beschreibung |
---|---|
CLASS | Basierend auf der Zeitdauer und der Anzahl der für den Job erforderlichen Ressourcen weisen Unternehmen unterschiedliche Jobklassen zu. Diese können als einzelne Scheduler dargestellt werden, die vom Betriebssystem zum Empfangen der Jobs verwendet werden. Das Platzieren der Jobs im richtigen Scheduler erleichtert die Ausführung der Jobs. Einige Unternehmen haben unterschiedliche Klassen für Jobs in Test- und Produktionsumgebungen. Gültige Werte für den CLASS-Parameter sind Zeichen von A bis Z und numerische Werte von 0 bis 9 (Länge 1). Es folgt die Syntax: CLASS=0 to 9 | A to Z |
PRTY | Festlegen der Priorität des Jobs innerhalb einer Jobklasse. Wenn dieser Parameter nicht angegeben wird, wird der Job am Ende der Warteschlange in der angegebenen KLASSE hinzugefügt. Es folgt die Syntax: PRTY=N Wenn N eine Zahl zwischen 0 und 15 ist und die Zahl höher ist, ist die Priorität höher. |
NOTIFY | Das System sendet die Erfolgs- oder Fehlermeldung (Maximum Condition Code) an den in diesem Parameter angegebenen Benutzer. Es folgt die Syntax: NOTIFY="userid | &SYSUID" Hier sendet das System die Nachricht an den Benutzer "Benutzer-ID". Wenn wir jedoch NOTIFY = & SYSUID verwenden, wird die Nachricht an den Benutzer gesendet, der die JCL sendet. |
MSGCLASS | Angeben des Ausgabeziels für die System- und Jobnachrichten, wenn der Job abgeschlossen ist. Es folgt die Syntax: MSGCLASS=CLASS Gültige Werte für CLASS können von "A" bis "Z" und von "0" bis "9" sein. MSGCLASS = Y kann als Klasse zum Senden des Jobprotokolls an das JMR festgelegt werden (JOBLOG Management and Retrieval: Ein Repository in Mainframes zum Speichern der Jobstatistik). |
MSGLEVEL | Gibt den Typ der Nachrichten an, die an das in der MSGCLASS angegebene Ausgabeziel geschrieben werden sollen. Es folgt die Syntax: MSGLEVEL=(ST, MSG) ST = Art der Anweisungen, die in das Ausgabeprotokoll geschrieben werden
MSG = Art der Nachrichten, die in das Ausgabeprotokoll geschrieben werden.
|
TYPRUN | Gibt eine spezielle Verarbeitung für den Job an. Es folgt die Syntax: TYPRUN = SCAN | HOLD Wobei SCAN und HOLD die folgende Beschreibung hat
|
TIME | Gibt die Zeitspanne an, die der Prozessor zum Ausführen des Jobs verwenden soll. Es folgt die Syntax: TIME=(mm, ss) or TIME=ss Wobei mm = Minuten und ss = Sekunden Dieser Parameter kann beim Testen eines neu codierten Programms hilfreich sein. Um sicherzustellen, dass das Programm aufgrund von Schleifenfehlern nicht lange ausgeführt wird, kann ein Zeitparameter so codiert werden, dass das Programm abbricht, wenn die angegebene CPU-Zeit erreicht ist. |
REGION | Gibt den Adressraum an, der zum Ausführen eines Jobschritts innerhalb des Jobs erforderlich ist. Es folgt die Syntax: REGION=nK | nM Hier kann die Region als nK oder nM angegeben werden, wobei n eine Zahl ist, K Kilobyte und M Megabyte ist. Wenn REGION = 0K oder 0M ist, wird der größte Adressraum für die Ausführung bereitgestellt. In kritischen Anwendungen ist die Codierung von 0K oder 0M verboten, um eine Verschwendung des Adressraums zu vermeiden. |
Beispiel
//URMISAMP JOB (*),"tutpoint",CLASS=6,PRTY=10,NOTIFY=&SYSUID,
// MSGCLASS=X,MSGLEVEL=(1,1),TYPRUN=SCAN,
// TIME=(3,0),REGION=10K
Hier wird die JOB-Anweisung über die 70. Position in einer Zeile hinaus erweitert, sodass wir in der nächsten Zeile fortfahren, die mit "//" gefolgt von einem oder mehreren Leerzeichen beginnen sollte.
Verschiedene Parameter
Es gibt nur wenige andere Parameter, die mit der JOB-Anweisung verwendet werden können, aber sie werden nicht häufig verwendet:
ADDRSPC | Art des verwendeten Speichers: Virtuell oder Real |
BYTES | Größe der Daten, die in das Ausgabeprotokoll geschrieben werden sollen, und die Aktion, die ausgeführt werden soll, wenn die Größe überschritten wird. |
LINES | Maximale Anzahl von Zeilen, die gedruckt werden sollen, um das Protokoll auszugeben. |
PAGES | Maximale Anzahl von Seiten, die gedruckt werden sollen, um das Protokoll auszugeben. |
USER | Benutzer-ID, die zum Senden des Jobs verwendet wird |
PASSWORD | Passwort der im Parameter USER angegebenen Benutzer-ID. |
COND and RESTART | Diese werden in der bedingten Jobschrittverarbeitung verwendet und im Detail erläutert, während die bedingte Verarbeitung erläutert wird. |