Einführung in die externe CICS-Schnittstelle

Die externe CICS® ist eine Anwendungsprogrammierschnittstelle, die es einem CICS (einem Client-Programm), das in MVS läuft, ermöglicht, ein Programm (ein Server-Programm) aufzurufen, das in einer CICS läuft, und Daten über einen Kommunikationsbereich oder über einen Kanal und eine Reihe von Containern weiterzugeben und zu empfangen. Das CICS -Anwendungsprogramm wird so gestartet, als wäre es mit einem anderen CICS -Anwendungsprogramm verbunden.

Sie können die externe CICS -Schnittstelle verwenden, um Sitzungen oder Pipes (ein unidirektionaler Kommunikationspfad zwischen einem sendenden Prozess und einem empfangenden Prozess) einer CICS -Region zuzuordnen und zu öffnen und DPL-Anforderungen (DPL = Distributed Program Link) über sie zu übergeben. Die MRO-Funktion (Mehrregionenbetrieb) der IRC-Funktion ( CICS Interregion Communication) unterstützt diese Anforderungen und jede Pipe wird einer MRO-Sitzung zugeordnet, wobei das Clientprogramm den sendenden Prozess und die CICS -Serverregion den empfangenden Prozess darstellt.

Es gibt einen Standardgrenzwert von 100 Pipes pro EXCI-Adressraum. Der Grenzwert kann geändert werden, wenn MVS über IPL gestartet wird. Dieser Grenzwert verhindert, dass EXCI-Clients MRO-Ressourcen monopolisieren, was verhindern könnte, dass CICS -Regionen MRO verwenden. Der Grenzwert wird sowohl auf MRO-Umgebungen als auch auf systemübergreifende Umgebungen angewendet. Eine Anforderung allocate_pipe führt zu einer Anforderung MRO LOGON; und es gilt eine Begrenzung für die Gesamtzahl der zulässigen MRO LOGON-Anforderungen von allen Adressräumen. Dies ist ein kritischer Grenzwert bei der Verwendung von XCF/MRO, wobei die Begrenzung der Mitgliederanzahl innerhalb einer XCF-Gruppe auch den Grenzwert für die Gesamtzahl der MRO LOGON-Anforderungen einschränkt.

Daher müssen Sie sicherstellen, dass eine Pipe geschlossen und freigegeben wird, wenn sie nicht mehr benötigt wird. Es liegt in der Verantwortung des Benutzers, sicherzustellen, dass das Clientprogramm die von ihm geöffnete Pipe schließt und freigibt, bevor das Programm beendet wird. Wenn Pipes nicht freigegeben werden, kann dies zu Fehlern führen, die auf das Erreichen des Anmeldegrenzwerts zurückzuführen sind.

Anmerkung: Nach einer erfolgreichen Open_Pipe -Anforderung müssen Sie, wenn Ihr Clientprogramm die Verwendung der Pipe beendet, zuerst einen Befehl Close_Pipe und anschließend einen Befehl Deallocate_Pipe ausgeben, um die Pipe freizugeben. Wenn Sie einen Deallocate_Pipe -Befehl ausgeben, ohne zuerst eine offene Pipe mit Close_Pipezu schließen, schlägt Ihre Anforderung mit USER_ERROR (RC12) mit dem Ursachencode 405 PIPE_NOT_CLOSED fehl.

Wenn Ihre Open_Pipe-Anforderung fehlschlägt, wird empfohlen, die Pipe freizugeben, um das Erreichen des Anmeldegrenzwerts zu vermeiden.

Die externe CICS -Schnittstelle gibt die CICS -Region an, mit der die CICS -Region APPLID kommunizieren soll, wie im Systeminitialisierungsparameter APPLID definiert. Sie können die APPLID entweder in einem EXCI-API-Aufruf angeben oder mithilfe des durch den Benutzer austauschbaren Programms DFHXCURM. Sie können DFHXCURM auch verwenden, um den Wert für XCFGROUP zu ändern, der in der Anforderung allocate_pipe verwendet werden soll. Weitere Informationen zu DFHXCURM enthält Das durch den Benutzer austauschbare EXCI-Modul.
Hinweis Verwechseln Sie den Begriff generische APPLID nicht mit dem generischen Ressourcennamen. Generische Ressourcennamen gelten nur für generische Ressourcengruppen von z/OS® Communications Server , die von EXCI nicht unterstützt werden.
Das Clientprogramm und die CICS -Serverregion (die Region, in der das Serverprogramm ausgeführt wird oder definiert ist) müssen sich in demselben MVS-Image befinden, sofern die folgenden Bedingungen nicht erfüllt sind:
  • Die CICS -Region wird in einem Sysplex ausgeführt, der den systemübergreifenden Mehrregionenbetrieb unterstützt.
  • In allen vom Clientprogramm abgesetzten DPL-Anforderungen ist die Option SYNCONRETURN angegeben.

Wenn im MVS-Image keine lokale CICS -Region vorhanden ist, müssen Sie alternativ den SVC-Parameter angeben, den die externe CICS -Schnittstelle verwenden soll, indem Sie einen CICSSVC-Parameter in der Tabelle DFHXCOPT codieren. Obwohl die externe CICS -Schnittstelle die speicherübergreifende Zugriffsmethode nicht unterstützt, kann sie die XCF-Zugriffsmethode verwenden, die von der CICS XCF/MRO-Funktion bereitgestellt wird. Informationen zu XCF/MRO finden Sie im Abschnitt EXCI-Optionstabelle DFHXCOPT verwenden .

Ein Clientprogramm, das die externe CICS -Schnittstelle verwendet, kann mehrere Sitzungen für verschiedene Benutzer (entweder unter demselben oder separaten TCBs) betreiben, die alle im selben MVS-Adressraum koexistieren, ohne dass sie sich gegenseitig kennen oder stören.

Wenn von einem Clientprogramm ein weiteres Clientprogramm angehängt wird, wird das angehängte Programm in einem eigenen Tasksteuerblock (Tasc Control Block, TCP) ausgeführt.