TPDISCON
名称
会話型サービスとのコネクションの切断
形式
01 TPSVCDEF-REC.
COPY TPSVCDEF.
01 TPSTATUS-REC.
COPY TPSTATUS.
CALL "TPDISCON" USING TPSVCDEF-REC TPSTATUS-REC.
機能
TPDISCONは,COMM-HANDLEで示すコネクションをすぐに切断して,他端点のコネクションにTPEV-DISCONIMMのイベントを通知します。
TPDISCONは,会話を始めた側(オリジネータ)からだけしか呼び出せません。会話型サービス内で,このサービスを呼び出した通信ハンドルを使って,TPDISCONを呼び出せません。むしろ,会話型サービスは,会話の一方が完了したことを意味するためにTPRETURNを使わなければなりません。同様に,会話型サービスと会話しているプログラムはTPDISCONを使えますが,結果を確実にするために望ましい方法は,サービスにTPRETURNでコネクションを終わらせてもらうことです。
TPDISCONは,コネクションをすぐに切断します(正常終了ではなく異常終了として)。送信先に届いていないデータは捨てられます。コネクションの他端点のプログラムが,呼び出し側のトランザクションに参加していても,TPDISCONを呼び出せます。この場合,トランザクションはロールバックします。また,TPDISCONが呼ばれたとき,呼び出し側は,コネクションの制御権を持っている必要はありません。
『データ領域』
『●TPSVCDEF-REC
COMM-HANDLEに,強制終了するコネクションの通信ハンドルを設定します。』
『●TPSTATUS-REC
TPDISCONの実行結果を示すリターン値が設定されます。』
リターン値
成功した場合,TPDISCONはTP-STATUSにTPOKを設定します。
エラー
次のような場合,TPDISCONはエラーリターンして,次のうちどれか一つの値をTP-STATUSに設定します。
関連項目
TPCONNECT,TPRECV,TPRETURN,TPSEND
『OpenTP1で使う場合の注意事項』