EGL-Programme, die für den VSE-Stapelbetrieb oder für CICS for VSE generiert werden, können ein Member einer VSE/POWER-Warteschlange erstellen und Daten in dieses Member schreiben, indem die Eigenschaft fileType in der Ressourcenzuordnung für die serielle Datei oder die Druckdatei bei der Generierung auf spool gesetzt wird.
Eine serielle Datei oder Druckausgabedatei, der spool als Dateityp zugeordnet ist, kann erstellt und an die VSE/POWER-Warteschlange des Typs RDR, LST oder PUN weitergeleitet werden.
EGL-Programme, die für CICS for
VSE generiert werden, können darüber hinaus Daten aus einem Member einer VSE/POWER-Warteschlange lesen, indem einer seriellen Datei bei der Generierung der Dateityp spool zugeordnet wird.
Die erste Anweisung add für einen Datensatz, der einer Spooldatei zugeordnet ist, erstellt ein neues Member der VSE/POWER-Warteschlange und fügt Daten am Beginn der Datei hinzu. Spätere Anweisungen add fügen Daten an die zuvor hinzugefügten Daten an, bis die Datei geschlossen wird.
Eine Anweisung close, die für eine Spooldatei ausgegeben wird, schließt das Member
der VSE/POWER-Warteschlange.
Sobald eine Spooldatei geschlossen wurde, erstellt eine nachfolgende Anweisung add für einen Datensatz mit demselben Dateinamen ein neues Member in der VSE/POWER-Warteschlange. Beim Hinzufügen von Daten zu einer Spooldatei, die an die VSE/POWER-Warteschlange des Typs LST weitergeleitet werden sollen, müssen Sie beachten, dass Member der VSE/POWER-Warteschlange des Typs LST
durch IBM® Rational COBOL Runtime for zSeries mit der Option ASA geöffnet werden.
Dies gibt an, dass beim Erstellen des Berichts am Beginn jeder Datenzeile ein ANSI-Druckersteuerungszeichen verwendet wird. Handelt es sich bei der Datei um eine serielle Datei, müssen Sie sicherstellen, dass gültige Vorschubsteuerzeichen verwendet werden. Handelt es sich um eine Druckdatei, fügt Rational COBOL Runtime die Druckersteuerungszeichen automatisch hinzu.
Eine Spooldatei wird unter den folgenden Umständen geschlossen:
- Das Programm wird beendet.
- Eine Anweisung close verweist auf die Datei.
- Wiederherstellbare Ressourcen werden festgeschrieben (durch sysLib.commit(), sysLib.rollback(), Beendigung der Transaktion oder des Segments).
Jeder Schließvorgang gibt das Ende der Datei an.
Da Sie beim Erstellen einer Spoolausgabedatei ein VSE/POWER-Warteschlangenziel auswählen können, sind Sie in der Lage, eine Datei zu erstellen, die als Stapeljob in die VSE/POWER-Warteschlange des Typs RDR gestellt wird. Bitte beachten Sie, dass eine Anweisung
close, die auf eine Spooldatei verweist, bei der es sich um ein Member der Warteschlange RDR handelt, das Ende der Datei angibt. Eine nachfolgende Anweisung add für die RDR-Warteschlangendatei erstellt ein neues Member der RDR-Warteschlange, das als separater Stapeljob verarbeitet werden muss. Beachten Sie bei der Erstellung von Jobs außerdem, dass bei Ausgabe einer POWER-Anweisung EOJ der POWER-Job für die Ausführung verfügbar gemacht wird, bevor die Spooldatei geschlossen wird.
Systemressourcennamensformat für VSE-Spooldatei
In z/VSE richtet sich der Systemressourcenname für eine Spooldatei danach, ob die Datei für die Eingabe oder für die Ausgabe verwendet wird. Eine Eingabespooldatei kann nur für CICS for z/VSE, aber nicht für den zVSE-Stapelbetrieb verwendet werden.
Anmerkung: Rational COBOL
Runtime führt keine Fehlerprüfung durch, um sicherzustellen, dass für die Qualifikationsmerkmale im Systemressourcennamen eine korrekte Kombination von Werten verwendet wird.
Rational COBOL Runtime
sendet die Werte für jedes Qualifikationsmerkmal im Systemressourcennamen unverändert an VSE/POWER. Falls die Programmeigenschaft v60ExceptionCompatibility auf YES gesetzt ist,
stellt Rational COBOL
Runtime den Rückgabecode von VSE/POWER in sysVar.errorCode.
Ist die Programmeigenschaft v60ExceptionCompatibility auf NO gesetzt, wird eine E/A-Ausnahme ausgelöst.
- Eingabedatei
- Maximal 10 Byte langer Name im Format benutzer-id.klasse
- benutzer-id
- Die ein- bis achtstellige VSE/POWER-ID des Programms oder des Benutzers, das/der den Bericht verarbeitet. Die ID darf weder Leerzeichen noch Nullzeichen enthalten. Für diesen Wert gibt es keine Standardeinstellung.
- klasse
- Die einstellige Spoolklasse. Die Komponente klasse ist optional und hat standardmäßig den Wert 'A'. Die Angabe eines Sterns, damit EGL für eine Eingabespooldatei
einen Standardwert für klasse verwendet, ist nicht möglich. Die Eingabespooldatei wird aus der VSE/POWER-Warteschlange PRT oder
PUN gelesen.
- Ausgabedatei
- Maximal 65 Byte langer Name im Format jobname.warteschlange.klasse.disposition.formular.knoten.benutzer-id.parameter
Anmerkung: Der Parameter jobname muss angegeben oder der Standardwert explizit durch die Angabe eines Sterns (*) angefordert werden. Bei allen anderen Parametern kann der Standardwert durch die Angabe eines Sterns (*) oder eines Leerzeichens angefordert werden. Falls Sie für einen Parameter den Standardwert mit einem Leerzeichen anfordern, werden jedoch für alle nachfolgenden Parameter ebenfalls Standardwerte verwendet.
- jobname
- Der ein- bis achtstellige Name, der den Jobnamen für das VSE/POWER-Warteschlangenmember definiert. Dieser Wert wird verwendet, wenn CICS Report Control Facility (RCF) verwendet wird. Ein Stern (*) in diesem Feld bewirkt, dass der EGL-Dateiname für den Datensatz oder EZEPRINT für eine Druckdatei verwendet wird. Wenn RCF nicht verwendet wird (z. B. bei der Warteschlange PUN oder LST), wird der Wert
für jobname ignoriert und der Jobname des VSE/POWER-Warteschlangenmembers
ist die Programm-ID von CICS for z/VSE.
- warteschlange
- Der dreistellige Name, der die VSE/POWER-Zielwarteschlange für die Datei angibt. Die folgenden Werte sind gültig:
- RDR für Jobausgabe
- LST für Listenausgabe
- PUN für Stanzerausgabe
- PRT für Listenausgabe (mit RCF)
- Die Verwendung eines anderen Zeichens für die Warteschlange verursacht einen Fehler für den Spoolnamen.
Ein Stern (*) oder ein Leerzeichen in diesem Feld bewirkt die Verwendung der Warteschlange PRT.
- Wenn für warteschlange RDR oder PRT angegeben ist, wird RCF für den Zugriff auf die Datei verwendet. Ist für warteschlange PUN oder LST angegeben, wird die
CICS-Basisunterstützung für den Spoolbetrieb verwendet. Bitte beachten Sie, dass sowohl LST als auch PRT angibt, dass die Datei Bestandteil der VSE/POWER-Warteschlange LST sein soll, PRT jedoch RCF-Befehle verwendet und LST nicht.
- Falls Sie versuchen, RCF zu verwenden, ohne dass RCF auf Ihrem
CICS-System installiert ist, gibt CICS eine Fehlernachricht zurück. Dies könnte ein Transaktionsabbruch
AEY9, eine Bedingung NOSPOOL oder die Nachricht sein, dass das Spoolsystem nicht verfügbar ist.
- Wird PRT oder LST als Warteschlangenwert verwendet, öffnet Rational COBOL Runtime for z/VSE die Datei mit der Option ASA. Diese Option gibt an, dass beim Erstellen des Berichts am Beginn jeder Datenzeile ein ANSI-Druckersteuerungszeichen verwendet wird. Wenn Sie eine serielle Datei verwenden, müssen Sie sicherstellen, dass gültige Vorschubsteuerzeichen verwendet werden. Handelt es sich bei der Datei um eine Druckdatei, fügt Rational COBOL Runtime for z/VSE die ANSI-Druckersteuerungszeichen automatisch hinzu.
- klasse
- Ein einzelnes Zeichen, das die Klasse angibt. Ein Stern (*) oder ein Leerzeichen in diesem Feld bewirkt die Verwendung des Standardwerts einer Nullzeichenfolge.
- disposition
- Ein einzelnes Zeichen, das den VSE/POWER-Dispositionsstatus des Warteschlangenmembers angibt, nachdem es geschlossen wurde. Die folgenden Werte sind gültig:
- D
- Der Job wird verarbeitet und anschließend gelöscht.
- H
- Der Job wird bis zur Freigabe in der Warteschlange angehalten.
- K
- Der Job wird verarbeitet und nach der Verarbeitung
in der Warteschlange beibehalten.
- L
- Der Job verbleibt bis zur Freigabe in der Warteschlange.
- Die Verwendung eines anderen Zeichens für disposition führt zu einem Fehler für den Spoolnamen. Dieses Feld ist nur anwendbar, wenn für warteschlange LST oder PUN angegeben wird. Ein Stern (*) oder ein Leerzeichen in diesem Feld bewirkt die Verwendung des Standardwerts 'D'.
- formular
- Der vierstellige Name, der die Formularnummer für die Druckausgabe angibt.
Ein Stern (*) oder ein Leerzeichen in diesem Feld bewirkt die Verwendung des Standardformulars Ihres Standorts.
- knoten
- Die ein- bis achtstellige ID, die den Systemknoten angibt. Ein Stern (*) oder ein Leerzeichen in diesem Feld bewirkt die Verwendung der aktuellen Systemknoten-ID als Standardwert.
- benutzer-id
- Die ein- bis achtstellige VSE/POWER-ID des Programms oder des Benutzers, das/der den Bericht verarbeitet. Die ID darf weder Leerzeichen noch Nullzeichen enthalten.
- Unter CICS for z/VSE wird ein Stern (*) oder ein Leerzeichen im Parameter
benutzer-id folgendermaßen verarbeitet:
- Falls Sie bei CICS angemeldet sind, wird für
benutzer-id standardmäßig der Inhalt von sysVar.userID verwendet.
- Falls Sie nicht bei CICS angemeldet sind, wird für
benutzer-id der Stern als Wert verwendet bzw. das Leerzeichen durch einen Stern ersetzt.
- Wird für benutzer-id der Wert ANY angegeben, wird der Wert auf einen Stern zurückgesetzt.
- Im z/VSE-Stapelbetrieb wird bei Angabe eines Sterns
(*) oder Leerzeichen für die Benutzer-ID der Standardwert ANY verwendet.
- parameter
- Eine Zeichenfolge, mit der zusätzliche Informationen angegeben werden können, wenn
für warteschlange LST oder PRT angegeben ist. Das Format der Zeichenfolge für
parameter variiert abhängig von der Laufzeitumgebung und vom
Wert für warteschlange wie folgt:
- Laufzeitumgebung ist VSECICS:
- Ist LST für warteschlange angegeben, wird parameter auf
ausgabebeschreibung gesetzt (eine Beschreibung finden Sie weiter unten in diesem Abschnitt).
- Ist PRT für warteschlange angegeben, wird parameter auf
fcb-name.kopien gesetzt (eine Beschreibung finden Sie weiter unten in diesem Abschnitt).
- Laufzeitumgebung ist VSEBATCH:
- Ist LST oder PRT für warteschlange angegeben, wird parameter auf
fcb-name.kopien gesetzt.
- ausgabebeschreibung
- Eine Zeichenfolge, die an CICS in der Option
OUTDESCR des CICS for z/VSE-Befehls SPOOLOPEN OUTPUT übergeben wird.
Die Zeichen müssen im korrekten Format für die Option OUTDESCR angegeben werden. Die Parameter verwenden dieselben Schlüsselwörter und Werte wie die VSE/POWER-Anweisung LST für benutzerdefinierte Ausgabeoperanden. Lediglich die Syntax weicht etwas ab. Das folgende Beispiel zeigt die Verwendung von
FORMDEF FORM1 und PAGEDEF PAGE1 als Parameterzeichenfolge:
FORMDEF(FORM1) PAGEDEF(PAGE1)
- Das folgende Beispiel zeigt die Verwendung dieses Parameters im entsprechenden Spooldateinamen:
JOBNAME1.LST.*.*.*.*.*.FORMDEF(FORM1) PAGEDEF(PAGE1)
- Rational COBOL Runtime
for z/VSE verarbeitet die Berechnung und Einfügung
des Längenbereichs am Beginn der Zeichenfolge so, wie dies für
CICS for z/VSE erforderlich ist. Die maximale Länge der Zeichenfolge für parameter ist variabel und richtet sich nach der Länge der Spooldateispezifikation bis zu diesem Punkt. Die gesamte Länge der Spooldateispezifikation darf 65 Zeichen nicht überschreiten.
- fcb-name
- Der Name der FCB-Imagephase, die VSE/POWER zum Drucken der zugehörigen Jobausgabe verwendet. Der Name der Phase muss in einer Unterbibliothek katalogisiert sein, auf die von der VSE/POWER-Partition aus zugegriffen werden kann. Der Name kann bis zu acht alphanumerische Zeichen (Buchstaben, Zahlen und Sonderzeichen)
umfassen. Wird für diesen Parameter kein Wert angegeben, wird der FCB-Systemstandardwert verwendet. Der Standardname kann durch einen Stern (*) angegeben werden.
- kopien
- Eine Zahl zwischen 1 und 255, die die Anzahl der zu druckenden Kopien angibt. Der Standardwert ist 1.
Verwenden Sie Spooldateien nicht als temporäre Dateien für ein Programm, das Daten in eine Datei schreibt und anschließend die Datei liest. Sie können denselben Ressourcennamen für eine Ausgabedatei und eine Eingabedatei angeben. Der Ressourcenname stellt jedoch nicht eine bestimmte Datei, sondern ein Ziel dar. Falls Sie Daten in ein Spoolziel schreiben und die Datei schließen, ist die Datei möglicherweise nicht sofort als Eingabedatei aus diesem Ziel verfügbar und wird unter Umständen nach anderen Dateien in die Warteschlange gestellt, die an dasselbe Ziel gesendet wurden.
Weitere Informationen zum Zugriff auf Spooldateien in
CICS enthält die Veröffentlichung 'CICS Customization
Manual'.
Spooldateien werden beim ersten Zugriff geöffnet und danach geschlossen, wenn eine der folgenden Bedingungen zutrifft:
- Das Programm wird beendet.
- Eine Anweisung close verweist auf die Datei.
- Wiederherstellbare Ressourcen werden festgeschrieben (durch sysLib.commit(), sysLib.rollback(), Beendigung der Transaktion oder des Segments).