4.4.5 dc_clt_set_connect_inf_s − 端末識別情報の設定
- 〈この項の構成〉
(1) 形式
(a) TP1/Client/Wの場合
■ _s付き関数
#include <dcvclt.h> DCLONG dc_clt_set_connect_inf_s(DCCLT_ID cltid, char *inf, unsigned short inf_len, DCLONG flags)
■ _s無し関数
#include <dcvclt.h> DCLONG dc_clt_set_connect_inf(char *inf, unsigned short inf_len, DCLONG flags)
(b) TP1/Client/Pの場合
■ _s付き関数
#include <dcvclt.h> DCLONG dc_clt_set_connect_inf_s(DCCLT_ID cltid, char CLTFAR *inf, unsigned short inf_len, DCLONG flags)
■ _s無し関数
#include <dcvclt.h> DCLONG dc_clt_set_connect_inf(char CLTFAR *inf, unsigned short inf_len, DCLONG flags)
(2) 機能
端末識別情報を動的に設定します。
常設コネクションを使用してDCCM3論理端末と通信する場合,端末識別情報をDCCM3論理端末に通知することで,DCCM3の端末固定割り当て機能を利用できます。
この関数に指定した端末識別情報は,クライアント環境定義DCCLTRAPHOSTにDCCM3論理端末のホスト名およびポート番号を指定して,dc_clt_connect_s関数の引数flagsにDCNOFLAGSを指定した場合だけ,有効です。
この関数を実行した場合,クライアント環境定義DCCLTCONNECTINFに指定した端末識別情報は,dc_rpc_open_s関数を再び実行するまで参照されません。
この関数に指定した端末識別情報は,この関数のあとに実行するdc_clt_connect_s関数で参照され,DCCM3論理端末に通知されます。
この関数を複数回実行した場合は,dc_clt_connect_s関数実行直前に指定した端末識別情報が,有効となります。
(3) UAPで値を設定する引数
-
cltid
dc_clt_cltin_s関数で受け取ったクライアントIDを指定します。
-
inf
端末識別情報を指定します。16進数で指定する場合は,64バイト以内で指定します。文字列で指定する場合は,64文字以内(NULL文字を含めない)で指定します。
常設コネクションを使用してDCCM3論理端末と通信する場合は,端末識別情報としてDCCM3論理端末の論理端末名称をEBCDIKコードで指定します。ただし,DCCM3側では先頭8バイト目までに指定した値だけが有効になります(9バイト目以降に指定された値は無視されます)。
-
inf_len
端末識別情報長を指定します。1からDCCLT_MAX_CONNECT_INF_SIZEまでの範囲の長さが指定できます。DCCLT_MAX_CONNECT_INF_SIZEはヘッダファイル中で規定しています。ヘッダファイルは,TP1/Client/Wの場合はdcvclt.hです。TP1/Client/Pの場合はDCVCLT.Hです。
-
flags
DCNOFLAGSを指定します。
(4) リターン値
リターン値 |
数値 (10進数) |
意味 |
---|---|---|
DC_OK |
0 |
正常終了しました。 |
DCCLTER_INVALID_ARGS |
-2501 |
引数に指定した値が誤っています。 |
DCCLTER_PROTO |
-2502 |
dc_rpc_open_s関数が実行されていません。 |
DCCLTER_NO_BUFS |
-2504 |
必要なバッファが確保できませんでした。 |
DCCLTER_INVALID_CLTID |
-2544 |
cltidに指定したクライアントIDは,dc_clt_cltin_s関数で受け取ったクライアントIDと異なっています。 |
(5) 注意事項
-
端末識別情報の通知によって,DCCM3の端末固定割り当て機能を利用できるのは,DCCM3のバージョン09-03以降です。端末固定割り当て機能については,マニュアル「VOS3 データマネジメントシステム XDM E2系 解説」を参照してください。
-
dc_clt_set_connect_inf_s関数で定義した端末識別情報と一致するDCCM3論理端末の論理端末名称がDCCM3側で定義されていなかった場合,dc_clt_connect_s関数はDCCLTER_NET_DOWNでエラーリターンします。