SEND - メッセージの送信(データ操作言語)

形式

DATA DIVISION(通信記述項)の指定

CD  通信記述名
  FOR  {OUTPUTI-O
STATUS  KEY  IS  データ名1〕
SYMBOLIC  TERMINAL  IS  データ名2〕
SYNCHRONOUS MODE  IS  {SYNCASYNC|データ名6}〕
SWITCHING MODE IS {NORMALPRIOR|データ名7}〕
DETAIL MODE IS データ名10〕.

PROCEDURE DIVISION(通信文)の指定

SEND  通信記述名  FROM  一意名1

機能

次に示すCALLインタフェースの機能を実現します。ただし,扱えるのは単一セグメントだけです。

通信記述項に設定する項目

●FOR 句

次のどちらかの値を指定します。

OUTPUT
一方送信メッセージの送信
I-O
同期型メッセージの送信
I-Oを指定した場合,SYNCHRONOUS MODE句で同期型メッセージの送信(SYNC)を必ず指定してください。指定しなかった場合,SEND文はステータスコード(72000)を返します。

●STATUS KEY 句

ステータスコードを受け取りたい場合に指定します。省略した場合は,ステータスコードを受け取りません。

●SYMBOLIC TERMINAL 句

論理端末名称を設定したデータ項目を指定します。

●SYNCHRONOUS MODE 句

非同期型でメッセージを送信するか,同期型でメッセージを送信するかを指定します。

SYNC
同期型メッセージの送信
同期型メッセージ送信のとき指定します。
ASYNC
非同期型のメッセージ送信
一方送信メッセージの送信のとき指定します。
データ名6
次の値を設定したデータ項目
'0':一方送信メッセージの送信
'1':同期型メッセージ送信

省略した場合は,一方送信メッセージの送信(ASYNC)が設定されます。

●SWITCHING MODE 句

一方送信メッセージの場合に,一般か優先かを指定します。

NORMAL
一般の一方送信メッセージ
PRIOR
優先の一方送信メッセージ
データ名7
次の値を設定したデータ項目
'0'または'△':一般の一方送信メッセージ
'1':優先の一方送信メッセージ

省略した場合は,一般の一方送信メッセージ(NORMAL)が設定されます。

●DETAIL MODE 句

一方送信メッセージの場合に,出力通番を付けるかどうかを指定します。

データ名10
次の値を設定したデータ項目
'0'または'△':出力通番を付けます。
'1':出力通番を付けません。

省略した場合は,出力通番を付けません。

通信文に指定する項目

●一意名1

セグメントを送信するデータ項目を指定します。一つのセグメントで制御ヘッダの24バイトを含めて32000バイトまで送信できます。一意名1の形式を次に示します。

[図データ]

相手IPアドレスと相手ポート番号の設定方法については,「2.1.3 通信相手のアドレスの指定」を参照してください。

ステータスコード

ステータスコード意味
00000正常に終了しました。
71002メッセージキューへの出力処理中に障害が発生しました。
メッセージキューが閉塞されています。
メッセージキューが割り当てられていません。
一意名1のLに32000バイトを超える値を設定しています。
MCFが終了処理中のため,メッセージの送信を受け付けられません。
71003メッセージキューが満杯です。
71004メッセージを格納するバッファをメモリ上に確保できませんでした。
71108メッセージを送信しようとしましたが,送信先の管理テーブルが確保できませんでした。
プロセスのローカルメモリが不足しています。
72000FOR句にI-Oを設定していますが,SYNCHRONOUS MODE句でSYNCを設定していません。
<MHPの実行でリターンした場合>
先頭セグメントを受信するRECEIVE文を実行する前に,SEND文を実行しています。
<SPPの実行でリターンした場合>
トランザクションでないSPPの処理から,SEND文を実行しています。
72001SYMBOLIC TERMINAL句に設定した論理端末名称が間違っています。
SEND文を実行できない論理端末を設定しています。
72017DETAIL MODE句に設定した値が間違っています。
72018SWITCHING MODE句に設定した値が間違っています。
72020SYNCHRONOUS MODE句に設定した値が間違っています。
72024FOR句に設定した値が間違っています。
72041一意名1のLに4以下,またはマイナスの値を設定しています。
73001出力先の論理端末で障害が発生しました。
73010出力メッセージ編集UOCで障害が発生しました。
メッセージの読み込み時に障害が発生しました。
73011一意名1のLに5以上28以下の値を設定しています。
73019システムに対する送信時に障害が発生しました。
73020出力先の論理端末は閉塞しています。
上記以外プログラムの破壊などによる,予期しないエラーが発生しました。

注意事項