INVOKE APPLICATION

Ruft ein Programm an einem Anwendungseinstiegspunkt auf. EXEC CICS INVOKE APPLICATION ermöglicht den Aufruf einer Anwendung durch Benennung einer Operation, die einem ihrer Programmeingangspunkte entspricht, ohne dass der Name des Programms des Anwendungseingangspunkts bekannt sein muss und unabhängig davon, ob das Programm öffentlich oder privat ist.

Die Anwendung muss sich in einem verfügbaren Status (AVAILABLE) befinden. Wenn sich mehrere Versionen der Anwendung im Zustand AVAILABLE befinden, sind die Einstiegsprogramme der höchsten Version der Anwendung öffentlich und können daher mit einem EXEC CICS LINK-Befehl verlinkt werden. Der Befehl INVOKE APPLICATION lässt das Aufrufen niedrigerer Versionen der Anwendung zu. Dazu muss eine Version und eine Operation angegeben werden. Dies entspricht einem privaten Einstiegspunktprogramm.

Syntax

INVOKE APPLICATION

Syntaxdiagramm lesenVisuelles Syntaxdiagramm überspringenINVOKEAPPLICATION( Name) OPERATION( Name)PLATFORM( Name)MAJORVERSION( Datenwert)MINORVERSION( Datenwert)EXACTMATCHMINIMUMCOMMAREA( Datenbereich)LENGTH( Datenwert)CHANNEL( Name)

Bedingungen: APPNOTFOUND, CHANNELERR, INVREQ, LENGERR, NOTAUTH, PGMIDERR

Dieser Befehl ist threadsicher.

NOHANDLE, RESP und RESP2 sind allgemeine Optionen, die zu allen EXEC CICS Befehlen hinzugefügt werden können, um Fehlerbedingungen zu verarbeiten. Sie sind im Diagramm der Befehlssyntax und in den Optionsbeschreibungen nicht explizit aufgeführt. Für Informationen über diese allgemeinen Optionen und die EXEC CICS Befehlssyntax siehe EXEC CICS Befehlsformat und Überlegungen zur Programmierung.

Beschreibung

Der Befehl INVOKE APPLICATION verknüpft ein lokales Programm, bei dem es sich um den Einstiegspunkt in die angegebene Anwendung für die angegebene Operation handelt. Er übergibt die Steuerung aus einem Anwendungsprogramm auf einer logischen Ebene an ein Anwendungsprogramm auf der nächstniedrigeren logischen Ebene.

Dieser Befehl operiert im aktuellen Plattformkontext. Wenn der Befehl keinen Plattformnamen angibt, wird der aktuelle Plattformname verwendet. Wenn keine aktuelle Plattform vorhanden ist, schlägt der Befehl mit der Antwort APPNOTFOUND fehl.

Weitere Informationen und Beispiele für die Verwendung des Befehls EXEC CICS INVOKE APPLICATION finden Sie unter Aufruf einer Anwendung mit mehreren Versionen.

Optionen

APPLICATION(Name)
Gibt den Namen (1 - 64 Zeichen) der Anwendung an. Zulässige Zeichen: a-z A-Z 0-9 . _ # @ -
CHANNEL(Name)
Gibt den Namen (1 - 16 Zeichen) eines Kanals an, der für das aufgerufene Programm verfügbar gemacht werden soll. Die zulässigen Zeichen sind: A-Z a-z 0-9 $ @ # / % & ? ! : | " = ¬ , ; < > . - _. Führende und eingebettete Leerzeichen sind nicht zulässig. Wenn der angegebene Name kürzer als 16 Zeichen ist, wird er mit nachfolgenden Leerzeichen bis auf 16 Zeichen aufgefüllt. Wenn der Kanal nicht vorhanden ist, wird er erstellt. Dieser neue Kanal bleibt gültig, bis sich die Verbindungsebene ändert. Weitere Informationen zum Geltungsbereich von Kanälen finden Sie unter Der Geltungsbereich eines Kanals.

Kanalnamen werden immer in EBCDIC angegeben. Die oben angegebene Gruppe der zulässigen Zeichen für Kanalnamen enthält einige Zeichen, die nicht in allen EBCDIC-Codepages dieselbe Darstellung besitzen. Wenn Kanäle zwischen Regionen übertragen werden sollen, wird daher empfohlen, die Zeichen zur Kanalbenennung auf die folgenden zu begrenzen: A-Z a-z 0-9 & : = , ; < > - und _.

Sie können den Kanalnamen DFHTRANSACTION angeben, um einen Transaktionskanal zu verwenden. Ein Transaktionskanal verliert nicht seine Gültigkeit, wenn sich die Verbindungsebene ändert; der Zugriff auf diesen Kanal ist in der Transaktion immer möglich. Weitere Informationen finden Sie unter Kanäle und Container.

Für das Programm, das den Befehl INVOKE absetzt, bestehen die folgenden Möglichkeiten:
  • Es kann den Kanal durch einen oder mehrere der Befehle PUT CONTAINER CHANNEL oder PUT64 CONTAINER bereits erstellt haben.
  • Es kann seinen aktuellen Kanal durch den Namen angeben.
  • Es kann einen Kanal benennen, der zurzeit nicht vorhanden ist. In diesem Fall wird ein neuer leerer Kanal erstellt.
COMMAREA(datenbereich)
Gibt einen Kommunikationsbereich an, der für das aufgerufene Programm verfügbar gemacht werden soll. In dieser Option wird der Datenbereich übergeben und Sie müssen ihm im empfangenden Programm den Namen DFHCOMMAREA geben. Siehe Datenübergabe an andere Programme .
EXACTMATCH
Gibt an, dass eine exakte Übereinstimmung mit der Hauptversionsnummer und der Nebenversionsnummer der Anwendung erforderlich ist. Wenn die Anwendung nicht gefunden wird, wird die Bedingung APPNOTFOUND zurückgegeben.
Hinweis: Für die Mikroversion gibt es keine Übereinstimmungskriterien. Es wird immer die höchste Mikroversion verwendet.
LENGTH(datenwert)
Gibt einen Halbwort-Binärwert an, der die Länge des Kommunikationsbereichs (COMMAREA) in Byte darstellt. Dieser Wert darf 24 KB nicht überschreiten, wenn die COMMAREA zwischen zwei beliebigen CICS®-Servern übertragen werden soll (für jede Kombination von Produkt, Version und Release). Diese Begrenzung berücksichtigt den Kommunikationsbereich und den Platz für Header.

Stellen Sie sicher, dass der Wert, den Sie angeben, der Länge der Daten entspricht, die in dem Kommunikationsbereich übergeben werden. Geben Sie für LENGTH nicht 0 (null) an, weil das daraus resultierende Verhalten unvorhersehbar ist und der Befehl EXEC CICS LINK fehlschlagen könnte.

Wenn Sie einen Kommunikationsbereich zur Übergabe von Daten verwenden, muss das verknüpfte Programm prüfen, ob das Feld EIBCALEN in dem EIB der Task mit dem Wert übereinstimmt, den das Programm erwartet. Abweichungen könnten zu Fehlern im Speicher oder zu Systemfehlern führen. Weitere Informationen finden Sie unter COMMAREA.

MAJORVERSION(datenwert)
Gibt die Hauptversionsnummer der Anwendung als Vollwort-Binärwert an.

Wenn MAJORVERSION angegeben wird, muss auch MINORVERSION angegeben werden. Wenn keine Version angegeben wird, wird die Anwendung mit der höchsten Haupt- und Nebenversion aufgerufen.

MINIMUM
Gibt an, dass die angegebene Nebenversionsnummer die minimal erforderliche Nummer ist und dass eine höhere Version verwendet werden soll, sofern sie verfügbar ist. Wenn mehrere höhere Nebenversionen verfügbar sind, wird die höchste Nummer verwendet. Dies gilt nur für die Nebenversionsnummer. Die Hauptversionsnummer kann nicht überschritten werden und muss exakt übereinstimmen. Wenn weder eine höhere Nebenversion noch die erforderliche Mindestversion vorhanden ist, wird die Bedingung APPNOTFOUND zurückgegeben.
Hinweis: Für die Mikroversion gibt es keine Übereinstimmungskriterien. Es wird immer die höchste Mikroversion verwendet.
MINORVERSION(datenwert)
Gibt die Nebenversionsnummer der Anwendung als Vollwort-Binärwert an.

Wenn MINORVERSION angegeben wird, muss auch MAJORVERSION angegeben werden. Wenn keine Version angegeben wird, wird die Anwendung mit der höchsten Haupt- und Nebenversion aufgerufen.

Die Schlüsselwörter EXACTMATCH oder MINIMUM geben die Übereinstimmungskriterien für die Haupt- und Nebenversion an.

OPERATION(Name)
Gibt den Namen (1 - 64 Zeichen) der Anwendungsoperation an, die von dem Programm des Anwendungseinstiegspunkts implementiert wird. Zulässige Zeichen: a-z A-Z 0-9 . _ # @ -
PLATFORM(Name)
Gibt den Namen (1 - 64 Zeichen) der Plattform an, auf der die Anwendung installiert ist. Zulässige Zeichen: a-z A-Z 0-9 . _ # @ -

Wenn kein Plattformname angegeben wird, wird der aktuelle Plattformname verwendet. Wenn keine aktuelle Plattform vorhanden ist, schlägt der Befehl mit der Antwort APPNOTFOUND fehl.

Bedingungen

127 APPNOTFOUND
RESP2-Werte:
1
Das Schlüsselwort EXACTMATCH wurde angegeben und die erforderliche Version der Anwendung kann nicht gefunden werden.
2
Das Schlüsselwort MINIMUM wurde angegeben und es kann keine Mindestversion oder höhere Mikroversion der Anwendung gefunden werden.
3
Es wurde keine Version angegeben. Es kann keine Anwendung gefunden werden.

Standardaktion: Die Task wird abnormal beendet.

Eine Anwendung kann aus einer Reihe von Gründen nicht gefunden werden:
  • Die Anwendung befindet sich nicht in einem verfügbaren Status (AVAILABLE).
  • Die benannte Operation entspricht keinem Einstiegspunktprogramm für die Anwendung.
  • Die Anwendung ist auf dieser Plattform nicht installiert.
  • Der CICS-Bereich ist nicht Teil des angegebenen Plattformnamens.
122 CHANNELERR
RESP2-Werte:
1
Der Name, der in der Option CHANNEL angegeben wurde, enthält ein ungültiges Zeichen oder eine ungültige Kombination von Zeichen.

Standardaktion: Die Task wird abnormal beendet.

16 INVREQ
RESP2-Werte:
1
Es ist kein Plattformname angegeben und es ist keine aktuelle Plattform vorhanden.
2
Das Programm für den Einstiegspunkt der Anwendung ist ein Java™-Programm, aber die Benutzerklasse kann nicht gefunden werden.
3
Das Einstiegsprogramm der Anwendung ist ein Java-Programm, aber der JVMSERVER kann nicht gefunden werden.
4
Das Einstiegsprogramm der Anwendung ist ein Java-Programm, aber die Ressource JVMSERVER ist nicht aktiviert.

Standardaktion: Die Task wird abnormal beendet.

22 LENGERR
RESP2-Werte:
11
Die Länge von COMMAREA ist kleiner als 0 oder größer als die zulässige Länge.
26
Die Adresse von COMMAREA ist null, jedoch ist die Länge von COMMAREA ungleich null.

Standardaktion: Die Task wird abnormal beendet.

70 NOTAUTH
RESP2-Werte:
101
Eine Ressourcensicherheitsprüfung ist für den Namen des Anwendungseinstiegspunktprogramms fehlgeschlagen, das die Operation für die angegebene Operation implementiert.

Standardaktion: Die Task wird abnormal beendet.

27 PGMIDERR
RESP2-Werte:
1
Das Anwendungseinstiegspunktprogramm ist inaktiviert.
2
Das Anwendungseinstiegspunktprogramm konnte nicht geladen werden.

Standardaktion: Die Task wird abnormal beendet.