2.2.3 DCCM3論理端末に端末識別情報を通知する
常設コネクションを使用してDCCM3論理端末と通信する場合,クライアント側(TP1/Client)でユーザが指定した端末識別情報をDCCM3論理端末に通知し,DCCM3の端末固定割り当て機能を利用できます。
(1) DCCM3論理端末でのメッセージ送受信方法
DCCM3論理端末では,通信相手となるTP1/ClientのCUPをIPアドレスとDCCM3論理端末のポート番号で区別する論理端末として定義し,論理端末ごとにメッセージの送受信を行っています。
したがって,マルチスレッド型のCUPを使用する場合,どのスレッドからのサービス要求でも,CUPのIPアドレスとDCCM3論理端末のポート番号の組み合わせが同じとなるため,該当する論理端末を複数定義した場合,CUPとDCCM3論理端末との組み合わせを特定できません。そのため,サービス要求を受け付けるDCCM3論理端末が異なると,DCCM3側のサーバ処理の順番が保証されなくなるため,業務によっては問題となることがあります。
(2) 端末識別情報の通知
常設コネクションを使用してDCCM3論理端末と通信する場合,TP1/Clientでユーザが指定した端末識別情報をDCCM3論理端末に通知することで,DCCM3の端末固定割り当て機能を利用できます。端末識別情報にはDCCM3論理端末の論理端末名称を使用します。
端末識別情報をDCCM3論理端末に通知することで,CUPが常に同じ論理端末に割り当てられるため,CUPと論理端末の組み合わせを特定できます。
端末識別情報をDCCM3論理端末に通知するには,クライアント環境定義のDCCLTCONNECTINFに端末識別情報を指定するか,dc_clt_set_connect_inf_s関数を実行して端末識別情報を設定します。
常設コネクションを使用してDCCM3論理端末と通信する場合,次の二つの方法があります。このうち,DCCM3論理端末に端末識別情報を通知できるのは,2.の方法だけです。
-
クライアント環境定義DCCLTDCCMHOSTにDCCM3論理端末のホスト名,DCCLTDCCMPORTにDCCM3論理端末のポート番号を指定し,dc_clt_connect_s関数の引数flagsにはDCCLT_DCCM3を指定します。
-
クライアント環境定義DCCLTRAPHOSTにDCCM3論理端末のホスト名およびポート番号を指定し,dc_clt_connect_s関数の引数flagsにはDCNOFLAGSを指定します。
(3) DCCM3論理端末に端末識別情報を通知するときの注意事項
-
端末識別情報の通知によって,DCCM3の端末固定割り当て機能を利用できるのは,DCCM3のバージョン09-03以降です。端末固定割り当て機能については,マニュアル「VOS3 データマネジメントシステム XDM E2系 解説」を参照してください。
-
TP1/Clientで指定した端末識別情報と一致するDCCM3論理端末の論理端末名称がDCCM3側で定義されていなかった場合,dc_clt_connect_s関数はDCCLTER_NET_DOWNでエラーリターンします。