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です。
● Parameter(MQLONG型) 引数識別子
TP1/Message Queueでは使用されません。
構造体に含まれる値の引数を示します。このフィールドに現れる値は,MQCFH構造体のCommandフィールドの値に依存します。
このフィールドの初期値は0です。
● String(MQCHAR × StringLength) 文字列の値
指定された文字列が引数の標準の長さより短い場合,省略された文字は空白に仮定します。指定された文字列が引数の標準の長さより長い場合,標準の長さを超える文字は空白でなければなりません。
- 注意事項
-
文字列のヌル文字は通常のデータとして扱われ,文字列の分離記号としては扱われません。
このフィールドの初期値は,C言語ではヌル文字列です。
C言語の場合,このフィールドは1要素の配列として定義されます。構造体の格納域は動的に割り付けられる必要があります。また,ポインタはその中のフィールドを指すために使用される必要があります。
COBOL言語の場合,構造体の宣言にこのフィールドが入っていません。MQCFST構造体をより大きい構造体に含め,MQCFST構造体のあとに必要な長さのStringフィールドを宣言する必要があります。
● StringLength(MQLONG型) 文字列長
Stringフィールドにあるデータのバイトの長さを示します。0以上でなければなりません。この長さは4の倍数である必要はありません。
このフィールドの初期値は0です。