Ausnahmebedingungen für den Befehl LINK

Zur Unterstützung von DPL wurden Fehlerbedingungen eingeführt, die an die Client- und Serverprogramme zurückgegeben werden.

Ausnahmebedingungen an das Client-Programm zurückgegeben

Die an ein Client-Programm zurückgegebenen Bedingungscodes beschreiben Ereignisse wie "Remote-System nicht bekannt " oder "Fehler beim Commit im Server-Programm". Es gibt verschiedene Gründe, die durch EIBRESP2 identifiziert werden, um die Bedingungen INVREQ und LENGERR für einen LINK-Befehl zu erhöhen. Die Bedingungen ROLLEDBACK, SYSIDERR und TERMERR können ebenfalls erhöht werden. Informationen zur Programmierung dieser Befehle finden Sie unter CICS

Wenn die Spiegeltransaktion in der Remote-Region fehlschlägt, kann das Anwendungsprogramm, das die DPL-Anforderung ausgegeben hat, den Absturz der Spiegeltransaktion nur dann verarbeiten und seine eigenen lokalen Ressourcen festschreiben, wenn die beiden folgenden Bedingungen erfüllt sind :
  1. Das Anwendungsprogramm behandelt den durch den Ausfall des Spiegels verursachten Abend explizit und entweder:
    • Nimmt einen impliziten Synchronisierungspunkt durch normale Transaktionsbeendigung
    • oder einen expliziten Synchronisierungspunkt anfordert.
  2. Die Remote-Spiegelung hat im Rahmen der Arbeitseinheit des Anwendungsprogramms keine wiederherstellbare Arbeit ausgeführt. Das heißt, der Spiegel wurde nur für eine DPL-Anfrage (Distributed Program Link) mit SYNCONRETURN aufgerufen.

In allen anderen Fällen, d. h. wenn das Anwendungsprogramm den Abend nicht verarbeitet oder der Spiegel eine wiederherstellbare Arbeit ausführt (z. B. eine Dateiaktualisierung, auch bei einer nicht wiederherstellbaren Datei), erzwingt CICS® das Zurückziehen der Transaktion.

Die PGMIDERR-Bedingung wird für die Befehle HANDLE ABEND PROGRAM, LOAD, RELEASE und XCTL ausgelöst, wenn die lokale Programmdefinition angibt, dass das Programm remote ist. Diese Ausnahme wird durch EIBRESP2 von 9 eingeschränkt.

Ausnahmebedingungen an das Serverprogramm zurückgegeben

INVREQ wird, qualifiziert durch EIBRESP2 von 200, an ein Serverprogramm zurückgegeben, wenn es einen der in Tabelle 1 zusammengefassten verbotenen Befehle ausgibt. Wenn das Serverprogramm die INVREQ-Bedingung nicht verarbeitet, besteht die Standardaktion darin, die Spiegelungstransaktion, unter der das Serverprogramm ausgeführt wird, mit dem Abend-Code ADPL abzubrechen.

Wenn Sie versuchen, einen der EXEC CICS WEB -Befehle als Server zu verwenden, schlagen diese Befehle mit INVREQ und RESP2 von 1 fehl. Die folgenden drei Befehle schlagen mit INVREQ und RESP2 von 5 fehl: EXEC CICS WEB EXTRACT, EXTRACT TCPIP und EXTRACT CERTIFICATE. Es gibt kein Problem bei der Verwendung dieser Befehle, wenn CICS als Client fungiert.

Informationen zur Programmierung der DPL-bezogenen Ausnahmebedingungen finden Sie unter LINK.

Tabelle 1. API-Befehle in Programmen, die von DPL aufgerufen werden, sind verboten
Befehl Optionen
ASSIGN ALTSCRNHT ALTSCRNWD APLKYBD APLTEXT BTRANS COLOR DEFSCRNHT DEFSCRNWD DELIMITER DESTCOUNT DESTID DESTIDLENG DS3270 DSSCS EWASUPP EXTDS FACILITY FCI GCHARS GCODES GMMI HILIGHT INPARTN KATAKANA LDCMNEM LDCNUM MAPCOLUMN MAPHEIGHT MAPLINE MAPWIDTH MSRCONTROL NATLANGINUSE NEXTTRANSID NUMTAB OPCLASS OPSECURITY OUTLINE PAGENUM PARTNPAGE PARTNS PARTNSET PS QNAME SCRNHT SCRNWD SIGDATA SOSI STATIONID TCTUALENG TELLERID TERMCODE TERMPRIORITY TEXTKYBD TEXTPRINT UNATTEND USERNAME USERPRIORITY VALIDATION
CONNECT PROCESS Alle
CONVERSE Alle
EXTRACT ATTRIBUTES Alle
EXTRACT PROCESS Alle
FREE Alle
HANDLE AID Alle
ISSUE ABEND BESTÄTIGUNG FEHLER VORBEREITEN SIGNAL DRUCKEN ABBRUCH HINZUFÜGEN ENDE LÖSCHEN NOTIZ ABFRAGE EMPFANGEN ERSETZEN SENDEN WARTEN
LINK INPUTMSG INPUTMSGLEN
PURGE MESSAGE Alle
RECEIVE Alle
RETURN INPUTMSG INPUTMSGLEN
ROUTE Alle
SEND KONTROLLKARTE TEIL-SET TEXT TEXT(KARTIERUNG) TEXT(KEINE BEARBEITUNG) SEITE
SIGNOFF Alle
SIGNON Alle
START TERMID, wobei der Wert die ID der Intersystem-Sitzung ist. (Das heißt, wenn die Hauptfunktion der ausstellenden Stelle eine Sitzung und kein Terminal ist.)
START CHANNEL TERMID, wobei der Wert die ID der Intersystem-Sitzung ist. (Das heißt, wenn die Hauptfunktion der ausstellenden Stelle eine Sitzung und kein Terminal ist.)
SYNCPOINT Kann in der Serverregion ausgegeben werden, wenn SYNCONRETURN auf LINK angegeben ist
SYNCPOINT ROLLBACK Kann in der Serverregion ausgegeben werden, wenn SYNCONRETURN auf LINK angegeben ist
WAIT TERMINAL Alle
XCTL INPUTMSG INPUTMSGLEN
Die folgenden Befehle sind ebenfalls eingeschränkt, können aber in der Serverregion verwendet werden, wenn SYNCONRETURN auf dem LINK angegeben ist:
  • CPIRR-VERPFLICHTUNG
  • CPIRR ZURÜCK
  • AUSFÜHRUNG DLI LAUFZEIT
  • CALL DLI TERM

Wenn nur bestimmte Optionen auf Befehl verboten sind, werden sie angezeigt. Alle aufgeführten APPC-Befehle sind nur dann verboten, wenn sie sich auf die Haupteinrichtung beziehen. Einer davon, der Befehl "CONNECT PROCESS", verursacht einen Fehler, selbst wenn er sich auf die Haupteinrichtung in einer Nicht-DPL-Umgebung bezieht. Es ist hier enthalten, weil, wenn sich ein CONNECT PROCESS-Befehl auf seine Haupteinrichtung in einem Serverprogramm bezieht, die ausgelöste Ausnahmebedingung einen DPL-Fehler anzeigt.