REQUEST_TO_SEND

Il verbo REQUEST_TO_SEND notifica al programma di transazione partner (TP) che il tp locale vuole inviare dati.

Nella struttura seguente viene descritto il blocco di controllo verbo (VCB) utilizzato dal verbo REQUEST_TO_SEND .

Sintassi

  
struct request_to_send {  
    unsigned short      opcode;  
    unsigned char       opext;  
    unsigned char       reserv2;  
    unsigned short      primary_rc;  
    unsigned long       secondary_rc;  
    unsigned char       tp_id[8];  
    unsigned long       conv_id;  
};   

Members

Opcode
Parametro fornito. Specifica il codice dell'operazione verbo AP_B_REQUEST_TO_SEND.

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_id
Parametro fornito. Identifica il tp locale.

Il valore di questo parametro viene restituito da TP_STARTED nella chiamata di TP o da RECEIVE_ALLOCATE nel tp richiamato.

Conv_id
Parametro fornito. Fornisce l'identificatore della conversazione.

Il valore di questo parametro viene restituito da ALLOCATE nella chiamata di TP o da RECEIVE_ALLOCATE nel tp richiamato.

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_BAD_CONV_ID

Codice restituito secondario; il valore di conv_id non corrisponde a un identificatore di conversazione assegnato da APPC.

AP_BAD_TP_ID

Codice restituito secondario; il valore di tp_id non corrisponde a un identificatore TP assegnato da APPC.

AP_STATE_CHECK
Codice restituito primario; il verbo non è stato eseguito perché è stato emesso in uno stato non valido.

AP_R_T_S_BAD_STATE

Codice restituito secondario; la conversazione non è in uno stato consentito quando il tp ha emesso questo verbo.

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_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.

    Quando questo codice restituito viene usato con ALLOCATE, può indicare che non è stato possibile trovare alcun sistema di comunicazione per supportare l'unità logica locale.When this return code is used with ALLOCATE, it may indicate that no communications system could be found to support the local logical unit (LU). Ad esempio, l'alias LU locale specificato con TP_STARTED non è corretto o non è stato configurato. Si noti che se lu_alias o mode_name è inferiore a otto caratteri, è necessario assicurarsi che questi campi siano riempiti con spazi a destra. Questo errore viene restituito se questi parametri non vengono riempiti con spazi, poiché non è disponibile alcun nodo in grado di soddisfare la richiesta ALLOCATE .

    Quando ALLOCATE produce questo codice restituito per un sistema Client di Microsoft Host Integration Server configurato con più nodi, esistono due codici restituiti secondari come indicato di seguito:

    0xF0000001

    Codice restituito secondario; nessun nodo è stato avviato.

    0xF0000002

    Codice restituito secondario; almeno un nodo è stato avviato, ma l'lu locale (quando viene emesso TP_STARTED ) non è configurato in alcun nodo attivo. Il problema potrebbe essere uno dei seguenti:

  • Il nodo con l'lu locale non viene avviato.

  • L'lu locale non è configurato.

    AP_CONVERSATION_TYPE_MIXED
    Codice restituito primario; il tp ha emesso verbi di conversazione di base e mappati. È possibile emettere un solo tipo in una singola conversazione.

    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_CONV_BUSY
    Codice restituito primario; può essere presente un solo verbo di conversazione in sospeso alla volta in qualsiasi conversazione. Ciò può verificarsi se il tp locale ha più thread e più thread eseguono chiamate APPC usando lo stesso conv_id.

    AP_THREAD_BLOCKING
    Codice restituito primario; il thread chiamante è già in una chiamata di blocco.

    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

La conversazione può trovarsi in uno degli stati seguenti quando il tp rilascia questo verbo:

CONFERMA

PENDING_POST (SISTEMA OPERATIVO/2)

RECEIVE

Non esiste alcuna modifica dello stato.

La notifica request-to-send viene ricevuta dal programma partner tramite il parametro rts_rcvd dei verbi seguenti:

  • CONFERMARE

  • RECEIVE_AND_POST

  • RECEIVE_AND_WAIT

  • RECEIVE_IMMEDIATE

  • SEND_DATA

  • SEND_ERROR

    È inoltre indicato da una primary_rc di AP_OK su TEST_RTS.

    La notifica request-to-send viene inviata immediatamente al tp del partner; APPC non attende finché il buffer di invio riempie o viene scaricato. Di conseguenza, la notifica di tipo request-to-send può arrivare fuori sequenza. Ad esempio, se il tp locale è in stato SEND e genera PREPARE_TO_RECEIVE seguito da REQUEST_TO_SEND, il partner TP, nello stato RECEIVE, può ricevere la notifica di invio da richiesta prima di ricevere la notifica di invio. Per questo motivo, l'invio di richieste può essere segnalato a un tp tramite un verbo di ricezione.

    In risposta a questa richiesta, il partner TP può modificare la conversazione in:

  • RECEIVE state by issuing PREPARE_TO_RECEIVE or RECEIVE_AND_WAIT.

  • PENDING_POST stato eseguendo RECEIVE_AND_POST.

    Il tp del partner può anche ignorare la richiesta da inviare.

    Lo stato della conversazione cambia in SEND per il tp locale quando il tp locale riceve uno dei valori seguenti tramite il parametro what_rcvd di un verbo di ricezione successivo:

  • AP_CONFIRM_SEND e risposte con CONFERMATO

  • AP_DATA_COMPLETE_CONFIRM_SEND e risposte con CONFERMATO

  • AP_DATA_CONFIRM_SEND e risposte con CONFERMATO

  • AP_SEND

    I verbi di ricezione sono RECEIVE_AND_POST, RECEIVE_IMMEDIATE e RECEIVE_AND_WAIT.