Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 プロトコル TP1/NET/XMAP3編


2.3.3 論理端末の端末状態の閉塞と閉塞解除

ここでは,表示印刷サービスを管理する端末状態の閉塞と閉塞解除について説明します。

画面属性の論理端末の端末状態が閉塞されている場合は,論理端末画面は表示されません。また,プリンタ属性の論理端末の端末状態が閉塞されている場合は,送信メッセージはプリンタに出力されません。

TP1/NET/XMAP3は,閉塞されている表示印刷サービスへの送信メッセージをOpenTP1の出力キューに蓄えます。

〈この項の構成〉

(1) 端末状態の閉塞解除

端末状態は,次のどれかの方法で閉塞解除します。

論理端末の閉塞解除処理は,該当する論理端末の属性が画面かプリンタかによって異なります。論理端末の属性は,コネクション定義(mcftalccn -S)のtypeオペランドで指定します。

(a) 画面属性の端末状態の閉塞解除処理

画面属性の端末状態の閉塞解除処理を,次の図に示します。

図2‒3 画面属性の端末状態の閉塞解除処理

[図データ]

次に,図に示した流れの詳細について説明します。番号は,図中の番号と対応しています。

  1. 端末状態を,次のどれかによって閉塞解除します。

    • コネクション確立時の自動閉塞解除

    • 運用コマンド(mcftactle)の入力

    • API(dc_mcf_tactle関数)の発行

  2. 論理端末画面を生成します。

  3. 論理端末定義(mcftalcle -p)でinitmapオペランドの指定がある場合,初期画面を表示します。

    論理端末定義(mcftalcle -p)でinitmapオペランドの指定がない場合,状態通知イベント(VOPNEVT)で起動されるUAPからsend関数を呼び出して表示できます(reply関数は呼び出せません)。初期画面表示のsend関数を呼び出さないと論理端末画面は表示されないため注意してください。

  4. UAPに状態通知イベント(VOPNEVT)を発行します。

(b) プリンタ属性の端末状態の閉塞解除処理

プリンタ属性の端末状態の閉塞解除処理を,次の図に示します。

図2‒4 プリンタ属性の端末状態の閉塞解除処理

[図データ]

次に,図に示した流れの詳細について説明します。番号は,図中の番号と対応しています。

  1. 端末状態を,次のどれかによって閉塞解除します。

    • コネクション確立時の自動閉塞解除

    • 運用コマンド(mcftactle)の入力

    • API(dc_mcf_tactle関数)の発行

  2. UAPに状態通知イベント(VOPNEVT)を発行します。

(2) 端末状態の閉塞

端末状態は,次の場合に閉塞されます。

端末状態の閉塞処理は,該当する論理端末の属性が画面かプリンタかによって異なります。論理端末の属性は,コネクション定義(mcftalccn -S)のtypeオペランドで指定します。

(a) 画面属性の端末状態の閉塞処理

画面属性の端末状態の閉塞処理を,次の図に示します。

図2‒5 画面属性の端末状態の閉塞処理

[図データ]

次に,図に示した流れの詳細について説明します。番号は,図中の番号と対応しています。

  1. 端末状態を,次のどれかによって閉塞します。

    • コネクション解放時

    • 運用コマンド(mcftdctle)の入力

    • API(dc_mcf_tdctle関数)の発行

  2. UAPに状態通知イベント(VCLSEVT)を発行します。

  3. 論理端末画面を破棄します。

(b) プリンタ属性の端末状態の閉塞処理

プリンタ属性の端末状態の閉塞処理を,次の図に示します。

図2‒6 プリンタ属性の端末状態の閉塞処理

[図データ]

次に,図に示した流れの詳細について説明します。番号は,図中の番号と対応しています。

  1. 端末状態を,次のどれかによって閉塞します。

    • コネクション解放時

    • 運用コマンド(mcftdctle)の入力

    • API(dc_mcf_tdctle関数)の発行

  2. UAPに状態通知イベント(VCLSEVT)を発行します。