SLI_CLOSE

Il verbo SLI_CLOSE termina una sessione aperta con SLI_OPEN. Vengono rilasciate le risorse LU-LU e LU-SSCP.

Nella struttura seguente viene descritto il membro LUA_COMMON del blocco di controllo verbo (VCB) utilizzato da SLI_CLOSE.

Sintassi

  
struct LUA_COMMON {  
    unsigned short   lua_verb;  
    unsigned short   lua_verb_length;  
    unsigned short   lua_prim_rc;  
    unsigned long    lua_sec_rc;  
    unsigned short   lua_opcode;  
    unsigned long    lua_correlator;  
    unsigned char    lua_luname[8];  
    unsigned short   lua_extension_list_offset;  
    unsigned short   lua_cobol_offset;  
    unsigned long    lua_sid;  
    unsigned short   lua_max_length;  
    unsigned short   lua_data_length;  
    char FAR *       lua_data_ptr;  
    unsigned long    lua_post_handle;  
    struct LUA_TH    lua_th;  
    struct LUA_RH    lua_rh;  
    struct LUA_FLAG1 lua_flag1;  
    unsigned char    lua_message_type;  
    struct LUA_FLAG2 lua_flag2;  
    unsigned char    lua_resv56[7];  
    unsigned char    lua_encr_decr_option;  
  
};  

Members

lua_verb
Parametro fornito. Contiene il codice verbo LUA_VERB_SLI per i verbi SLI (Session Level Interface).

lua_verb_length
Parametro fornito. Specifica la lunghezza in byte del VCB (LUA) dell'applicazione di unità logica. Deve contenere la lunghezza del record verbo da emettere.

lua_prim_rc
Codice restituito primario impostato da LUA al completamento del verbo. I codici restituiti validi variano a seconda del verbo LUA emesso.

lua_sec_rc
Codice restituito secondario impostato da LUA al completamento del verbo. I codici restituiti validi variano a seconda del verbo LUA emesso.

lua_opcode
Parametro fornito. Contiene il codice del comando LUA (codice dell'operazione verbo) per il verbo da emettere LUA_OPCODE_SLI_CLOSE.

lua_correlator
Parametro fornito. Contiene un valore fornito dall'utente che collega il verbo con altre informazioni fornite dall'utente. LUA non usa o modifica queste informazioni. Questo parametro è facoltativo e,

lua_luname
Parametro fornito. Specifica il nome ASCII dell'lu locale utilizzato dalla sessione LUA di Windows.

SLI_CLOSE richiede questo parametro solo se lua_sid è zero.

Questo parametro è lungo otto byte, riempito a destra con spazi (0x20) se il nome è più breve di otto caratteri.

lua_extension_list_offset
Non usato da SLI_CLOSE e deve essere impostato su zero.

lua_cobol_offset
Non usato da LUA in Microsoft® Host Integration Server e deve essere zero.

lua_sid
Parametro fornito. Specifica l'identificatore di sessione e viene restituito da SLI_OPEN e RUI_INIT. Altri verbi usano questo parametro per identificare la sessione usata per il comando . Se altri verbi usano il parametro lua_luname per identificare le sessioni, impostare il parametro lua_sid su zero.

lua_max_length
Non usato da SLI_CLOSE e deve essere impostato su zero.

lua_data_length
Non usato da SLI_CLOSE e deve essere impostato su zero.

lua_data_ptr
Non usato da SLI_CLOSE e deve essere impostato su zero.

lua_post_handle
Parametro fornito. Utilizzato in Microsoft Windows Server se la notifica asincrona deve essere eseguita dagli eventi. Questa variabile contiene l'handle dell'evento da segnalare o un handle di finestra.

lua_th
Non usato da SLI_CLOSE e deve essere impostato su zero.

lua_rh
Non usato da SLI_CLOSE e deve essere impostato su zero.

lua_flag1
Parametro fornito. Contiene una struttura di dati contenente flag per i messaggi forniti dall'applicazione. I relativi sottoparametri sono i seguenti:

lua_flag1.bid_enable

Indicatore di abilitazione dell'offerta, un bit.

lua_flag1.close_abend

Indicatore immediato di chiusura, un bit. Parametro fornito da SLI_CLOSE per specificare se la sessione deve essere chiusa immediatamente (ON) o chiusa normalmente (OFF). Per i verbi diversi da SLI_CLOSE, questo flag deve essere disattivato.

lua_flag1.nowait

Nessuna attesa per il flag di dati, un bit.

lua_flag1.sscp_exp

Flusso accelerato del punto di controllo dei servizi di sistema (SSCP), un bit.

lua_flag1.sscp_norm

Flusso normale SSCP, un bit.

lua_flag1.lu_exp

Flusso accelerato lu, un bit.

lua_flag1.lu_norm

Flusso normale LU, un bit.

lua_message_type
Non usato da SLI_CLOSE e deve essere impostato su zero.

lua_flag2
Parametro restituito. Contiene i flag per i messaggi restituiti da LUA.

lua_flag2.async

Indica che il verbo dell'interfaccia LUA è stato completato in modo asincrono se impostato su 1.

lua_resv56
Riservato e deve essere impostato su zero.

lua_encr_decr_option
Non usato da SLI_CLOSE e deve essere impostato su zero.

Codici restituiti

LUA_OK
Codice restituito primario; il verbo eseguito correttamente.

LUA_SEC_OK

Codice restituito secondario; non esistono informazioni aggiuntive per LUA_OK.

LUA_PARAMETER_CHECK
Codice restituito primario; il verbo non è stato eseguito a causa di un errore di parametro.

LUA_INVALID_LUNAME

Codice restituito secondario; è stato specificato un lua_luname non valido.

LUA_BAD_SESSION_ID

Codice restituito secondario; È stato specificato un valore non valido per lua_sid nel vcb.

LUA_RESERVED_FIELD_NOT_ZERO

Codice restituito secondario; un parametro riservato per il verbo appena rilasciato non è impostato su zero.

LUA_INVALID_POST_HANDLE

Codice restituito secondario; per un sistema operativo Microsoft Windows che usa eventi come metodo di registrazione asincrona, windows LUA VCB non contiene un handle di eventi valido.

LUA_VERB_LENGTH_INVALID

Codice restituito secondario; un verbo LUA è stato rilasciato con un valore per lua_verb_length imprevisto da LUA.

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

LUA_NO_SLI_SESSION

Codice restituito secondario; una sessione non è stata aperta o è stata interrotta a causa di un errore di SLI_CLOSE o sessione quando è stato rilasciato un comando.

LUA_CLOSE_PENDING

Codice restituito secondario; si è verificato uno dei seguenti elementi:

  • Una CLOSE_ABEND era ancora in sospeso quando è stata rilasciata un'altra CLOSE_ABEND. È possibile eseguire un CLOSE_ABEND se un CLOSE_NORMAL è in sospeso.

  • Un CLOSE_ABEND o un CLOSE_NORMAL è ancora in sospeso quando è stata rilasciata una CLOSE_NORMAL.

    LUA_SESSION_FAILURE
    Codice restituito primario; una condizione di errore, specificata nel codice restituito secondario, ha causato l'esito negativo della sessione.

    LUA_NOT_ACTIVE

    Codice restituito secondario; LUA non è stato attivo all'interno di Microsoft Host Integration Server quando è stato rilasciato un verbo LUA.

    LUA_UNEXPECTED_SNA_SEQUENCE

    Codice restituito secondario; dati o comandi imprevisti ricevuti dall'host durante l'elaborazione di SLI_OPEN .

    LUA_NEGATIVE_RSP_CHASE

    Codice restituito secondario; una risposta negativa a un comando SNA CHASE dall'host è stata ricevuta dall'interfaccia LUA durante l'elaborazione SLI_CLOSE. SLI_CLOSE l'elaborazione continua per arrestare la sessione.

    LUA_NEGATIVE_RSP_SHUTC

    Codice restituito secondario; una risposta negativa a un comando SNA SHUTC dall'host è stata ricevuta dall'SLI mentre SLI_CLOSE è ancora in corso l'elaborazione. SLI_CLOSE l'elaborazione continua per arrestare la sessione.

    LUA_NEGATIVE_RSP_SHUTD

    Codice restituito secondario; una risposta negativa a un comando SNA RSHUTD dall'host è stata ricevuta dall'interfaccia LUA mentre SLI_CLOSE è ancora in fase di elaborazione. SLI_CLOSE l'elaborazione continua per arrestare la sessione.

    LUA_RECEIVED_UNBIND

    Codice restituito secondario; l'unità logica primaria (PLU) ha inviato un comando SNA UNBIND all'interfaccia LUA quando una sessione è attiva. Di conseguenza, la sessione è stata arrestata.

    LUA_NO_RUI_SESSION

    Codice restituito secondario; nessuna sessione inizializzata per il verbo LUA o un verbo diverso da SLI_OPEN è stato rilasciato prima dell'inizializzazione della sessione.

    LUA_LU_COMPONENT_DISCONNECTED

    Codice restituito secondario; un componente LU non è disponibile perché non è connesso correttamente. Assicurarsi che l'alimentazione sia attiva.

    LUA_IN_PROGRESS
    Codice restituito primario; è stato ricevuto un comando asincrono ma non è stato completato.

    LUA_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 programma di transazione (TP) e l'unità fisica (PU) 2.1 nodo è stato interrotto (errore LAN).

  • Il SnaBase nel computer TP ha rilevato un ABEND.

    LUA_COMM_SUBSYSTEM_NOT_LOADED
    Codice restituito primario; Impossibile caricare o terminare un componente obbligatorio durante l'elaborazione del verbo. Pertanto, la comunicazione non poteva essere eseguita. Contattare l'amministratore di sistema per un'azione correttiva.

    LUA_INVALID_VERB_SEGMENT
    Codice restituito primario; VCB esteso oltre la fine del segmento di dati.

    LUA_UNEXPECTED_DOS_ERROR
    Codice restituito primario; dopo l'emissione di una chiamata al sistema operativo, è stato ricevuto un codice restituito del sistema operativo imprevisto e viene specificato nel codice restituito secondario.

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

    LUA_INVALID_VERB
    Codice restituito primario; il codice verbo o il codice dell'operazione, o entrambi, non è valido. Il verbo non è stato eseguito.

Commenti

Esistono due tipi di SLI_CLOSE: normale e ABEND. Per una chiusura normale, lua_flag1.close_abend è impostato su zero. La sequenza per una chiusura normale può essere avviata come primaria (avviata dall'host) o secondaria (richiesta da un'applicazione WINDOWS LUA). Durante una chiusura normale primaria, l'interfaccia LUA di Windows:

  • Legge il comando SHUTD e pubblica lo stato di SESSION_END_REQUESTED all'applicazione.

  • Scrive il comando CHASE (se necessario).

  • Legge e elabora la risposta al comando CHASE , se necessario.

  • Scrive il comando shutdown complete (SHUTC).

  • Legge e elabora la risposta del comando SHUTC.

  • Legge e elabora il comando CLEAR , se necessario.

  • Scrive la risposta al comando CLEAR, se necessario.

  • Legge ed elabora il comando UNBIND.

  • Scrive la risposta al comando UNBIND.

  • Arresta la sessione.

    Durante una chiusura normale secondaria, l'interfaccia LUA di Windows:

  • Scrive il comando RSHUTD.

  • Legge ed elabora la risposta al comando RSHUTD.

  • Legge e elabora il comando CLEAR , se necessario.

  • Scrive la risposta al comando CLEAR, se necessario.

  • Legge ed elabora il comando UNBIND.

  • Scrive la risposta al comando UNBIND.

  • Arresta la sessione.

    Per una chiusura di ABEND, lua_flag1.close_abend è impostato su 1, che indirizza l'interfaccia di Windows LUA per chiudere immediatamente la sessione. Dopo l'avvio dell'elaborazione SLI_CLOSE, la connessione LU-LU viene terminata e il SSCP viene informato che l'lu non è in grado di sostenere una sessione.

Vedere anche

SLI_OPEN