Hitachi

OpenTP1 Version 7 OpenTP1 メッセージキューイング機能 TP1/Message Queue プログラム作成リファレンス


MQCFST構造体 − PCFストリング引数

MQCFST構造体は,次のフィールドから構成されます。

フィールド(データタイプ)

内容

初期値

Type(MQLONG型)

構造体タイプ

MQCFT_STRING

StrucLength(MQLONG型)

構造体長

MQCFST_STRUC_LENGTH_FIXED

Parameter(MQLONG型)

引数識別子

0

CodedCharSetId(MQLONG型)

文字セット識別子

MQCCSI_DEFAULT

StringLength(MQLONG型)

文字列長

0

String(MQCHAR×StringLength)

文字列の値

ヌル文字列

〈このページの構成〉

概要

MQCFST構造体には,命令または命令の応答であるメッセージに文字列引数を記述します。どちらの場合もメッセージ記述子のフォーマット名称は,MQFMT_ADMINです。

MQCFST構造体は,イベントメッセージでも使用します。この場合,メッセージ記述子のFormatフィールドはMQFMT_EVENTです。

MQCFST構造体は,ユーザ定義のメッセージデータにも使用できます。この場合,メッセージ記述子のFormatフィールドはMQFMT_PCFです。なお,この場合は,構造体の中にある一部のフィールドは意味を持たなくなります。大部分のフィールドには提供されている初期値を使用できますが,StrucLengthフィールド,StringLengthフィールド,およびStringフィールドにはアプリケーション側でデータに適した値を設定する必要があります。

構造体は可変長の文字列(Stringフィールド)で終了します。

フィールド

構造体を構成するフィールドについて,アルファベット順に説明します。

● CodedCharSetId(MQLONG型) 文字セット識別子

Stringフィールドのデータの文字セット識別子を指定します。

次の値を取ります。

MQCCSI_DEFAULT

デフォルトの文字セット識別子

文字データはメッセージ記述子MQMD構造体のCodedCharSetIdフィールドによって定義された文字セットです。

このフィールドの初期値はMQCCSI_DEFAULTです。

● Parameter(MQLONG型) 引数識別子

TP1/Message Queueでは使用されません。

構造体に含まれる値の引数を示します。このフィールドに現れる値は,MQCFH構造体のCommandフィールドの値に依存します。

このフィールドの初期値は0です。

● String(MQCHAR × StringLength) 文字列の値

指定された文字列が引数の標準の長さより短い場合,省略された文字は空白に仮定します。指定された文字列が引数の標準の長さより長い場合,標準の長さを超える文字は空白でなければなりません。

注意事項

文字列のヌル文字は通常のデータとして扱われ,文字列の分離記号としては扱われません。

このフィールドの初期値は,C言語ではヌル文字列です。

C言語の場合,このフィールドは1要素の配列として定義されます。構造体の格納域は動的に割り付けられる必要があります。また,ポインタはその中のフィールドを指すために使用される必要があります。

COBOL言語の場合,構造体の宣言にこのフィールドが入っていません。MQCFST構造体をより大きい構造体に含め,MQCFST構造体のあとに必要な長さのStringフィールドを宣言する必要があります。

● StringLength(MQLONG型) 文字列長

Stringフィールドにあるデータのバイトの長さを示します。0以上でなければなりません。この長さは4の倍数である必要はありません。

このフィールドの初期値は0です。

● StrucLength(MQLONG型) 構造体長

構造体の最後(Stringフィールド)の可変長文字列を含む,MQCFST構造体のバイト長です。長さは4の倍数でなければなりません。また,文字列を含むのに十分でなければなりません。

文字列の最終とStrucLengthフィールドで定義される長さ間のバイトは意味を持ちません。

次の定数は構造体の固定部分の長さを表し,Stringフィールドを除いた長さです。

MQCFST_STRUC_LENGTH_FIXED

命令フォーマットの文字列引数構造体の固定部分の長さ

このフィールドの初期値はMQCFST_STRUC_LENGTH_FIXEDです。

● Type(MQLONG型) 構造体タイプ

構造体は文字列引数を表すMQCFST構造体であることを示しています。

次の値を取ります。

MQCFT_STRING

文字列を定義する構造体

このフィールドの初期値はMQCFT_STRINGです。