Freigeben über


RECEIVE_ALLOCATE

Das RECEIVE_ALLOCATE Verb wird vom aufgerufenen Transaktionsprogramm (TP) ausgegeben, um zu bestätigen, dass der aufgerufene TP bereit ist, eine Konversation mit dem aufrufenden TP zu beginnen, der ALLOCATE oder MC_ALLOCATE ausgegeben hat.

Die folgende Struktur beschreibt den Verb-Kontrollblock (VCB), der vom RECEIVE_ALLOCATE-Verb verwendet wird.

Syntax

  
struct receive_allocate {  
    unsigned short   opcode;  
    unsigned char    opext;  
    unsigned char    reserv2;  
    unsigned short   primary_rc;  
    unsigned long    secondary_rc;  
    unsigned char    tp_name[64];  
    unsigned char    tp_id[8];  
    unsigned long    conv_id;  
    unsigned char    sync_level;  
    unsigned char    conv_type;  
    unsigned char    user_id[10];  
    unsigned char    lu_alias[8];  
    unsigned char    plu_alias[8];  
    unsigned char    mode_name[8];  
    unsigned char    reserv3[2];  
    unsigned long    conv_group_id;  
    unsigned char    fqplu_name[17];  
    unsigned char    pip_incoming;  
    unsigned char    syncpoint_rqd;  
    unsigned char    reserv4[3];  
};   

Member

opcode
Angegebener Parameter. Gibt den Verbvorgangscode an, AP_RECEIVE_ALLOCATE.

opext
Angegebener Parameter. Gibt die Verbvorgangserweiterung an, AP_BASIC_CONVERSATION.

reserv2
Ein reserviertes Feld.

primary_rc
Zurückgegebener Parameter. Gibt den primären Rückgabecode an, der von APPC nach Abschluss des Verbs festgelegt wird. Die gültigen Rückgabecodes variieren je nach ausgegebenem APPC-Verb. Gültige Fehlercodes für dieses Verb finden Sie unter „Rückgabecodes“.

secondary_rc
Zurückgegebener Parameter. Gibt den sekundären Rückgabecode an, der von APPC nach Abschluss des Verbs festgelegt wird. Die gültigen Rückgabecodes variieren je nach ausgegebenem APPC-Verb. Gültige Fehlercodes für dieses Verb finden Sie unter „Rückgabecodes“.

tp_name
Angegebener Parameter. Gibt den Namen des lokalen TP an. Der Wert von tp_name muss mit dem TP-Namen übereinstimmen, der über Registrierungs- oder Umgebungsvariablen konfiguriert wurde. APPC gleicht den tp_name Parameter des RECEIVE_ALLOCATE Verbs mit dem TP-Namen ab, der durch die eingehende Zuordnung angegeben wird, der durch MC_ALLOCATE oder ALLOCATE im aufrufenden TP generiert wird.

Dieser Parameter ist eine EBCDIC-Zeichenfolge mit 64 Byte und berücksichtigt Groß-/Kleinschreibung. Der tp_name-Parameter kann aus Zeichen des Typs AE EBCDIC-Zeichensatz bestehen:

  • Groß- und Kleinbuchstaben

  • Ziffern 0 bis 9

  • Sonderzeichen $, #und Punkt (.)

    Wenn tp_name kleiner als 64 Bytes ist, verwenden Sie EBCDIC-Leerzeichen (0x40), um sie auf der rechten Seite zu polstern.

    Die SNA-Konvention ist, dass ein Dienst-TP-Name bis zu vier Zeichen aufweisen kann. Das erste Zeichen ist ein hexadezimales Byte zwischen 0x00 und 0x3F. Die anderen Zeichen stammen aus dem Zeichensatz vom Typ AE EBCDIC.

    tp_id
    Zurückgegebener Parameter. Identifiziert den lokalen TP.

    conv_id
    Zurückgegebener Parameter. Stellt den Unterhaltungsbezeichner bereit. Es identifiziert die Konversation, die APPC zwischen den beiden Partner-TPs eingerichtet hat.

    sync_level
    Zurückgegebener Parameter. Gibt die Synchronisierungsebene der Unterhaltung an. Sie bestimmt, ob die TPs eine Empfangsbestätigung der Daten anfordern und den Empfang der Daten bestätigen können.

  • AP_NONE gibt an, dass die Bestätigungsverarbeitung in dieser Unterhaltung nicht verwendet wird.

  • AP_CONFIRM_SYNC_LEVEL gibt an, dass die TPs die Bestätigungsverarbeitung in dieser Unterhaltung verwenden können.

  • AP_SYNCPT gibt an, dass TPs die Bestätigungsverarbeitung für Synchronisierungspunktebene 2 in dieser Unterhaltung verwenden können.

    conv_type
    Zurückgegebener Parameter. Gibt den Vom Partner-TP ausgewählten Konversationstyp mit MC_ALLOCATE oder ALLOCATE an. Folgende Werte sind möglich:

    AP_BASIC_CONVERSATION

    AP_MAPPED_CONVERSATION

    User_id
    Zurückgegebener Parameter. Stellt den vom Partner-TP angegebenen Benutzerbezeichner mithilfe von MC_ALLOCATE oder ALLOCATE bereit (wenn der Partner-TP den Sicherheitsparameter des MC_ALLOCATE - oder ALLOCATE-Verbs auf AP_PGM oder AP_SAME festgelegt hat). Dabei handelt es sich um eine EBCDIC-Zeichenfolge vom Typ AE.

    lu_alias
    Zurückgegebener Parameter. Stellt den Alias bereit, unter dem die lokale logische Einheit (LOCAL Logical Unit, LU) dem lokalen TP bekannt ist. Es handelt sich um eine ASCII-Zeichenfolge.

    plu_alias
    Zurückgegebener Parameter. Stellt den Alias bereit, mit dem die Partner-LU (die die eingehende Zuordnung initiiert hat) dem lokalen TP bekannt ist. Es handelt sich um eine ASCII-Zeichenfolge.

    mode_name
    Zurückgegebener Parameter. Stellt den Modusnamen bereit, der durch MC_ALLOCATE oder ALLOCATE im Partner-TP angegeben wird. Dies ist der Name einer Reihe von Netzwerkmerkmalen, die während der Konfiguration definiert wurden. Die mode_name ist eine EBCDIC-Zeichenfolge vom Typ A.

    reserv3
    Ein reserviertes Feld.

    conv_group_id
    Unterhaltungsgruppenbezeichner.

    fqlu_name
    Dieser zurückgegebene Parameter stellt den vollqualifizierten LU-Namen bereit.

    pip_incoming
    Dieser optionale bereitgestellte und zurückgegebene Parameter ist nur anwendbar, wenn Sync Point-Dienste erforderlich sind.

    Für den angegebenen Parameter:

    AP_YES, wenn TP PIP-Daten akzeptiert.

    AP_NO, wenn TP keine PIP-Daten akzeptiert.

    Für den zurückgegebenen Parameter:

    AP_YES, wenn PIP-Daten verfügbar sind.

    AP_NO, wenn PIP-Daten nicht verfügbar sind.

    syncpoint_rqd
    Dieser Parameter gibt an, ob Sync Point-Dienste erforderlich sind.

    AP_YES, wenn ein Synchronisierungspunkt erforderlich ist.

    AP_NO, wenn kein Synchronisierungspunkt erforderlich ist.

    reserv4
    Ein reserviertes Feld.

Rückgabecodes

AP_OK
Primärer Rückgabecode; das Verb wurde erfolgreich ausgeführt.

AP_PARAMETER_CHECK
Primärer Rückgabecode; das Verb wurde aufgrund eines Parameterfehlers nicht ausgeführt.

AP_UNDEFINED_TP_NAME

Sekundärer Rückgabecode; Der TP-Name wurde nicht ordnungsgemäß konfiguriert.

AP_STATE_CHECK
Primärer Rückgabecode; das Verb wurde nicht ausgeführt, da es in einem ungültigen Zustand ausgegeben wurde.

AP_ALLOCATE_NOT_PENDING

Sekundärer Rückgabecode; APPC hat keine eingehende Zuordnung (vom aufrufenden TP) gefunden, um dem Wert von tp_name zu entsprechen, der von RECEIVE_ALLOCATE bereitgestellt wird. RECEIVE_ALLOCATE hat auf die eingehende Zuordnung gewartet, und schließlich ist ein Timeout aufgetreten.

AP_INVALID_PROCESS

Sekundärer Rückgabecode; der Prozess, der RECEIVE_ALLOCATE ausgibt, unterscheidet sich von dem prozess, der von APPC gestartet wurde.

AP_COMM_SUBSYSTEM_ABENDED
Primärer Rückgabecode; weist darauf hin, dass eine der folgenden Bedingungen aufgetreten ist:

  • Der von dieser Konversation verwendete Knoten hat einen ABEND gefunden.

  • Die Verbindung zwischen dem TP und dem PU 2.1-Knoten wurde unterbrochen (LAN-Fehler).

  • SnaBase auf dem Computer des TP hat einen ABEND gefunden.

    Der Systemadministrator sollte das Fehlerprotokoll untersuchen, um den Grund für den ABEND zu ermitteln.

    AP_CONV_BUSY
    Primärer Rückgabecode; es kann jeweils nur ein ausstehendes Konversationsverb gleichzeitig geben.

    AP_THREAD_BLOCKING
    Primärer Rückgabecode; der aufrufende Thread befindet sich bereits in einem blockierenden Aufruf.

    AP_COMM_SUBSYSTEM_NOT_LOADED
    Primärer Rückgabecode; eine erforderliche Komponente konnte während der Verarbeitung des Verbs nicht geladen oder beendet werden. Folglich konnte die Kommunikation nicht stattfinden. Wenden Sie sich an den Systemadministrator, um Korrekturmaßnahmen zu ergreifen.

    AP_INVALID_VERB_SEGMENT
    Primärer Rückgabecode; der VCB wurde über das Ende des Datensegments hinaus erweitert.

    AP_STACK_TOO_SMALL
    Primärer Rückgabecode; die Stapelgröße der Anwendung ist zu klein, um das Verb auszuführen. Vergrößern Sie die Stapelgröße Ihrer Anwendung.

    AP_UNEXPECTED_DOS_ERROR
    Primärer Rückgabecode; das Betriebssystem hat bei der Verarbeitung eines APPC-Aufrufs vom lokalen TP einen Fehler an APPC zurückgegeben. Der Rückgabecode des Betriebssystems wurde über secondary_rc zurückgegeben. Er wird in Intel-Bytetauschreihenfolge angezeigt. Wenn das Problem weiterhin besteht, wenden Sie sich an Ihren Systemadministrator.

Hinweise

Dies muss das erste APPC-Verb sein, das vom aufgerufenen TP ausgegeben wird. Der Anfangszustand ist RESET. Wenn das Verb erfolgreich ausgeführt wird (primary_rc AP_OK ist), ändert sich der Status in RECEIVE.

Als Reaktion auf dieses Verb richtet APPC eine Konversation zwischen den beiden TPs ein und generiert einen TP-Bezeichner für den aufgerufenen TP und einen Konversationsbezeichner. Diese Bezeichner sind erforderliche Parameter für nachfolgende APPC-Verben.

Wenn das aufgerufene TP RECEIVE_ALLOCATE ausgibt und eine entsprechende eingehende Zuordnung (die sich aus MC_ALLOCATE oder allocate vom aufrufenden TP ergibt) nicht vorhanden ist, wartet der aufgerufene TP, bis die eingehende Zuordnung eingeht oder das Verb ein Timeout erreicht. Der Timeoutwert wird vom Systemadministrator festgelegt.

Host Integration Server unterstützt auch APPC-RECEIVE_ALLOCATE_EX- und RECEIVE_ALLOCATE_EX_END-Funktionen, um den Entwurf und die Implementierung einiger aufgerufener Transaktionsprogramme zu vereinfachen. Mit dieser Funktion kann eine APPC-Anwendung alle eingehenden FMH-5 Attach-Anforderungen empfangen, die vom Host Integration Server über eine bestimmte lokale APPC-LU empfangen werden, sodass eine Anwendung als "Anfüge-Manager" fungieren kann. Ein Anfüge-Manager ist ein Programm, das eine eingehende FMH-5 Attach-Anforderung verarbeitet, um eine LU6.2-Konversation zu starten. Wenn eine APPC-Anwendung RECEIVE_ALLOCATE aufruft (im Gegensatz zu RECEIVE_ALLOCATE_EX), verarbeitet Host Integration Server die Funktionen des Anfügen-Managers.

Weitere Informationen zum Anfügen von Managern finden Sie unter RECEIVE_ALLOCATE_EX.