Hitachi

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


ee_dbq_conctl

〈このページの構成〉

名称

DBキューの接続制御

形式

ANSI C,C++の形式

#include <eedbq.h>
int ee_dbq_conctl(EEULONG conctl_flg, char *dbque_name, 
                  char *service_name, EELONG flags)

機能

DBキューとDBキューサービスとを接続,および接続解除します。

UAPで値を設定する引数

●conctl_flg

次のフラグを設定します。

EEDBQ_CONCTL_CONNECT

DBキューとDBキューサービスとを接続します。

EEDBQ_CONCTL_RELEASE

DBキューとDBキューサービスとの接続を解除します。

●dbque_name

DBキュー名を27バイト以内のアスキー文字列で設定します。文字列の末尾にはNULL文字を付けてください。このNULL文字は文字列の長さに数えません。

●service_name

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

●flags

EENOFLAGSを設定します。

リターン値

リターン値

意味

EE_OK

正常に終了しました。

EECOMER_CNDBPP

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

EECOMER_CNDUOC

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

EECOMER_ENVIRON

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

EEDBQER_ARGUMENT

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

EEDBQER_CONDITION

関数の呼び出し条件が不正です。

EEDBQER_CONNECT_LIMIT

該当するDBキューサービスで使用する最大DBキュー数を超えるため接続できません。

EEDBQER_GROUP

要求のあったDBキューサービスの属するDBキューサービスグループとDBキューの属するDBキューグループはDBキュー機能関連定義で関連づけられていません。

EEDBQER_NO_DBQUE

引数に設定したDBキュー名は存在しません。

EEDBQER_NO_LIBRARY

DBキュー機能のライブラリがリンケージされていません。

EEDBQER_NO_OPTION

DBキュー機能は使用できません。

EEDBQER_NO_SERVICE

引数に設定したDBキューサービス名は存在しません。

EEDBQER_NOT_CONNECT

要求のあったDBキューとDBキューサービスは接続されていません。

EEDBQER_NOT_UAPQUE

AP間通信機能を使用するDBキューではありません。

EEDBQER_OTHER_CONNECT

すでに,別DBキューサービスと接続済みのため接続できません。

EEDBQER_QUE_TYPE

設定されたDBキューのタイプは機能対象外です。

  • 相手読み出しDBキュー

EEDBQER_SERVICE_STOP

DBキューサービスが永久閉塞中(エントリポイントなし)です。

EEDBQER_STOP

DBキューが使用できない状態です。

EEDBQER_TIMING

このAPI関数を呼び出せる状態ではありません。

  • 該当するDBキューの読み出し処理中に接続解除,接続を続けて行えません。

EEDBQER_UNRESOLVABLE

そのほかのエラーが発生しました。

注意事項

  1. DBキュー機能関連定義のdbqgrpdef定義コマンドに-cオプションを指定していない相手システムの読み出しDBキューとの接続,および接続解除はできません。

  2. 該当するDBキューの読み出し処理中に接続解除と接続とを続けて実行できません。

  3. 最初のAP起動時には,定義によって任意のDBキューサービスに接続されているか,またはどのDBキューサービスにも接続されていない場合があります。DBキューをほかのDBキューサービスに接続変更する場合は,現在接続されているDBキューサービスを指定して接続を解除してから,変更先のDBキューサービスを指定して接続してください。

  4. 次の場合,ee_dbq_conctl関数はリターン値EE_OKでリターンします。

    • 接続されているDBキューとDBキューサービスに対して接続を要求した場合

    • 接続されていないDBキューとDBキューサービスに対して接続解除を要求した場合