MQ レコード・パーツは、EGL ソース・ファイル内で宣言できます。このファイルの概要については、『EGL ソース形式』を参照してください。
EGL と MQSeries® の対話方法については、『MQSeries サポート』を参照してください。
MQ レコード・パーツの例を次に示します。
Record myMQRecordPart type mqRecord
{
queueName = "myQueue"
}
10 myField01 CHAR(2);
10 myField02 CHAR(78);
end
MQ レコード・パーツの構文図は、以下のとおりです。
- Record recordPartName mqRecord
- パーツをタイプ mqRecord として識別し、名前を指定します。命名の規則については、『命名規則』を参照してください。
- queueName = "msgQueueName"
- メッセージ・キュー名を指定します。通常これは、論理キューの名前であり、物理キューの名前ではありません。入力の形式については、『MQ レコードのプロパティー』を参照してください。
- getOptionsRecord = "getRecordName"
- get オプション・レコードとして使用されるプログラム変数 (基本レコード) を識別します。詳細については、『MQ レコード用のオプション・レコード』を参照してください。このプロパティー
は、以前の getOptions プロパティーです。
- putOptionsRecord = "putRecordName"
- put オプション・レコードとして使用されるプログラム変数 (基本レコード) を識別します。詳細については、『MQ レコード用のオプション・レコード』を参照してください。このプロパティー
は、以前の putOptions プロパティーです。
- openOptionsRecord = "openRecordName"
- open オプション・レコードとして使用されるプログラム変数 (基本レコード) を識別します。詳細については、『MQ レコード用のオプション・レコード』を参照してください。このプロパティー
は、以前の openOptions プロパティーです。
- msgDescriptorRecord = "msgDRecordName"
- メッセージ記述子として使用されるプログラム変数 (基本レコード) を識別します。詳細については、『MQ レコード用のオプション・レコード』を参照してください。このプロパティーは
、以前の msgDescriptor プロパティーです。
- queueDescriptorRecord = "QDRecordName"
- キュー記述子として使用されるプログラム変数 (基本レコード) を識別します。詳細については、『MQ レコード用のオプション・レコード』を参照してください。このプロパティー
は、以前の queueDescriptor プロパティーです。
- includeMsgInTransaction = yes、includeMsgInTransaction
= no
- このプロパティーを yes (デフォルト) に設定すると、レコード固有のメッセージがそれぞれトランザクションに組み込まれ、自分のコードでそのトランザクションをコミットしたり、ロールバックしたりできるようになります。選択の意味については、『MQSeries のサポート』を参照してください。
- openQueueExclusive = no、openQueueExclusive
= yes
- このプロパティーを yes に設定すると、コードは、メッセージ・キューから排他的に読み取りを行うことができます。このプロパティーを yes に設定しないと、他のプログラムもこのメッセージ・キューから読み取りを行うことができます。デフォルトは no です。このプロパティーは、MQSeries のオプション MQOO_INPUT_EXCLUSIVE に相当します。
- lengthItem = "lengthField"
- 長さフィールド。詳細については、『MQ レコードのプロパティー』を参照してください。
- numElementsItem = "numElementsField"
- エレメント・フィールドの数。詳細については、『MQ レコードのプロパティー』を参照してください。
- structureField
- 構造体フィールド。詳細については、『EGL ソース形式の構造体項目』を参照してください。