Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das verb MC_POST_ON_RECEIPT ermöglicht es der Anwendung, eine Benachrichtigung zu erhalten, wenn Daten oder Status bei der lokalen logischen Einheit (LU) eingehen, ohne sie gleichzeitig zu empfangen. Dieses Verb kann nur im EMPFANGSzustand ausgegeben werden und verursacht nie eine Änderung des Unterhaltungszustands.
Wenn das Transaktionsprogramm (TP) dieses Verb ausgibt, gibt APPC die Steuerung sofort an den TP zurück. Wenn die angegebenen Bedingungen erfüllt sind, wird das durch den Sema-Parameter angegebene Win32-Ereignis® signalisiert und das Verb abgeschlossen. Anschließend untersucht der TP den Rückgabecode im Verb-Steuerelementblock (VCB), um zu bestimmen, ob Daten oder Statusbenachrichtigungen an die lokale LU gelangt sind, und gibt ein MC_RECEIVE_IMMEDIATE - oder MC_RECEIVE_AND_WAIT Verb aus, um tatsächlich die Daten oder Statusbenachrichtigungen zu empfangen.
Das MC_POST_ON_RECEIPT Verb implementiert sowohl die verben POST_ON_RECEIPT als auch die TEST-Verben , wie im Handbuch des IBM Transaction Programmer für LU Type 6.2 beschrieben.
Die folgende Struktur beschreibt den Verb-Steuerelementblock, der vom MC_POST_ON_RECEIPT Verb verwendet wird.
Syntax
struct mc_post_on_receipt {
unsigned short opcode;
unsigned char opext;
unsigned char reserv1;
unsigned char primary_rc;
unsigned long secondary_rc;
unsigned char tp_id[8];
unsigned long conv_id;
unsigned short reserv2;
unsigned char reserv3;
unsigned char reserv4;
unsigned short max_len;
unsigned short reserv5;
unsigned char * reserv6;
unsigned char reserv7[5];
unsigned long sema;
};
Elemente
opcode
Angegebener Parameter. Gibt den Verbvorgangscode AP_M_POST_ON_RECEIPT an.
opext
Angegebener Parameter. Gibt die Verbvorgangserweiterung AP_MAPPED_CONVERSATION an.
reserv1
Ein reserviertes Feld.
primary_rc
Zurückgegebener Parameter. Gibt den primären Rückgabecode an, der von APPC am Ende des Verbs festgelegt wurde. Die gültigen Rückgabecodes variieren je nach ausgegebenen APPC-Verb. Informationen zu gültigen Fehlercodes für dieses Verb finden Sie unter "Rückgabecodes".
secondary_rc
Zurückgegebener Parameter. Gibt den von APPC festgelegten sekundären Rückgabecode am Ende des Verbs an. Die gültigen Rückgabecodes variieren je nach ausgegebenen APPC-Verb. Informationen zu gültigen Fehlercodes für dieses Verb finden Sie unter "Rückgabecodes".
tp_id
Angegebener Parameter. Identifiziert das lokale TP. Der Wert dieses Parameters wird von TP_STARTED im aufrufenden TP oder vonRECEIVE_ALLOCATE im aufgerufenen TP zurückgegeben.
conv_id
Angegebener Parameter. Stellt den Unterhaltungsbezeichner bereit. Der Wert dieses Parameters wird von MC_ALLOCATE im aufrufenden TP oder von RECEIVE_ALLOCATE im aufgerufenen TP zurückgegeben.
reserv2
Ein reserviertes Feld.
Reserv3
Ein reserviertes Feld.
reserv4
Ein reserviertes Feld.
max_len
Angegebener Parameter. Gibt die Länge der Daten an, die APPC auslösen, um eine Benachrichtigung an das TP zu senden.
reserv5
Ein reserviertes Feld.
reserv6
Ein reserviertes Feld.
Reserv7
Ein reserviertes Feld.
Sema
Angegebener Parameter. Gibt das Handle eines Win32-Ereignisses an. Das Ereignis sollte vom TP erstellt worden sein, und der TP ist dafür verantwortlich, sicherzustellen, dass es zurückgesetzt wird, bevor ein Aufruf ausgeführt wird und das Verb abgeschlossen ist.
Rückgabecodes
AP_OK
Primärer Rückgabecode; das Verb erfolgreich ausgeführt wurde.
AP_DATA
Sekundärer Rückgabecode; Daten sind für das Zu empfangende Programm verfügbar.
AP_NOT_DATA
Sekundärer Rückgabecode; Andere Informationen als Daten sind für das Zu empfangende Programm verfügbar.
AP_CANCELLED
Primärer Rückgabecode; das Verb abgebrochen wurde.
AP_PARAMETER_CHECK
Primärer Rückgabecode; das Verb wurde aufgrund eines Parameterfehlers nicht ausgeführt.
AP_BAD_CONV_ID
Sekundärer Rückgabecode; der Wert von conv_id nicht mit einem Unterhaltungsbezeichner übereinstimmt, der von APPC zugewiesen wurde.
AP_BAD_TP_ID
Sekundärer Rückgabecode; der Wert von tp_id nicht mit einem TP-Bezeichner übereinstimmt, der von APPC zugewiesen wurde.
AP_INVALID_SEMAPHORE_HANDLE
Sekundärer Rückgabecode; Der Sema-Parameter wurde nicht auf einen gültigen Wert festgelegt.
AP_STATE_CHECK
Primärer Rückgabecode; das Verb wurde nicht ausgeführt, weil es in einem ungültigen Zustand ausgegeben wurde.
AP_ALLOCATION_ERROR
Primärer Rückgabecode; APPC konnte eine Unterhaltung nicht zuordnen. Der Unterhaltungszustand ist auf RESET festgelegt.
Dieser Code kann über ein Verb zurückgegeben werden, das nach MC_ALLOCATE ausgegeben wurde.
AP_ALLOCATION_FAILURE_NO_RETRY
Sekundärer Rückgabecode; die Unterhaltung kann aufgrund einer dauerhaften Bedingung nicht zugewiesen werden, z. B. aufgrund eines Konfigurationsfehlers oder sitzungsprotokollfehlers. Um den Fehler zu ermitteln, sollte der Systemadministrator die Fehlerprotokolldatei untersuchen. Wiederholen Sie die Zuordnung erst, wenn der Fehler behoben wurde.
AP_ALLOCATION_FAILURE_RETRY
Sekundärer Rückgabecode; die Unterhaltung konnte aufgrund einer temporären Bedingung, z. B. aufgrund eines Verknüpfungsfehlers, nicht zugewiesen werden. Der Grund für den Fehler wird im Systemfehlerprotokoll protokolliert. Wiederholen Sie die Zuordnung.
AP_CONVERSATION_TYPE_MISMATCH
Sekundärer Rückgabecode; die Partner-LU oder TP unterstützt den in der Zuordnungsanforderung angegebenen Unterhaltungstyp (einfach oder zugeordnet) nicht.
AP_PIP_NOT_ALLOWED
Sekundärer Rückgabecode; Die zuordnungsanforderung angegebene PIP-Daten, aber entweder der Partner TP erfordert diese Daten nicht, oder die Partner-LU unterstützt sie nicht.
AP_PIP_NOT_SPECIFIED_CORRECTLY
Sekundärer Rückgabecode; Der Partner-TP erfordert PIP-Daten, aber die Zuordnungsanforderung hat entweder keine PIP-Daten oder eine falsche Anzahl von Parametern angegeben.
AP_SECURITY_NOT_VALID
Sekundärer Rückgabecode; Die in der Zuordnungsanforderung angegebene Benutzer-ID oder das kennwort wurde von der Partner-LU nicht akzeptiert.
AP_SYNC_LEVEL_NOT_SUPPORTED
Sekundärer Rückgabecode; der Partner-TP unterstützt die in der Zuordnungsanforderung angegebenen sync_level (AP_NONE oder AP_CONFIRM_SYNC_LEVEL) nicht, oder die sync_level wurde nicht erkannt.
AP_TP_NAME_NOT_RECOGNIZED
Sekundärer Rückgabecode; die Partner-LU erkennt den in der Zuordnungsanforderung angegebenen TP-Namen nicht.
AP_TRANS_PGM_NOT_AVAIL_NO_RETRY
Sekundärer Rückgabecode; die Remote-LU hat die Zuordnungsanforderung abgelehnt, da sie den angeforderten Partner-TP nicht starten konnte. Die Bedingung ist dauerhaft. Der Grund für den Fehler kann auf dem Remoteknoten protokolliert werden. Wiederholen Sie die Zuordnung erst, wenn der Fehler behoben wurde.
AP_TRANS_PGM_NOT_AVAIL_RETRY
Sekundärer Rückgabecode; die Remote-LU hat die Zuordnungsanforderung abgelehnt, da sie den angeforderten Partner-TP nicht starten konnte. Die Bedingung kann vorübergehend sein, z. B. ein Timeout. Der Grund für den Fehler kann auf dem Remoteknoten protokolliert werden. Wiederholen Sie die Zuordnung.
AP_COMM_SUBSYSTEM_ABENDED
Primärer Rückgabecode; gibt eine der folgenden Bedingungen an:
Der von dieser Unterhaltung verwendete Knoten hat einen ABEND gefunden.
Die Verbindung zwischen dem TP und dem PU 2.1-Knoten wurde unterbrochen (LAN-Fehler).
Die SnaBase auf dem Computer des TP ist ein ABEND aufgetreten.
Der Systemadministrator sollte das Fehlerprotokoll untersuchen, um den Grund für den ABEND zu ermitteln.
AP_COMM_SUBSYSTEM_NOT_LOADED
Primärer Rückgabecode; Eine erforderliche Komponente konnte beim Verarbeiten des Verbs nicht geladen oder beendet werden. So konnte die Kommunikation nicht stattfinden. Wenden Sie sich an den Systemadministrator, um Korrekturmaßnahmen zu ergreifen.AP_DEALLOC_ABEND_PROG
Primärer Rückgabecode; die Unterhaltung wurde aus einem der folgenden Gründe umgestellt:Der Partner TP hat MC_DEALLOCATE ausgestellt.
Der Partner TP hat einen ABEND gefunden, wodurch die Partner-LU eine MC_DEALLOCATE Anfrage sendet.
AP_DEALLOC_NORMAL
Primärer Rückgabecode; der Partner TP hat die Unterhaltung ohne bestätigungserfordert und MC_DEALLOCATE ausgestellt, wobei dealloc_type auf eine der folgenden Optionen festgelegt ist:AP_CONFIRM_SYNC_LEVEL
AP_FLUSH
AP_SYNC_LEVEL mit der Synchronisierungsebene der Unterhaltung, die als AP_NONE
AP_PROG_ERROR_NO_TRUNC
Primärer Rückgabecode; der Partner-TP MC_SEND_ERROR ausgestellt hat, während sich die Unterhaltung im SEND-Zustand befand. Daten wurden nicht abgeschnitten.AP_PROG_ERROR_PURGING
Primärer Rückgabecode; in RECEIVE, PENDING, PENDING_POST, CONFIRM, CONFIRM_SEND oder CONFIRM_DEALLOCATE State hat der Partner TP MC_SEND_ERROR ausgestellt. Gesendete, aber noch nicht empfangene Daten werden gelöscht.AP_PROG_ERROR_TRUNC
Primärer Rückgabecode; der Partner-TP MC_SEND_ERROR ausgestellt hat, während sich die Unterhaltung im SEND-Zustand befand. Daten wurden abgeschnitten.AP_SVC_ERROR_NO_TRUNC
Primärer Rückgabecode; der Partner-TP (oder Partner-LU), der MC_SEND_ERROR ausgestellt hat, wobei err_type auf AP_SVC festgelegt ist, während er in RECEIVE, PENDING_POST, CONFIRM, CONFIRM_SEND oder CONFIRM_DEALLOCATE Zustand enthalten ist. Die an den Partner-TP gesendeten Daten wurden nicht abgeschnitten.AP_SVC_ERROR_PURGING
Primärer Rückgabecode; der Partner-TP (oder Partner-LU), der MC_SEND_ERROR ausgestellt hat, wobei err_type auf AP_SVC festgelegt ist, während er in RECEIVE, PENDING_POST, CONFIRM, CONFIRM_SEND oder CONFIRM_DEALLOCATE Zustand enthalten ist. Die an den Partner-TP gesendeten Daten wurden möglicherweise gelöscht.AP_SVC_ERROR_TRUNC
Primärer Rückgabecode; der Partner-TP (oder Partner-LU), der MC_SEND_ERROR ausgestellt hat, wobei err_type auf AP_SVC festgelegt ist, während er in RECEIVE, PENDING_POST, CONFIRM, CONFIRM_SEND oder CONFIRM_DEALLOCATE Zustand enthalten ist. Die an den Partner-TP gesendeten Daten wurden möglicherweise abgeschnitten.
Bemerkungen
Während ein MC_POST_ON_RECEIPT Verb ausstehend ist, können die folgenden Verben in derselben Unterhaltung ausgegeben werden:
Wenn Sie eines der folgenden Verben vor Abschluss des asynchronen MC_POST_ON_RECEIPT Verbs ausgeben, wird das MC_POST_ON_RECEIPT Verb abgebrochen (das Win32-Ereignis wird signalisiert, und der primäre Rückgabecode im Verb-Steuerelementblock wird auf AP_CANCELLED festgelegt).