Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 TP1/Server Base Enterprise Option プログラム作成の手引


ee_mch_otqbkctl【XTC限定】

〈このページの構成〉

名称

出力キュー(OTQ)の閉塞制御

形式

ANSI C,C++の形式

#include <eemch.h>
int ee_mch_otqbkctl(char * group, char *service, EELONG mode,
                    EELONG flags)

機能

指定したサービスグループ下のサービス名に対応する出力キュー(OTQ)の閉塞/閉塞解除,またはサービスグループ下のすべてのサービスに対応する出力キューの閉塞/閉塞解除を行います。

UAPで値を設定する引数

●group

サービスグループ名を,31バイト以内のアスキー文字列で設定します。文字列の最後にはNULL文字を設定してください。このNULL文字は文字列の長さに数えません。

●service

サービス名を,31バイト以内のアスキー文字列で設定します。文字列の最後にはNULL文字を設定してください。このNULL文字は文字列の長さに数えません。

また,すべてのサービスを対象にしたい場合,サービス名を設定しないでください(先頭をNULL文字にしてください)。

サービス名を設定しない場合は,サービスグループレベルの出力キューの閉塞/閉塞解除,サービス名を設定した場合は,サービスレベルの出力キューの閉塞/閉塞解除となります。

●mode

閉塞か閉塞解除を設定します。

EEMCH_OTQBKSET

出力キューを閉塞します。

出力キューの状態がすでに自動閉塞中の場合,関数による閉塞中の状態に変わります。

EEMCH_OTQBKRST

出力キューの閉塞を解除します。

サービスグループレベルの場合,通信を行って送信先サービスグループの起動状態を確認します。

●flags

EENOFLAGSを設定します。

リターン値

リターン値

意味

EE_OK

正常に終了しました。

EECOMER_CNDBPP

オフラインバッチプロセスから発行しているため,この機能は使用できません。

EECOMER_CNDUOC

UOCから発行しているため,この機能は使用できません。

EECOMER_ENVIRON

TP1/EEの環境下にありません。

EEMCHER_ARGUMENT

引数に設定した値が間違っています。

EEMCHER_CONDITION

発行条件が不正です。

EEMCHER_NO_SUCH_SERVICE

serviceに設定したサービス名は,定義されていません。

EEMCHER_NO_SUCH_SERVICE_GROUP

groupに設定したサービスグループ名は,定義されていません。

EEMCHER_SERVICE_GROUP_DCT

出力キューを閉塞解除できる状態ではありません。

EEMCHER_SYSERR

システムエラーが起こりました。

EEMCHER_TIMING

この関数を発行できる状態ではありません。出力キューの閉塞処理中,または出力キューの閉塞解除処理です。

注意事項

  1. サービスグループレベルで出力キューが閉塞中(出力キューの自動閉塞中含む)の場合,サービスレベルの出力キューの閉塞解除はできません。EEMCHER_CONDITIONのリターン値でエラーリターンします。

  2. サービスグループレベルの出力キューの自動閉塞中にサービスグループレベルの出力キューの閉塞要求を行った場合,出力キューの閉塞監視を終了します。ただし,サービスレベルの出力キューの閉塞要求を行った場合は,出力キューの閉塞監視は続行します。

  3. サービスグループレベルの出力キューの自動閉塞中にサービスグループレベルの出力キューの閉塞解除要求を行った場合,出力キューの閉塞監視を終了します。