Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 テスタ・UAPトレース使用の手引


11.2.4 MCF受信メッセージファイル

1論理メッセージは,一つまたは複数のセグメントで構成されています。1セグメントはセグメント情報の入ったヘッダ部と,メッセージデータであるデータ部で構成されています。

[図データ]

セグメントには,次の五つの種別があります。

なお,セグメントの種別は,ヘッダ部に指定します。

MCF関数(dc_mcf_receive関数,dc_mcf_recvsync関数,またはdc_mcf_sendrecv関数)で,UAPが受け取るメッセージを格納します。一つのファイルには,一つの論理メッセージを作成します。ヘッダセグメントを使用すると,二つのメッセージを連結できます。

〈この項の構成〉

(1) ファイルの構造

● 1論理メッセージ1セグメントのとき

[図データ]

● 1論理メッセージ複数セグメントのとき

[図データ]

● ヘッダセグメントのとき

[図データ]

(2) ファイルの内容

項目

位置

長さ(バイト)

内容

ヘッダ

入出力論理端末名

0

9

MCF関数でやり取りするための論理端末名を指定します(最後のヌル文字を含みます)。

複数セグメントのときは,各セグメントで同じものを指定します。

マップ名称

9

9

マップ名称を指定します(最後のヌル文字を含みます)。複数セグメントのときは,各セグメントで同じものを指定します。

この指定はマップ名称を返す関数でだけ有効です。

予備

18

9

ヌル文字を指定します。

セグメント種別

27

1

次の文字のどれかを指定します。

F:先頭セグメントのとき

M:中間セグメントのとき

L:最終セグメントのとき

O:単セグメントのとき

H:ヘッダセグメントのとき

メッセージ長

28

4

メッセージの長さを指定します(0〜2147483647)。

データ

メッセージ

32

n

セグメントの実体(データ)を,メッセージ長で指定した長さで指定します。

(3) 注意事項

● 1論理メッセージ1セグメントの場合

セグメント種別にFM,およびLを指定した場合には,Oを指定した場合と同様に扱い,エラーとしません。

セグメント種別

ファイルの扱い

F

MCF受信メッセージファイルとして扱います。

M

L

O

H,X

ファイル不正として,ファイル名を問い合わせます。

(凡例)

X:F,M,L,O,およびH以外の指定

● 1論理メッセージ複数セグメントの場合

セグメント種別にLH,およびOを指定したメッセージを受信すると,メッセージ完了と判断して以降のセグメントを無視します。セグメント種別にFを指定した場合とMを指定した場合は,同等に扱います。

セグメント種別

MHPが受信するセグメント

先頭セグメント

中間セグメント

最終セグメント

F

M

L

F,M,L

F

L

M

F,L※1

F

O

L

F,O※2

M

M

L

M,M,L

L

M

F

L※3

O

O

O

O※3

F

L

M

F,L※1

F

M

H

受信しません※4

X

M

L

F

X

L

F

M

X

H

F

L

H※3

H

O

O

H※3

(凡例)

X:F,M,およびL以外の指定

注※1

Mは無視されます。

注※2

Lは無視されます。

注※3

中間セグメント以降は無視されます。

注※4

ファイル不正として,ファイル名を問い合わせます。

● ヘッダセグメントによるファイルの連結の場合

セグメント種別にHを指定した場合にだけ連結します。そのほかのセグメント種別の場合は,連結するファイルの指定は無視します。

セグメント種別(連結の組み合わせ)

ファイルの扱い

H+(Fで始まるファイル)

連結したMCF受信メッセージファイルとして扱います。

H+(Mで始まるファイル)

H+(Lで始まるファイル)

H+(Oで始まるファイル)

H+(Xで始まるファイル)

F,M,L,およびO+(不特定の種別で始まるファイル)

+以降のファイルを無視します。

X+(不特定の種別で始まるファイル)

ファイル不正として,ファイル名を問い合わせます。

(凡例)

X:F,M,L,O,およびH以外の指定

ファイル名には'+',空白,およびタブを使用できません。また,ファイル名として,'ps'または'end'は使用できません。