Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 クライアント使用の手引 TP1/Client/W,TP1/Client/P編


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.の方法だけです。

  1. クライアント環境定義DCCLTDCCMHOSTにDCCM3論理端末のホスト名,DCCLTDCCMPORTにDCCM3論理端末のポート番号を指定し,dc_clt_connect_s関数の引数flagsにはDCCLT_DCCM3を指定します。

  2. クライアント環境定義DCCLTRAPHOSTにDCCM3論理端末のホスト名およびポート番号を指定し,dc_clt_connect_s関数の引数flagsにはDCNOFLAGSを指定します。

(3) DCCM3論理端末に端末識別情報を通知するときの注意事項