RECEIVE_ALLOCATE
Il verbo RECEIVE_ALLOCATE viene emesso dal programma di transazione richiamato (TP) per confermare che il tp richiamato è pronto per iniziare una conversazione con il tp di richiamo che ha emesso ALLOCATE o MC_ALLOCATE.
Nella struttura seguente viene descritto il blocco di controllo verbo (VCB) utilizzato dal verbo RECEIVE_ALLOCATE .
Sintassi
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];
};
Members
Opcode
Parametro fornito. Specifica il codice dell'operazione verbo AP_RECEIVE_ALLOCATE.
opext
Parametro fornito. Specifica l'estensione dell'operazione verbo AP_BASIC_CONVERSATION.
reserv2
Un campo riservato.
Primary_rc
Parametro restituito. Specifica il codice restituito primario impostato da APPC al completamento del verbo. I codici restituiti validi variano a seconda del verbo APPC emesso. Per questo verbo, vedere Codici restituiti per codici di errore validi.
Secondary_rc
Parametro restituito. Specifica il codice restituito secondario impostato da APPC al completamento del verbo. I codici restituiti validi variano a seconda del verbo APPC emesso. Per questo verbo, vedere Codici restituiti per codici di errore validi.
Tp_name
Parametro fornito. Fornisce il nome del tp locale. Il valore di tp_name deve corrispondere al nome TP configurato tramite le variabili del Registro di sistema o di ambiente. APPC corrisponde al parametro tp_name del verbo RECEIVE_ALLOCATE con il nome TP specificato dall'allocato in ingresso, generato da MC_ALLOCATE o ALLOCATE nella chiamata di TP.
Questo parametro è una stringa di caratteri EBCDIC a 64 byte e fa distinzione tra maiuscole e minuscole. Il parametro tp_name può essere costituito da caratteri del set di caratteri EBCDIC di tipo AE:
Lettere maiuscole e minuscole
Numerali da 0 a 9
Caratteri speciali $, #e punto (.)
Se tp_name è inferiore a 64 byte, usare spazi EBCDIC (0x40) per riempirlo a destra.
La convenzione SNA è che un nome tp del servizio può contenere fino a quattro caratteri. Il primo carattere è un byte esadecimale tra 0x00 e 0x3F. Gli altri caratteri provengono dal set di caratteri EBCDIC di tipo AE.
Tp_id
Parametro restituito. Identifica il tp locale.Conv_id
Parametro restituito. Fornisce l'identificatore della conversazione. Identifica l'APPC della conversazione stabilita tra i due partner TP.sync_level
Parametro restituito. Specifica il livello di sincronizzazione della conversazione. Determina se i provider di servizi di transazione possono richiedere la conferma della ricezione dei dati e confermare la ricezione dei dati.AP_NONE specifica che l'elaborazione della conferma non verrà utilizzata in questa conversazione.
AP_CONFIRM_SYNC_LEVEL specifica che i provider di servizi di transazione possono usare l'elaborazione delle conferme in questa conversazione.
AP_SYNCPT specifica che i provider di servizi di configurazione possono usare l'elaborazione della conferma del livello 2 del punto di sincronizzazione in questa conversazione.
conv_type
Parametro restituito. Specifica il tipo di conversazione scelto dal partner TP, utilizzando MC_ALLOCATE o ALLOCATE. Di seguito sono indicati i valori possibili:AP_BASIC_CONVERSATION
AP_MAPPED_CONVERSATION
User_id
Parametro restituito. Fornisce l'identificatore utente specificato dal tp del partner, utilizzando MC_ALLOCATE o ALLOCATE (se il tp del partner imposta il parametro di sicurezza del verbo MC_ALLOCATE o ALLOCATE su AP_PGM o AP_SAME). È una stringa di caratteri EBCDIC di tipo AE.Lu_alias
Parametro restituito. Fornisce l'alias in base al quale l'unità logica locale (LU) è nota al tp locale. Si tratta di una stringa di caratteri ASCII.plu_alias
Parametro restituito. Fornisce l'alias in base al quale il lu partner (che ha avviato l'allocazione in ingresso) è noto al tp locale. Si tratta di una stringa di caratteri ASCII.mode_name
Parametro restituito. Fornisce il nome della modalità specificato da MC_ALLOCATE o ALLOCATE nel tp del partner. È il nome di un set di caratteristiche di rete definite durante la configurazione. Il mode_name è un tipo Stringa di caratteri EBCDIC.reserv3
Un campo riservato.conv_group_id
Identificatore del gruppo di conversazioni.fqplu_name
Questo parametro restituito fornisce il nome lu completo.pip_incoming
Questo parametro facoltativo fornito e restituito è applicabile solo se sono necessari i servizi del punto di sincronizzazione.Per il parametro fornito:
AP_YES se TP accetta dati PIP.
AP_NO se TP non accetta dati PIP.
Per il parametro restituito:
AP_YES se sono disponibili dati PIP.
AP_NO se i dati PIP non sono disponibili.
syncpoint_rqd
Questo parametro indica se sono necessari i servizi del punto di sincronizzazione.AP_YES se è necessario il punto di sincronizzazione.
AP_NO se il punto di sincronizzazione non è obbligatorio.
reserv4
Un campo riservato.
Codici restituiti
AP_OK
Codice restituito primario; il verbo eseguito correttamente.
AP_PARAMETER_CHECK
Codice restituito primario; il verbo non è stato eseguito a causa di un errore di parametro.
AP_UNDEFINED_TP_NAME
Codice restituito secondario; il nome TP non è stato configurato correttamente.
AP_STATE_CHECK
Codice restituito primario; il verbo non è stato eseguito perché è stato emesso in uno stato non valido.
AP_ALLOCATE_NOT_PENDING
Codice restituito secondario; APPC non ha trovato un'allocazione in ingresso (dal tp di chiamata) in modo che corrisponda al valore di tp_name, fornito da RECEIVE_ALLOCATE. RECEIVE_ALLOCATE attendeva l'allocazione in ingresso e alla fine si è verificato il timeout.
AP_INVALID_PROCESS
Codice restituito secondario; il processo di emissione RECEIVE_ALLOCATE è diverso da quello avviato da APPC.
AP_COMM_SUBSYSTEM_ABENDED
Codice restituito primario; indica una delle condizioni seguenti:
Il nodo usato da questa conversazione ha rilevato un ABEND.
La connessione tra il tp e il nodo pu 2.1 è stata interrotta (errore LAN).
SnaBase nel computer tp ha rilevato un ABEND.
L'amministratore di sistema deve esaminare il log degli errori per determinare il motivo di ABEND.
AP_CONV_BUSY
Codice restituito primario; può essere presente un solo verbo di conversazione in sospeso alla volta in qualsiasi conversazione.AP_THREAD_BLOCKING
Codice restituito primario; il thread chiamante è già in una chiamata di blocco.AP_COMM_SUBSYSTEM_NOT_LOADED
Codice restituito primario; Impossibile caricare o terminare un componente richiesto durante l'elaborazione del verbo. Pertanto, la comunicazione non poteva avvenire. Contattare l'amministratore di sistema per un'azione correttiva.AP_INVALID_VERB_SEGMENT
Codice restituito primario; VCB si estende oltre la fine del segmento di dati.AP_STACK_TOO_SMALL
Codice restituito primario; le dimensioni dello stack dell'applicazione sono troppo piccole per eseguire il verbo. Aumentare le dimensioni dello stack dell'applicazione.AP_UNEXPECTED_DOS_ERROR
Codice restituito primario; il sistema operativo ha restituito un errore ad APPC durante l'elaborazione di una chiamata APPC dal tp locale. Il codice restituito dal sistema operativo viene restituito tramite il secondary_rc. Viene visualizzato nell'ordine di scambio dei byte Intel. Se il problema persiste, consultare l'amministratore di sistema.
Commenti
Deve trattarsi del primo verbo APPC emesso dal tp richiamato. Lo stato iniziale è RESET. Se il verbo viene eseguito correttamente (primary_rc è AP_OK ), lo stato cambia in RECEIVE.
In risposta a questo verbo, APPC stabilisce una conversazione tra i due TP e genera un identificatore TP per il tp richiamato e un identificatore di conversazione. Questi identificatori sono parametri obbligatori per i verbi APPC successivi.
Se il tp richiamato genera problemi RECEIVE_ALLOCATE e un corrispondente allocazione in ingresso (risultante da MC_ALLOCATE o ALLOCATE emesso dal tp di richiamo) non è presente, il tp richiamato attende fino a quando l'allocato in ingresso non arriva o il verbo scade. Il valore di timeout viene impostato dall'amministratore di sistema.
Host Integration Server supporta anche funzioni appc RECEIVE_ALLOCATE_EX e RECEIVE_ALLOCATE_EX_END, per semplificare la progettazione e l'implementazione di alcuni programmi di transazione richiamabili. Questa funzione consente a un'applicazione APPC di ricevere tutte le richieste di collegamento FMH-5 in ingresso ricevute da Host Integration Server tramite un'unità lu appc locale specifica, consentendo a un'applicazione di fungere da "gestore collegamento". Un gestore di collegamento è un programma che gestisce una richiesta di collegamento FMH-5 in ingresso per avviare una conversazione LU6.2. Quando un'applicazione APPC chiama RECEIVE_ALLOCATE (anziché RECEIVE_ALLOCATE_EX), Host Integration Server gestisce la funzionalità di gestione collegamento.
Per altre informazioni su Attach Manager, vedere RECEIVE_ALLOCATE_EX.