CBLEEMCH('CMTSNDGT')【XTC限定】
形式
PROCEDURE DIVISIONの指定
CALL 'CBLEEMCH' USING 一意名1 一意名2 一意名3
DATA DIVISIONの指定
01 一意名1. 02 データ名A PIC X(8) VALUE 'CMTSNDGT'. 02 データ名B PIC X(5). 02 FILLER PIC X(3). 02 データ名Z PIC S9(9) COMP VALUE ZERO. 01 一意名2. 02 データ名C PIC 9(9) COMP. 02 データ名D PIC 9(9) COMP. 02 FILLER PIC X(3). 01 一意名3. 02 データ名E PIC 9(9) COMP. 02 データ名F PIC X(32). 02 データ名G PIC 9(9) COMP. 02 データ名H PIC X(32). 02 データ名I PIC X(1). 02 FILLER PIC X(3). 02 データ名J PIC 9(9) COMP. 02 FILLER PIC X(4). 02 データ名K PIC 9(9) COMP. 02 データ名L ADDRESS. 02 FILLER PIC X(160).
機能
メッセージ送信に失敗(未送信も含む)したトランザクション同期の一方送信メッセージとトランザクション非同期の一方送信メッセージのメッセージ情報を取得します。ステータスコードが00000(次のメッセージ情報なし)になるまで,この関数を連続して呼び出すことによって,同一トランザクションで一方送信メッセージの送信要求を行ったすべてのメッセージ情報を取得できます。ステータスコードが00000の状態でこの関数を呼び出した場合は,最初からメッセージ情報を取得します。
一方送信メッセージのメッセージ情報は,ERRTRNRのタイミングで取得できます。
UAPで値を設定するデータ領域
●データ名A
サービスの要求を示す要求コードを「VALUE 'CMTSNDGT'」と設定します。
●データ名C
参照したい一方送信メッセージの要求種別を設定します。
- 0
-
CBLEEMCH('CMTSND ')要求
- 1
-
CBLEEMCH('CMTSNDSY')要求
●データ名Z
0を設定します。
TP1/EEから値が返されるデータ領域
●データ名B
ステータスコードが,5けたの数字で返されます。
●データ名D
参照できるメッセージ情報の件数が返されます。0の場合は,データ名E,データ名F,データ名G,データ名H,データ名I,データ名J,データ名K,およびデータ名Lの内容は参照できません。
●データ名E
送信先サービスグループ名の長さが返されます。
●データ名F
送信先サービスグループ名が返されます。
●データ名G
送信先サービス名の長さが返されます。
●データ名H
送信先サービス名が返されます。
●データ名I
出力キュー(OTQ)の自動閉塞の有無が次のコードで返されます。
- 0
-
出力キューの自動閉塞なし
- 1
-
サービスグループレベルの出力キューの自動閉塞あり
- 2
-
サービスレベルの出力キューの自動閉塞あり
●データ名J
送信結果が次のコードで返されます。
- 0
-
送信正常
- 1
-
送信障害(パケットサイズ不正などのRPC関連定義の不正)
- 2
-
送信障害(リソース不足)
- 4
-
送信障害(送信先受信不可状態)
- 3
-
送信障害(上記以外)
- 16
-
送達確認待ちタイムアウト
- 17
-
送達確認待ち受信障害
- 32
-
送達確認エラーメッセージ受信(リソース不足)
- 33
-
送達確認エラーメッセージ受信(CL同期エラー)
- 34
-
送達確認エラーメッセージ受信(送信先サービス閉塞),または自プロセスのサービス閉塞
- 64
-
送達確認エラーメッセージ受信(送信先サービスグループ名の不正)
- 65
-
送達確認エラーメッセージ受信(送信先サービス名の不正)
- 66
-
送達確認エラーメッセージ受信(メッセージ送信形態の不正/オプションの不正)
- 128
-
送達確認エラーメッセージ受信(上記以外)
- 256
-
出力キューの閉塞中
- 512
-
処理キューの登録失敗
- 65536
-
未送信
●データ名K
送信メッセージのサイズが返されます。
●データ名L
送信メッセージのアドレスが返されます。
ステータスコード
ここで示すステータスコードは,TP1/EEが返す値です。サービスプログラムが返す値ではありません。
ステータスコード |
意味 |
---|---|
00000 |
正常に終了しました(次のメッセージ情報なし)。 |
00001 |
TP1/EEの環境下にありません。 |
00003 |
正常に終了しました(次のメッセージ情報あり)。 |
00004 |
UOCから発行しているため,この機能は使用できません。 |
00005 |
オフラインバッチプロセスから発行しているため,この機能は使用できません。 |
08001 |
データ名に設定した値が間違っています。要求コード(データ名A)が間違っている場合も含みます。 |
08030 |
発行条件が不正です。 |
08050 |
メモリが不足しました。 |
CBLEEMCH('CMTSNDGT')がエラーになる場合
CBLEEMCH('CMTSNDGT')がエラーリターンする場合について説明します。
メモリ関連定義のsystem_work_sizeオペランドで指定したシステムワーク領域が不足した場合
CBLEEMCH('CMTSNDGT')は「08050」でエラーリターンします。