共用方式為


SET_TP_PROPERTIES

SET_TP_PROPERTIES動詞動詞可讓交易程式 (TP) 透過提供 LUWID,將其邏輯工作單位識別碼 (LUWID) 設定為現有的值,或要求 SNA 伺服器產生新的識別符,並從該處使用它們。 當 LUWID 是由 SNA 伺服器產生時,它保證是唯一的。 只有在啟用同步點支援時,才會使用此動詞。

下列結構描述 SET_TP_PROPERTIES 動詞動詞所使用的動詞控制區塊 (VCB)。

語法

  
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];  
};   

成員

opcode
提供的參數。 指定動詞作業程式代碼,AP_SET_TP_PROPERTIES。

opext
提供的參數。 指定動詞作業延伸。 必須設定AP_EXTD_VCB位,才能指出 set_tp_properties 結構需要同步點支援。

reserv2
保留欄位。

primary_rc
傳回的參數。 指定APPC在動詞完成時設定的主要傳回碼。 有效的傳回碼會根據所發出的APPC動詞而有所不同。 如需這個動詞的有效錯誤碼,請參閱傳回碼。

secondary_rc
傳回的參數。 指定APPC在動詞完成時所設定的次要傳回碼。 有效的傳回碼會根據所發出的APPC動詞而有所不同。 如需這個動詞的有效錯誤碼,請參閱傳回碼。

tp_id
提供的參數。 識別本機 TP。 在叫用 TP 或叫用的 TP 中RECEIVE_ALLOCATE,這個參數的值是由 用的 TP 中TP_STARTED 所傳 回。

set_prot_id
提供的參數。 指出是否應該修改 prot_id 成員。 法律值是AP_YES或AP_NO。

new_prot_id
提供的參數。 指出Microsoft®主機整合伺服器應該使用提供的 prot_id LUWID 成員,還是建立新的 LUWID。 法律值是AP_YES(建立新的LUWID)或AP_NO(使用提供的LUWID)。

prot_id
此成員是參與 TP 之交易的受保護邏輯工作單位標識碼。 如果 set_prot_id是AP_NO ,則會予以忽略。 如果 AP_NO new_unprot_id ,則為提供的參數,如果 new_unprot_id為AP_YES ,則為傳回的參數。

數個 TP 可以參與交易。 此標識符會代表起始交易的 TP 指派,可讓組成交易的交談以邏輯方式連接。

prot_id可以表示為具有下列欄位的luw_id_overlay結構:

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

原始 TP 之 LU 完整 LU 名稱的 1 位元組長度。

luw_id.fqla_name

原始 TP 之 LU 的完整名稱。 名稱會以17位元組的EBCDIC字串傳回,其中包含NETID、句號和LU名稱。 如果名稱的長度小於 17 個字節, 則實例 號會緊接在後面。 (請注意,因此,您不應該使用 luw_id_overlay 結構的字段來存取這些值。這些僅針對相容性而提供。

luw_id.instance

由 LU 針對原始 TP 唯一產生的 6 位元組字串。

luw_id.sequence

指出工作單位區段的 2 位元組數位。 (如果不支援同步點,這一律會設定為 1。

如果 luw_id 長度小於 26 個字節,則會以 EBCDIC 空格填補右邊。

set_unprot_id
提供的參數。 指出是否應該修改 unprot_id 成員。 法律值是AP_YES或AP_NO。

new_unprot_id
提供的參數。 指出主機整合伺服器應該使用提供的 unprot_id LUWID 成員,還是建立新的 LUWID。 法律值是AP_YES(建立新的LUWID)或AP_NO(使用提供的LUWID)。

unprot_id
此成員是參與 TP 之交易的未受保護的邏輯工作單位標識碼。 如果 set_unprot_id是AP_NO ,則會予以忽略。 如果 AP_NO new_unprot_id ,則為提供的參數,如果 new_unprot_id為AP_YES ,則為傳回的參數。

數個 TP 可以參與交易。 此標識符會代表起始交易的 TP 指派,可讓組成交易的交談以邏輯方式連接。

prot_id可以表示為具有下列欄位的luw_id_overlay結構:

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

原始 TP 之 LU 完整 LU 名稱的 1 位元組長度。

luw_id.fqla_name

原始 TP 之 LU 的完整名稱。 名稱會以17位元組的EBCDIC字串傳回,其中包含NETID、句號和LU名稱。 如果名稱的長度小於 17 個字節, 則實例 號會緊接在後面。 (請注意,因此,您不應該使用 luw_id_overlay 結構的字段來存取這些值。這些僅供相容性使用。

luw_id.instance

由 LU 針對原始 TP 唯一產生的 6 位元組字串。

luw_id.sequence

指出工作單位區段的 2 位元組數位。 (如果不支援同步點,這一律會設定為 1。

如果 luw_id 長度小於 26 個字節,則會以 EBCDIC 空格填補右邊。

set_user_id
提供的參數。 指出是否應該修改 user_id 成員。 法律值是AP_YES或AP_NO。

reserve3
保留欄位。

user_id
提供的參數。 指出配置要求中起始 TP 應該使用的 user_id 。 此名稱是10位元組的EBCDIC字串,在右側以EBCDIC空格填補。 如果 set_user_id是AP_NO ,則會忽略此參數。

reserve4
保留欄位。

回傳代碼

AP_OK
主要傳回碼;已順利執行動詞。

AP_PARAMETER_CHECK
主要傳回碼;因為參數錯誤而未執行動詞。

AP_BAD_TP_ID

次要傳回碼; tp_id 的值與 APPC 指派的 TP 識別碼不符。

AP_COMM_SUBSYSTEM_ABENDED
主要傳回碼;表示下列其中一個條件:

  • 此交談所使用的節點遇到 ABEND。

  • TP 與 PU 2.1 節點之間的連線已中斷(LAN 錯誤)。

  • TP 電腦上的 SnaBase 遇到 ABEND。

    系統管理員應該檢查錯誤記錄檔,以判斷 ABEND 的原因。

    AP_COMM_SUBSYSTEM_NOT_LOADED
    主要傳回碼;處理動詞時,無法載入或終止必要的元件。 因此,無法進行通訊。 請連絡系統管理員以採取更正動作。

    AP_INVALID_VERB_SEGMENT
    主要傳回碼;VCB 延伸超過數據區段結尾。

    AP_STACK_TOO_SMALL
    主要傳回碼;應用程式的堆疊大小太小,無法執行動詞。 增加應用程式的堆疊大小。

    AP_TP_BUSY
    主要傳回碼;本機 TP 已發出對 APPC 的呼叫,而 APPC 正在處理相同 TP 的另一個呼叫。 如果本機 TP 有多個線程,而且有多個線程使用相同的 tp_id發出 APPC 呼叫,就可能發生此情況。

    AP_UNEXPECTED_DOS_ERROR
    主要傳回碼;從本機 TP 處理 APPC 呼叫時,作系統已將錯誤傳回 APPC。 作系統傳回碼會透過 secondary_rc傳回。 它會以 Intel 位元組交換的順序出現。 如果問題持續發生,請洽詢系統管理員。

備註

這個動詞與 TP 相關,而不是規格交談,因此 TP 可以在任何狀態下發出動詞。 沒有狀態變更。

prot_idunprot_id成員包含fqla_name_len的欄位(來自 TP 的 LU 完整 LU 名稱長度)、fqla_name(來自 TP 的 LU 完整名稱)、實例(由來自 TP 的 LU 唯一產生),以及序列 (一律設定為 1,並指出工作單位的區段)。

當受保護的 LUWID 變更時,應用程式負責將新的 LUWID PS 標頭傳輸至合作夥伴同步點支援。 同樣地,收到新的 LUWID PS 標頭時,應用程式必須發出 SET_TP_PROPERTIES 動詞來通知 LU。