SEND - メッセージの送信(データ操作言語)
形式1(セグメントの内容を設定して送信する場合,または回線接続要求を送信する場合)
DATA DIVISION(通信記述項)の指定
CD 通信記述名
FOR {OUTPUT | I-O}
〔STATUS KEY IS データ名1〕
〔SYMBOLIC TERMINAL IS データ名2〕
〔SYNCHRONOUS MODE IS {SYNC | ASYNC | データ名6}〕
〔SWITCHING MODE IS {NORMAL | PRIOR | データ名7}〕
〔DETAIL MODE IS データ名10〕
〔WAITING TIME IS データ名11〕.
PROCEDURE DIVISION(通信文)の指定
形式2(セグメントの内容を設定しないで,メッセージの送信の終了だけ連絡する場合)
DATA DIVISION(通信記述項)の指定
CD 通信記述名
FOR {OUTPUT | I-O}
〔STATUS KEY IS データ名1〕
〔SYMBOLIC TERMINAL IS データ名2〕
〔SWITCHING MODE IS {NORMAL | PRIOR | データ名7}〕.
PROCEDURE DIVISION(通信文)の指定
SEND 通信記述名 WITH EMI.
機能
次に示すCALLインタフェースの機能を実現します。
通信記述項に設定する項目
●FOR句
次のどちらかの値を指定します。
●STATUS KEY句
ステータスコードを受け取りたい場合に指定します。省略した場合は,ステータスコードを受け取りません。
●SYMBOLIC TERMINAL句
論理端末名称を設定したデータ項目を指定します。
●SYNCHRONOUS MODE句
メッセージ送信が同期型か非同期型かを指定します。
指定を省略した場合は,非同期型のメッセージ送信(ASYNC)が設定されます。
●SWITCHING MODE句
一方送信メッセージの場合に,一般か優先かを指定します。
省略した場合は,一般の一方送信メッセージ(NORMAL)が設定されます。
●DETAIL MODE句
一方送信メッセージの場合に,出力通番を付けるかどうかを指定します。
省略した場合は,出力通番を付けません。
●WAITING TIME句
この句の指定は無効です。0を指定しておいてください。また,MCFマネジャ定義のUAP共通定義で同期送信監視時間を指定しても,時間監視をしません。
通信文に指定する項目
●一意名1
セグメントを送信するデータ項目を指定します。送信できるセグメントの最大長は,通信管理が送信する最大セグメント長にテキスト形態の4バイトを加えた値です。一意名1の形式を次に示します。
テキスト形態の次に続く領域には,次に示す内容を設定します。
また,MCFで使用する領域の24ビット目に,送信完了通知イベントまたは送信障害通知イベントを通知させるかどうかを指定してください。
一意名1のMCFで使用する領域とビットの設定位置の関係を次に示します。
●WITH句
メッセージの最終セグメントを送信するかどうかを指定します。非同期型のメッセージ送信(一方送信メッセージ)または回線接続要求の送信の場合に指定します。
省略した場合は,EMI(最終セグメント,単一セグメント,または回線接続要求の送信)が設定されます。
ステータスコード
ステータスコード | 意味 |
---|---|
00000 | 正常に終了しました。 |
71002 | メッセージキューへの出力処理中に障害が発生しました。 |
メッセージキューが閉塞されています。 | |
メッセージキューが割り当てられていません。 | |
一意名1のLに32000バイトを超える値を設定しています。 | |
MCFが終了処理中のため,メッセージの送信を受け付けられません。 | |
71003 | メッセージキューが満杯です。 |
71004 | メッセージを格納するバッファをメモリ上に確保できませんでした。 |
71108 | メッセージを送信しようとしましたが,送信先の管理テーブルが確保できませんでした。 |
プロセスのローカルメモリが不足しています。 | |
72000 | <MHPの実行でリターンした場合>
|
<SPPの実行でリターンした場合>
| |
72001 | SYMBOLIC TERMINAL句に設定した論理端末名称が間違っています。 |
SEND文を実行できない論理端末を設定しています。 | |
72005 | 先頭セグメントまたは中間セグメント送信時,一意名1のLに4以下の値を設定しています。 |
72008 | 応答メッセージの最終セグメントを送信するSEND文を実行したあとに,再び応答メッセージを送信するSEND文を実行しています。 |
SEND文を実行して応答型のアプリケーションを起動させたあとに,応答メッセージを送信するSEND文を実行しています。 | |
72011 | MAP NAME句は設定できません。 |
72013 | 一意名3のLの指定値を超えるセグメントを受信しました。一意名3のLの指定値を超えた部分は切り捨てられました。 |
72017 | DETAIL MODE句に設定した値が間違っています。 |
72018 | SWITCHING MODE句に設定した値が間違っています。 |
72020 | SYNCHRONOUS MODE句に設定した値が間違っています。 |
72024 | FOR句に設定した値が間違っています。 |
72026 | WITH句に設定した値が間違っています。 |
72036 | 一意名3のLの指定値が不足しています。5バイト以上の領域を確保してください。 |
72037 | BEFORE句に設定した値が間違っています。 |
72041 | 単一セグメント送信時,一意名1のLに4以下の値を設定しています。 |
73001 | 出力先の論理端末で障害が発生しました。 |
73002 | MCF通信サービスで障害が発生しました。 |
73003 | 同期送信要求(メッセージ)時,メッセージ出力先論理端末から,メッセージ受信要求が発生しました。 |
73008 | 論理端末が閉塞中,またはMCFが終了処理中に,UAPからSEND文が呼び出されました。 |
73010 | 入力,または出力メッセージ編集UOCで障害が発生しました。 |
メッセージ編集エラーが発生しました。 | |
メッセージの読み込み時に障害が発生しました。 | |
73015 | メッセージ出力先の論理端末は,ほかのUAPで仕掛り中です。 |
メッセージ出力先の論理端末は,該当するUAPと仕掛り中ではありません。 | |
73018 | 同期型のメッセージ送信を発行したときに,データ名11に設定した監視時間が間違っています。 |
73020 | 出力先の論理端末は停止しています。 |
77901 | 同期送信要求(メッセージ)時,メッセージ出力先論理端末から,EOTを受信しました。 |
77902 | 同期送信要求(EOT)時,メッセージ出力先論理端末から,EOTを受信しました。 |
77903 | 同期送信要求(メッセージ)時,メッセージ出力先論理端末からのRVIを受理しました。メッセージの送信は正常に終了しました。 |
上記以外 | プログラムの破壊などによる,予期しないエラーが発生しました。 |