Hitachi

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


CBLEEDBQ('INQUIRE ')

〈このページの構成〉

名称

DBキュー情報の照会

形式

PROCEDURE DIVISIONの指定

CALL 'CBLEEDBQ' USING 一意名1 一意名2

DATA DIVISIONの指定

01 一意名1.
  02 データ名A  PIC X(8) VALUE 'INQUIRE '.
  02 データ名B  PIC X(5).
  02 FILLER    PIC X(3).
  02 データ名C  PIC S9(9) COMP VALUE ZERO.
  02 データ名D  PIC X(28).
01 一意名2.
  02 データ名E  PIC X(32).
  02 データ名F  PIC X(32).
  02 データ名G  PIC X(28).
  02 データ名H  PIC X(32).
  02 データ名I  PIC 9(9) COMP.
  02 データ名J  PIC 9(9) COMP.
  02 データ名K  PIC 9(9) COMP.
  02 データ名L  PIC 9(9) COMP.
  02 データ名M  PIC 9(9) COMP.

機能

DBキューの情報を照会します。ユーザキューアクセス機能を使用するDBキューでは,使用できません。CBLEEDBQ('INQUIRE2')を使用してください。

UAPで値を設定するデータ領域

●データ名A

DBキュー情報の照会を示す要求コードを「VALUE 'INQUIRE△'」と設定します。

●データ名C

要求種別を設定します。

1

DBキュー読み出しサーバ変更機能またはDBキュー書き込み抑止機能を使用する場合に設定します。このフラグを設定すると,最新のDBキュー情報を照会します。

0

DBキュー読み出しサーバ変更機能およびDBキュー書き込み抑止機能以外の機能を使用する場合に設定します。このフラグを設定すると,DBキュー情報を照会します。

●データ名D

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

TP1/EEから値が返されるデータ領域

●データ名E

指定したDBキューに接続しているDBキューサービス名が返されます。接続していない場合はLOW-VALUEを設定します。

●データ名F

指定したDBキューが属するDBキューグループ名が返されます。文字列の最後はLOW-VALUEです。

●データ名G

CBLEEDBQ('INQUIRE ')を呼び出すときにデータ名Dに設定したDBキュー名が返されます。文字列の最後はLOW-VALUEです。

●データ名H※1

指定したDBキューを読み出すサービスグループ名が返されます。文字列の最後はLOW-VALUEです。

DBキュー機能関連定義のdbqgrpdef定義コマンドに-fオプションを指定した場合,または,-kオプションに1を指定した場合で,DBキューからメッセージを読み出すサーバを確認できないとき,およびDBキューからメッセージを読み出すサーバにサービスグループ名がないときは,LOW-VALUEを設定します。

●データ名I

ステータスコード1

DBキューの状態が返されます。※1

0

正常

1

障害による読み出し停止中

2

コマンド,TP1/EEサービス定義,または関数による読み出し停止中

4

DB構成不正またはDBキューの内容矛盾による使用不可

8

リソースマネジャ未接続で使用不可

ステータスコード2

DBキューの状態が返されます。

4096

書き込み抑止※1,※2

このステータスは,ステータスコード1が4または8の場合は無効となります。

●データ名J

DBキューへ最後に書き込んだメッセージの通番が返されます。※3

●データ名K

DBキューから最後に読み出したメッセージの通番が返されます。※3

●データ名L

DBキュー機能関連定義のdbqdef定義コマンドで指定した最大書き込みメッセージ数と同一の値が返されます。

●データ名M

未読み出しメッセージ数が返されます。※3

注※1

データ名Cに1を指定し,かつDBキュー機能関連定義のdbqgrpdef定義コマンドの-kオプションに1を指定した場合,DBキューから情報を読み込みます。

注※2

データ名Cに1を指定し,かつDBキュー機能関連定義のdbqgrpdef定義コマンドの-kオプションに1を指定した場合,ほかの状態と加算した値が返されます。コマンド,TP1/EEサービス定義,または関数による読み出し停止中(2)で,かつ書き込み抑止(4096)の場合,4098になります。

注※3

ステータスコードが次の場合,値は参照できません。

VALUE 'E'

DB構成不正またはDBキューの内容矛盾による使用不可

VALUE 'R'

リソースマネジャ未接続で使用不可

また,該当するDBキューの形態が相手読み出しDBキューの場合,値は返されません。

●データ名B

ステータスコードが,5けたの数字で返されます。

ステータスコード

ステータスコード

意味

00000

正常に終了しました。

00001

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

00004

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

00005

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

05601

データ名に設定した値が間違っています。

05602

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

05603

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

  • 通番の初期化中です。

05604

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

05605

該当するスレッドではリソースマネジャに接続されていません。

05609

リソースマネジャへのアクセス時にエラーが発生しました。

05621

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

05623

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

05627

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

05639

HiRDBの暗黙的ロールバックが発生したため,CBLEETRN('ROLLMARK')を呼び出しました。

注意事項