Symbole werden während der Aktivierung eines Job-Netzwerks oder Jobs oder beim Start eines Jobs aktiviert:
Symbole mit vorangehendem Aktivierungsfluchtzeichen werden beim Laden der JCL als Teil der Jobaktivierung aufgelöst.
Symbole mit vorangehendem Jobstartfluchtzeichen werden beim Jobstart aufgelöst.
Anmerkungen:
'Job not run - JCL error'
auf 'occurred'
gesetzt. Falls die Ereignis-JNR nicht definiert ist, wird sie zum aktiven Job
hinzugefügt.
&($SYSJV.TSN)
werden nicht mehr als Entire
Operations-Symbole behandelt, und zwar unabhängig davon, ob sie ein
vorangestelltes kaufmännisches Und-Zeichen (&) haben, welches ein
Aktivierungsfluchtzeichen oder Jobstartfluchtzeichen bedeutet.
Dieser Abschnitt behandelt folgende Themen:
Siehe auch Symbol-Suchhierarchie.
In JCL und in Natural-Macro-Source verwendete Symbole müssen ein vorangestelltes Fluchtzeichen haben.
Sie können unterschiedliche Fluchtzeichen benutzen, um festzulegen, ob eine Symbolersetzung während der JCL-Generierung oder beim Job-Start erfolgen soll.
Folgende Fluchtzeichen können in Ihrer Entire Operations-Umgebung parallel verwendet werden:
Symbole mit einem vorangestellten Aktivierungsfluchtzeichen werden während der Aktivierung eines Netzwerks oder eines Jobs ersetzt.
Wenn solche Symbole in einer JCL-Datei vorhanden sind, dann erfolgt eine Symbolersetzung:
Beim Editieren der JCL (temporär, unter Verwendung der Master-Symboltabelle).
Beim Laden der JCL (permanent, unter Verwendung der aktiven Symboltabelle).
Symbole mit einem vorangestellten Startfluchtzeichen werdem beim Jobstart ersetzt. Sie können verwendet werden, um Symbolwerte zu übergeben, die nicht zu einem früheren Zeitpunkt definiert werden können, wenn der Job aktiviert wird.
Vorsicht:
Wenn Sie Fluchtzeichen-Definitionen für existierende JCL ändern,
dann können zu ersetzende Symbole nicht mehr aufgefunden werden. In solchen
Fällen sollten Sie in Betracht ziehen, Fluchtzeichen innerhalb Ihrer JCL oder
MACRO-Source zu definieren.
Es wird empfohlen, folgende Fluchtzeichen zu verwenden;
Betriebssystem | Fluchtzeichen |
---|---|
z/OS | § (Paragrafzeichen) und $
(Dollarzeichen)
|
z/VSE | § (Paragrafzeichen) und #
(Rautenzeichen)
|
BS2000 | ^ (Zirkumflex) und ` (Gravisakzent)
Benutzen Sie nicht das Dollarzeichen ( |
UNIX, Windows | Nicht empfohlen, außer bei UNIX:
Benutzen Sie nicht das Dollarzeichen ( |
Vorsicht:
Zweckmäßigerweise verwendet man keine Fluchtzeichen, die schon
von anderen (betriebssystemspezifischen) JCL-Merkmalen benutzt werden, z.B.
Parameter für DO-Prozeduren und SUBDTA-Zeichen in BS2000.
Sie können die Standard-Aktivierungsfluchtzeichen und -Startfluchtzeichen an folgenden Stellen definieren:
Standardeinstellungen
Der Bildschirm Standardeinstellungen (1) der Funktion Entire Operations Standardwerte (siehe Systemverwaltung-Dokumentation) dient dazu, die Standardwerte für alle Netzwerke in Ihrer Entire Operations-Umgebung zu definieren.
Wenn Sie im Bildschirm Standardeinstellungen (1) die Taste PF10 (OSpec) drücken, können Sie außerdem die Standard-Fluchtzeichen jede Betriebssystemklasse definieren.
Netzwerk-Definition
Definiert die Standard-Fluchtzeichen, die von allen Jobs eines Netzwerkes verwendet werden sollen.
Job-Definition
Definiert die Standard-Fluchtzeichen, die von einem einzelnen Job verwendet werden sollen.
Definitionen in JCL und Macro-Source
Sie können Standard-Fluchtzeichen in Entire Operations JCL oder in Natural-Macro-Source definieren, indem Sie eines oder beide der folgenden Meta-Statements in der (den) ersten Sourcecode-Zeile(n) kodieren:
#EOR-ESC-ACT = activation-character #EOR-ESC-SUB = submit-character
Beispiel:
#EOR-ESC-ACT = § #EOR-ESC-SUB = ^
Das Meta-Statement #EOR-ESC-ACT =
activation-character
wird ausgewertet, setzt
alle Aktivierungsfluchtzeichenaußer Kraft, die zurzeit in Ihren aktiven
Job-Netzwerken benutzt werden. Das Meta-Statement wird nach dem Laden aus der
aktiven JCL entfernt.
Das Meta-Statement #EOR-ESC-ACT =
submit-character
wird während des Jobstarts
ausgewertet. Das als submit-character
angegebene Zeichen setzt alle Startfluchtzeichen außer Kraft, die zurzeit in
dem aktiven Job benutzt werden. Das Meta-Statement bleibt nach dem Laden in der
aktiven JCL erhalten.
Beide Statements werden protokolliert, wenn sie beim Laden der JCL oder beim Jobstart ausgewertet werden.
Wenn Sie ein Meta-Statement in einem Natural-Macro-Source-Objekt
hinzufügen, müssen Sie die Sourcecode-Datei mit dem Kommando MACRO
neu katalogisieren.
This Abschnitt covers the following topics:
Symbole können auch innerhalb anderer Symbole benutzt werden.
Symbol | Wert |
---|---|
PREFIX
|
EOR |
STEPLIB
|
§PREFIX..EXAMPLE.LOAD |
§STEPLIB
wird durch EOR.EXAMPLE.LOAD
ersetzt.
Anmerkung:
Falls ein Punkt ein Symbolende kennzeichnet, so wird er bei der
Ersetzung gelöscht. Bei rekursiver Ersetzung geschieht diese Löschung jeweils
pro Ersetzung. Es muss also eine genügende Anzahl Punkte codiert werden. Wenn
am Symbolende ein Punkt erhalten bleiben soll, so müssen zwei Punkte codiert
werden.
Bei der Symbolersetzung in Job Control Language (JCL), die auf Großrechner-Betriebssystemen (z/OS, BS2000 usw.) gestartet wird, gelten folgende Besonderheiten:
Spalte 72 enthält ein Leerzeichen und die Spalten 73 - 80 enthalten Ziffern. | Die Spalten 71 - 80 der Zeile werden vor der 1. Ersetzung gesichert und nach der letzten Ersetzung wieder zurückgeschrieben. |
Spalte 72 enthält Bindestrich (-) und die Spalten 73 - 80 enthalten Leerzeichen. | Die Spalten 71 - 80 der Zeile werden vor der 1. Ersetzung gesichert und nach der letzten Ersetzung wieder zurückgeschrieben. |
Spalte 71 - 80 enthält Komma (,)
(8 Leerzeichen hinter dem Bindestrich) |
Die Spalten 71 - 80 der Zeile werden vor der 1. Ersetzung gesichert und nach der letzten Ersetzung wieder zurückgeschrieben. |
Zwischenergebnisse | Zwischenergebnisse können auch länger als 71 Zeichen sein. Sie werden erst am Ende der gesamten Ersetzung von eventuell gesicherten Strings überschrieben. |
Bitte vermeiden Sie in Symbolwerten das Gleichheitszeichen (=), weil es Probleme beim Import oder Export von Symboltabellen verursacht.
Zu ersetzende Symbole werden durch ein vorangehendes Fluchtzeichen JCL-weit erkannt.
Sie können vor einem Symbol ein Aktivierungsfluchtzeichen oder ein Jobstartfluchtzeichen angeben.
Der Symbolname wird durch ein Textbegrenzungszeichen begrenzt:
Leerzeichen ( )
Komma (,)
Semikolon (;)
Punkt (.)
Apostroph (')
At-Zeichen (@)
Prozentzeichen (%)
Nicht-Zeichen ()
kaufmännisches Und-Zeichen (&)
öffnende runde Klammer (()
schließende runde Klammer ())
Gleichheitszeichen (=)
Beispiel: §SYMBOL-1;
Ein einzelner Punkt (.) nach einem Symbol wird während der Symbolersetzung entfernt. Zwei aufeinanderfolgende Punkte (..) werden jedoch in einen Punkt (.) umgewandelt. Dies ist bei der dynamischen Generierung von Dateinamen wichtig. Rekursive Symbolersetzung (Symbole innerhalb Symbolen) ist auch möglich.
Folgender Algorithmus wird bei der Symbolersetzung angewandt:
Suche das am weitesten links stehende Symbol.
Falls keines (mehr) vorhanden -> Ende.
Ersetzung
Falls Fehler -> Ende.
Schreibe geänderte Zeile zurück.
Weiter bei (1).
Dadurch ist eine rekursive Symbolersetzung (Symbol innerhalb von Symbolen) möglich.
Anmerkung:
Dieser Abschnitt gilt nur für JCL, die auf Großrechnern gestartet
wird.
Durch die Symbolersetzung kann es zu einer Verschiebung innerhalb einer Zeile kommen. Unter folgenden Voraussetzungen werden jedoch Teile der Zeile auf fester Position gehalten:
Symbole folgen einander nicht unmittelbar.
Der Spaltenbereich 72 bis 80 bleibt immer konstant. Falls Spalte 70 ein Leerzeichen und Spalte 71 ein Komma enthalten, so werden auch diese konstant gehalten.
Einem Symbol folgen direkt mindestens 2 Leerzeichen: Der Zeilenrest wird auf konstanter Position gehalten, außer wenn sich eine Überlappung durch den Symbolwert ergeben würde. Zum Beispiel:
/FILE ABC.§VAR COMMENT
wird mit VAR=REPLACE zu:
/FILE ABC.REPLACE COMMENT
Einem Symbol folgt direkt konstanter Text, dann mindestens 2 Leerzeichen, dann weitere konstanter Text, der mit einem Ausrufezeichen ! markiert ist. Dann wird analog zu ? verfahren, sowie das Ausrufezeichen ! durch Leerzeichen ersetzt. Zum Beispiel:
/FILE ABC.§VAR..XYZ !COMMENT
wird mit VAR=REPLACE zu:
/FILE ABC.REPLACE..XYZ COMMENT
Zur Ersetzung eines Symbols durch mehrfache Symbolwerte bei der mehrfachen Parallelaktivierung eines Jobs, ist die zu ersetzende Variable durch P-SUFFIX zu kennzeichnen. Es handelt sich dabei um die Variable, die Sie im Feld Suffix-Symbol im Fenster Master Job-Definition angegeben haben (siehe Beschreibung für dieses Feld im Abschnitt Job-Verwaltung).
Nur durch Verwendung von P-SUFFIX als Platzhalter für diese Variable wird eine Mehrfachersetzung durchgeführt. Zur Definition von mehrfachen Symbolwerten, siehe hier.
Anmerkung:
Falls das Suffix-Symbol keine Ausprägungen enthält, so wird der
multiple Job als temporärer Dummy-Job aktiviert.
Eine bestimmte Ausprägung eines multiplen Symbols erhält man mit der Symbolfunktion MV (multiple value), die mit Entire Operations ausgeliefert wird.
Um die Eingabe der Symbole auch für Unternetzwerke zu erreichen, können Sie eine Symboltabelle an das Hauptnetz knüpfen, die alle in den Jobs des Unternetzwerkes/der Unternetzwerke abzufragenden Symbole enthält. Gleichzeitig können die Symboltabellen mit Symbolen, deren Werte nicht abgefragt werden sollen, an die jeweiligen Jobs des Unternetzwerkes/der Unternetzwerke gelinkt werden. Dadurch werden nach Eingabe der Symbole aktive Symboltabellen erzeugt, die am Hauptnetzwerk hängen.
Auf Jobebene versucht Entire Operations die Symbole aus der/den darüberliegenden Ebenen zu laden, wenn ein Symbol in der zugehörigen Symboltabelle nicht gefunden wird, z.B. aus der aktiven Symboltabelle des Hauptnetzwerkes. Entire Operations legt auf der Jobebene der Unternetzwerke keine aktiven Symboltabellen an, da die Laufnummern zum Zeitpunkt der Aktivierung des Hauptnetzwerkes noch nicht bekannt sind und als erste Aktion der Aktivierung die Symboleingabe durchgeführt wird.
Die folgenden Beispielbildschirme verdeutlichen die Vorgehensweise:
+------------------------------------------------------------------------+ ! ! ! Netzwerk-Aenderung ! ! Eigentuemer GFR Netzwerk SUB-1_____ Version __________ ! ! Beschreibung SubNet Test_______________________________________ ! ! Schleife existiert N ! ! Standardwerte fuer die Jobs ! ! Ausfueh. Knoten N0146 MVS/ESA Symboltabelle SUB-UNIX-1 ! ! JCL Knoten N0146 MVS/ESA Symboltabellen-Version __________ ! ! JCL Speicherart NAT Symboltab.-Aktivierungsmodus X ! ! Fluchtzeichen Akt. § Start ^ ! ! Jobende-Aktions-Fehler setzen 'nicht ok' Bedingungen ==> _ ! ! ! ! Datei ______________________________________________________ ! ! VolSer ______ Passwort ! ! definiert nein ! ! --PF1-----PF3-----PF5---PF6---PF7---PF8---PF9---PF10---PF11--------- ! ! Help End Save Spec Symb SP-UR DfJb Copy MsgRe ! +------------------------------------------------------------------------+ |
Hauptnetzwerk mit Symboltabelle, die abzufragende Symbole enthält (GFR-ST3).
20.04.10 ***** Entire Operations ***** 15:49:38 Eigentuemer GFR Job-Verwaltung Netzwerk SUB-1 ------------------------------------------------------------------------------ Kdo B R PU Job Typ SpA Beschreibung Datei oder Bibl.,Member *--------- _ DUMMY DUM dummy _ B1 SUB-11 NET GFR/TESTNET10 (A) _ _ _ _ _ _ _ _ _ _ ******************************* Ende der Daten ******************************* A Abhg. C Kop. D Loe. E Edit G JCL vorgen. I Eing.Bed. J JCL L Ress. M Aend. O Jobende-Prf + Akt P Beschr. R Aktivieren S Zeitpl.Parm U Erw.Log Z Unter-Nw. Kommando => ____________________________________________________________ Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- Help Add End Save Up Down Menu |
Diese Abbildung zeigt die Jobs des Hauptnetzwerkes DUMMY und SUB-11 mit Symboltabelle.
+------------------------------------------------------------------------+ 8 ! ! ! Job-Definition (Master) ! -- ! ! ! Job-Name ==> DUMMY_____ Geaendert ==> SYSDBA 07.03.01 16:49 ! ! Beschreibung ==> dummy_________________________ ! ! Jobtyp ==> DUM ! ! Ausfueh.Knoten ==> N0146 MVS/ESA ! ! ! ! Spezieller Typ ==> _ Symboltabelle ==> GFR-ST3___ ! ! Restart-faehig ==> N Suffix-Symbol ==> ____________________ ! ! Fluchtzeichen: Aktivierung ==> § ! ! Jobstart ==> $ ! ! ! ! Enter-PF1---PF2--PF3--PF4---PF5---PF6---PF7---PF8---PF9--PF10---PF12- ! ! Help Add End Edit Save Spec Symb Net JCL Copy Menu ! +------------------------------------------------------------------------+ ******************************* Ende der Daten ******************************* A Abhg. C Kop. D Loe. E Edit G JCL vorgen. I Eing.Bed. J JCL L Ress. M Aend. O Jobende-Prf + Akt P Beschr. R Aktivieren S Zeitpl.Parm U Erw.Log Z Unter-Nw. Kommando => ____________________________________________________________ Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- Help Add End Save Up Down Menu |
An den Dummy-Job ist die Symboltabelle gelinkt, die abzufragende Symbole enthält (GFR-ST3). An den Unternetzwerken selbst hängen keine Symboltabellen.
+------------------------------------------------------------------------+ 4 ! ! 0 ! Job-Definition (Master) ! -- ! ! ! Job-Name ==> TESTJOB11_ Geaendert ==> SYSDBA 07.03.01 16:49 ! ! Beschreibung ==> ______________________________ ! 4 ! Jobtyp ==> JOB ! ! Ausfueh.Knoten ==> N0148 MVS/ESA ! ! ! ! Spezieller Typ ==> _ Symboltabelle ==> GFR-ST2___ ! ! Restart-faehig ==> _ Suffix-Symbol ==> ____________________ ! ! Fluchtzeichen: Aktivierung ==> § ! ! Jobstart ==> $ ! ! ! ! Enter-PF1---PF2--PF3--PF4---PF5---PF6---PF7---PF8---PF9--PF10---PF12- ! ! Help Add End Edit Save Spec Symb Net JCL Copy Menu ! +------------------------------------------------------------------------+ ******************************* Ende der Daten ******************************* A Abhg. C Kop. D Loe. E Edit G JCL vorgen. I Eing.Bed. J JCL L Ress. M Aend. O Jobende-Prf + Akt P Beschr. R Aktivieren S Zeitpl.Parm U Erw.Log Z Unter-Nw. Kommando => ____________________________________________________________ Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- Help Add End Save Up Down Menu |
Auf unterster Jobebene ist eine Symboltabelle gelinkt, deren Symbole nicht abgefragt werden (GFR-ST2). Nach Drücken von PF9 (JCL) können Sie die JCL-Definition vornehmen.
Job-Definition - JCL Definition (Master)
+------------------------------------------------------------------------+ 1 ! ! 0 +------------------------------------------------------------------------+ -- ! ! er ! Job: JCL Definition (Master) ! ! ! 4 ! Job Name ==> TESTJOB11 Mod ==> GFR 17.11.08 10:59 ! ! Description ==> ! ! Job Type ==> JOB ! ! Execution Node ==> 148 MVS/ESA Symboltabelle ==> GFR-ST2 ! ! ! ! JCL Location ==> PDS ! ! JCL Node ==> 148 MVS/ESA ! ! File/NatLib ==> SN.GFR.SOURCE_______________________________ ! ! Member ==> IEFBR14_ ________ ! ! VolSer ==> ______ (if not catlgd) Password ==> ! ! ! ! Enter-PF1--------PF3--PF4---PF5---PF6---PF7---PF8---------------PF12- ! ** ! Help End Edit Save Spec Symb Impo Menu ! +------------------------------------------------------------------------+ g Command => ____________________________________________________________ Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- Help Add End Save Up Down Menu |
Diese Abbildung zeigt die Master-Symboltabelle GFR-ST2.
20.04.10 ***** Entire Operations ***** 15:52:49 Eigentmr GFR Master Symboltabelle GFR-ST2 Netzwerk TESTNET10 Lauf ------------------------------------------------------------------------------ K Symbol F A Wert geaendert von *------------------- _ NUM N A 100000 GFR 28.11.97 16:04 _ _ _ _ _ _ _ _ _ _ _ _ ******************************* Ende der Daten ******************************* C Kopieren D Loeschen L Anzeigen M Aendern Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- Help Add End Copy Save Up Down Print |
Diese Abbildung zeigt die Master-Symboltabelle GFR-ST3.
29.04.10 ***** Entire Operations ***** 09:29:32 Eigentmr GFR Master Symboltabelle GFR-ST3 Netzwerk SUB-1 Lauf ------------------------------------------------------------------------------ K Symbol F A Wert geaendert von *------------------- _ CLASS A A G GFR 04.08.97 16:07 _ MSGCLASS A A X GFR 04.08.97 15:05 _ _ _ _ _ _ _ _ _ _ _ ******************************* Ende der Daten ******************************* C Kopieren D Loeschen L Anzeigen M Aendern Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- Help Add End Copy Save Up Down Print |
Diese Abbildung zeigt die Master-JCL für TESTJOB11.
Edit SN.GFR.SOURCE(IEFBR14)------------------------- ==> Member IEFBR14 saved ====> BLAETTERN===> CSR ***** ****************************** top of data ***************************** 00001 //IEFBR14 JOB ,GFR,MSGCLASS=$MSGCLASS,CLASS=$CLASS 00002 /* NUM=$NUM 00003 //STEP1 EXEC PGM=IEFBR14 ***** **************************** bottom of data **************************** Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- Help End Quit Rfind Rchan Up Down Left Right Curso |
Diese Abbildung zeigt die aktive JCL für TESTJOB11.
Edit SN.GFR.SOURCE(IEFBR14)------------------------- ==> Member IEFBR14 saved ====> BLAETTERN===> CSR ***** ****************************** top of data ***************************** 00001 //IEFBR14 JOB ,GFR,MSGCLASS=X,CLASS=G 00002 /* NUM=$NUM 00003 //STEP1 EXEC PGM=IEFBR14 ***** **************************** bottom of data **************************** Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- Help End Quit Rfind Rchan Up Down Left Right Curso |
Symbole mit vorangehendem Aktivierungsfluchtzeichen werden beim Laden der JCL als Teil der Jobaktivierung aufgelöst.
Symbole mit vorangehendem Jobstartfluchtzeichen werden beim Jobstart aufgelöst.
Anmerkung:
Wenn bei Jobstart ein Symbolersetzungsfehler auftritt, wird die
Ereignis-JNR 'Job not run - JCL error'
auf 'occurred'
gesetzt. Falls die Ereignis-JNR nicht definiert ist, wird sie zum aktiven Job
hinzugefügt.
/* IN §JJ. SOFTWARE AG
wird mit J = 20 und JJ = §J.11 zu:
/* IN 2011 SOFTWARE AG
Der Vorteil dieser Methode ist, dass die Ersetzung stellengerecht erfolgt.