Condividi tramite


SET_TP_PROPERTIES

Il verbo SET_TP_PROPERTIES consente a un programma di transazione (TP) di impostare i relativi identificatori di unità di lavoro logici (LUWID) su un valore esistente, fornendo i LUWID o richiedendo che il server SNA generi nuovi identificatori e li usi da allora. Quando il luWID viene generato dal server SNA, è garantito che sia univoco. Questo verbo viene usato solo se il supporto del punto di sincronizzazione è abilitato.

La struttura seguente descrive il blocco di controllo verbo (VCB) usato dal verbo SET_TP_PROPERTIES verbo.

Sintassi

  
struct set_tp_properties {  
    unsigned short  opcode;  
    unsigned char   opext;  
    unsigned char   reserv2;  
    unsigned short  primary_rc;  
    unsigned long   secondary_rc;  
    unsigned char   tp_id[8];  
    unsigned char   set_prot_id;  
    unsigned char   new_prot_id;  
    unsigned char   prot_id[26];  
    unsigned char   set_unprot_id;  
    unsigned char   new_unprot_id;  
    unsigned char   unprot_id[26];  
    unsigned char   set_user_id;  
    unsigned char   reserv3;  
    unsigned char   user_id[10];  
    unsigned char   reserv4[10];  
};   

Members

Opcode
Parametro fornito. Specifica il codice dell'operazione verbo, AP_SET_TP_PROPERTIES.

opext
Parametro fornito. Specifica l'estensione dell'operazione verbo. Il bit AP_EXTD_VCB deve essere impostato per indicare che la struttura set_tp_properties richiede il supporto del punto di sincronizzazione.

reserv2
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 rilasciato. Per questo verbo, vedere Codici restituiti per i 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 rilasciato. Per questo verbo, vedere Codici restituiti per i codici di errore validi.

Tp_id
Parametro fornito. Identifica il TP locale. Il valore di questo parametro è stato restituito da TP_STARTED nella chiamata TP o da RECEIVE_ALLOCATE nel TP richiamato.

set_prot_id
Parametro fornito. Indica se il membro prot_id deve essere modificato. I valori legali sono AP_YES o AP_NO.

new_prot_id
Parametro fornito. Indica se Microsoft® Host Integration Server deve usare il membro LUWID fornito prot_id o creare un nuovo LUWID. I valori legali sono AP_YES (creare un nuovo LUWID) o AP_NO (usare il LUWID fornito).

prot_id
Questo membro è l'identificatore logico logico protetto per la transazione in cui appartiene il TP. Viene ignorato se set_prot_id è AP_NO . È un parametro specificato se new_unprot_id è AP_NO o un parametro restituito se new_unprot_id è AP_YES.

È possibile coinvolgere diversi provider di servizi di rete in una transazione. Questo identificatore, assegnato per conto del TP che avvia la transazione, consente alla conversazione che costituisce la transazione di essere connessa logicamente.

Il prot_id può essere rappresentato come struttura luw_id_overlay con i campi seguenti:

typedef struct luw_id_overlay { unsigned char fqla_name_len; unsigned char fqla_name[17]; nsigned char instance[6]; unsigned char sequence[2];} LUW_ID_OVERLAY;

luw_id.fqla_name_len

Lunghezza di 1 byte del nome lu completo per l'lu dell'origine TP.

luw_id.fqla_name

Nome completo dell'LU per il TP di origine. Il nome viene restituito come stringa EBCDIC a 17 byte, costituita da NETID, un punto e il nome LU. Se la lunghezza del nome è inferiore a 17 byte, i numeri di istanza e sequenza seguono immediatamente. Si noti che a causa di questo motivo non è consigliabile usare i campi della struttura luw_id_overlay per accedere a tali valori. Sono disponibili solo per la compatibilità.

luw_id.instance

Stringa a 6 byte generata in modo univoco dall'LU per il TP di origine.

luw_id.sequence

Numero a 2 byte che indica il segmento di unità di lavoro. Questa opzione è sempre impostata su 1 se il punto di sincronizzazione non è supportato.

Se la lunghezza luw_id è minore di 26 byte, viene riempita a destra con spazi EBCDIC.

set_unprot_id
Parametro fornito. Indica se il membro unprot_id deve essere modificato. I valori legali sono AP_YES o AP_NO.

new_unprot_id
Parametro fornito. Indica se Host Integration Server deve usare il unprot_id membro LUWID fornito o creare un nuovo LUWID. I valori legali sono AP_YES (creare un nuovo LUWID) o AP_NO (usare il LUWID fornito).

unprot_id
Questo membro è l'identificatore logico non protetto dell'unità di lavoro per la transazione in cui appartiene il TP. Viene ignorato se set_unprot_id è AP_NO. È un parametro specificato se new_unprot_id è AP_NO o un parametro restituito se new_unprot_id è AP_YES.

È possibile coinvolgere diversi provider di servizi di rete in una transazione. Questo identificatore, assegnato per conto del TP che avvia la transazione, consente alla conversazione che costituisce la transazione di essere connessa logicamente.

Il prot_id può essere rappresentato come struttura luw_id_overlay con i campi seguenti:

typedef struct luw_id_overlay { unsigned char fqla_name_len; unsigned char fqla_name[17]; nsigned char instance[6]; unsigned char sequence[2];} LUW_ID_OVERLAY;

luw_id.fqla_name_len

Lunghezza di 1 byte del nome lu completo per l'lu dell'origine TP.

luw_id.fqla_name

Nome completo dell'LU per il TP di origine. Il nome viene restituito come stringa EBCDIC a 17 byte, costituita da NETID, un punto e il nome LU. Se la lunghezza del nome è inferiore a 17 byte, i numeri di istanza e sequenza seguono immediatamente. Si noti che a causa di questo motivo non è consigliabile usare i campi della struttura luw_id_overlay per accedere a tali valori. Sono disponibili solo per la compatibilità.

luw_id.instance

Stringa a 6 byte generata in modo univoco dall'LU per il TP di origine.

luw_id.sequence

Numero a 2 byte che indica il segmento di unità di lavoro. Questa opzione è sempre impostata su 1 se il punto di sincronizzazione non è supportato.

Se la lunghezza luw_id è minore di 26 byte, viene riempita a destra con spazi EBCDIC.

set_user_id
Parametro fornito. Indica se il membro user_id deve essere modificato. I valori legali sono AP_YES o AP_NO.

riserva3
Campo riservato.

User_id
Parametro fornito. Indica la user_id che deve essere usata dall'avvio TP nella richiesta di allocazione. Il nome è una stringa EBCDIC a 10 byte, riempita a destra con spazi EBCDIC. Questo parametro viene ignorato se set_user_id è AP_NO.

riserva4
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_BAD_TP_ID

Codice restituito secondario; il valore di tp_id non corrisponde a un identificatore TP assegnato 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_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.

    AP_INVALID_VERB_SEGMENT
    Codice restituito primario; VCB esteso 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_TP_BUSY
    Codice restituito primario; il TP locale ha rilasciato una chiamata all'APPC mentre APPC stava elaborando un'altra chiamata per lo stesso TP. Ciò può verificarsi se il TP locale ha più thread e più thread eseguono chiamate APPC usando la stessa tp_id.

    AP_UNEXPECTED_DOS_ERROR
    Codice restituito primario; il sistema operativo ha restituito un errore all'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 di byte Intel. Se il problema persiste, consultare l'amministratore di sistema.

Commenti

Questo verbo si riferisce al TP anziché a una conversazione specifica, in modo che il TP possa emettere il verbo in qualsiasi stato. Non esiste alcuna modifica dello stato.

I prot_id e i membri unprot_id contengono campi per fqla_name_len (lunghezza del nome LU completo dell'lu che ha origine il TP), fqla_name (il nome completo dell'istanza di lu che ha origine il TP), l'istanza (generata in modo univoco dall'LU originata dal TP) e la sequenza (sempre impostata su 1 e indica il segmento di unità di lavoro).

È responsabilità dell'applicazione (componente di supporto del punto di sincronizzazione) trasmettere la nuova intestazione PS LUWID al supporto del punto di sincronizzazione partner quando viene modificato il LUWID protetto. Analogamente, quando viene ricevuta la nuova intestazione LUWID PS, l'applicazione deve informare l'LU emettendo un verbo SET_TP_PROPERTIES .