MQMessage クラス
このクラスは、WebSphere® MQ メッセージを表します。WebSphere MQ メッセージ記述子 (MQMD) をカプセル化するためのプロパティーが含まれ、アプリケーション定義のメッセージ・データを保持するためのバッファーが提供されます。
このクラスには、ActiveX アプリケーションから MQMessage オブジェクトにデータをコピーする Write メソッドが組み込まれています。同様に、このクラスには、MQMessage オブジェクトから ActiveX アプリケーションにデータをコピーする Read メソッドが組み込まれています。このクラスは、バッファーのメモリーの自動割り振り、および自動割り振り解除を管理します。 バッファーは書き込まれるデータのサイズに合わせて拡張するので、 MQMessage オブジェクトを作成する場合に、 アプリケーションがバッファーのサイズを宣言する必要はありません。
バッファー・サイズがそのキューの MaximumMessageLength プロパティーを超える場合、メッセージを WebSphere MQ キューに置くことはできません。
バッファーを構成した後、MQMessage オブジェクトは、MQQueue.Put メソッドを使用して WebSphere MQ キューに書き込みを行うことができます。 このメソッドは、このオブジェクトの MQMD およびメッセージ・データの部分のコピーを受け取り、そのコピーをキューに配置します。したがって、このアプリケーションは、PUT を実行した後に WebSphere MQ キューにあるメッセージに影響を与えずに、MQMessage オブジェクトを変更または削除することができます。WebSphere MQ キュー上のメッセージをコピーする場合、 キュー・マネージャーが MQMD のいくつかのフィールドを調整することができます。
MQQueue.Get メソッドを使用して、着信メッセージを MQMessage オブジェクトに読み取ることができます。これにより、既に MQMessage オブジェクト内に存在している可能性のある MQMD またはメッセージ・データは、着信メッセージからの値で置き換えられます。 このメソッドは、MQMessage オブジェクトのデータ・バッファーのサイズを、着信メッセージ・データのサイズに一致するよう調整します。
包含
メッセージは、MQSession クラスにより含まれます。
作成
New は、MQMessage オブジェクトを作成します。メッセージ記述子プロパティーは最初デフォルト値に設定され、メッセージ・データのバッファーは空になります。
構文
Dim msg As New MQMessage or Set msg = New MQMessage
プロパティー
- CompletionCode プロパティー
- DataLength プロパティー
- DataOffset プロパティー
- MessageLength プロパティー
- ReasonCode プロパティー
- ReasonName プロパティー
- AccountingToken プロパティー
- AccountingTokenHex プロパティー
- ApplicationIdData プロパティー
- ApplicationOriginData プロパティー
- BackoutCount プロパティー
- CharacterSet プロパティー
- CorrelationId プロパティー
- CorrelationIdHex プロパティー
- Encoding プロパティー
- Expiry プロパティー
- Feedback プロパティー
- Format プロパティー
- GroupId プロパティー
- GroupIdHex プロパティー
- MessageData プロパティー
- MessageFlags プロパティー
- MessageId プロパティー
- MessageIdHex プロパティー
- MessageSequenceNumber プロパティー
- MessageType プロパティー
- Offset プロパティー
- OriginalLength プロパティー
- Persistence プロパティー
- Priority プロパティー
- PutApplicationName プロパティー
- PutApplicationType プロパティー
- PutDateTime プロパティー
- ReplyToQueueManagerName プロパティー
- ReplyToQueueName プロパティー
- Report プロパティー
- TotalMessageLength プロパティー
- UserId プロパティー
メソッド
- ClearErrorCodes メソッド
- ClearMessage メソッド
- Read メソッド
- ReadBoolean メソッド
- ReadByte メソッド
- ReadDecimal2 メソッド
- ReadDecimal4 メソッド
- ReadDouble メソッド
- ReadDouble4 メソッド
- ReadFloat メソッド
- ReadInt2 メソッド
- ReadInt4 メソッド
- ReadLong メソッド
- ReadNullTerminatedString メソッド
- ReadShort メソッド
- ReadString メソッド
- ReadUInt2 メソッド
- ReadUnsignedByte メソッド
- ReadUTF メソッド
- ResizeBuffer メソッド
- Write メソッド
- WriteBoolean メソッド
- WriteByte メソッド
- WriteDecimal2 メソッド
- WriteDecimal4 メソッド
- WriteDouble メソッド
- WriteDouble4 メソッド
- WriteFloat メソッド
- WriteInt2 メソッド
- WriteInt4 メソッド
- WriteLong メソッド
- WriteNullTerminatedString メソッド
- WriteShort メソッド
- WriteString メソッド
- WriteUInt2 メソッド
- WriteUnsignedByte メソッド
- WriteUTF メソッド
プロパティー・アクセス
いつでもすべてのプロパティーを読み取ることができます。
読み取り / 書き込み可能である DataOffset を除き、制御プロパティーは読み取り専用です。 Message Descriptor プロパティーは、読み取り専用である BackoutCount および TotalMessageLength を除き、すべて読み取り / 書き込み可能です。
しかし、メッセージが WebSphere MQ キューに書き込まれたときに、 一部の MQMD プロパティーはキュー・マネージャーによって変更されることがあります。それらのプロパティーの変更方法について詳しくは、MQMD のフィールドを参照してください。
データ変換
CharacterSet プロパティーをキュー・マネージャーのコード化文字セット識別子 (MQCCSI_Q_MGR) に設定し、それをストリングに渡すと、 2 進データを WebSphere MQ メッセージに渡すことができます。 chr$ 関数を使用して、文字以外のデータをストリングに設定することができます。
Read メソッドおよび Write メソッドはデータ変換を実行します。 これらのメソッドは、メッセージ記述子から Encoding プロパティーおよび CharacterSet プロパティーにより定義されたように、ActiveX 内部形式と WebSphere MQ メッセージ形式とを変換します。 メッセージを書き込む場合は、Write メソッドを実行する前に、Encoding および CharacterSet に、メッセージの受信側の特性に一致する値を設定します。メッセージを読み取る場合、これらの値は着信 MQMD の値から設定されるので、通常このステップは不要です。
これは、MQQueue.Get メソッドにより実行される変換の後で起こる追加のデータ変換ステップです。
資料