MRM ドメインの組み込みメッセージへのアクセス

複数パーツ・メッセージを定義してある場合、最低 1 つのメッセージが他のメッセージに組み込まれています。 外部メッセージを表す複合タイプ全体の中で、以下の方法のどれかを使って内部メッセージをモデル化できます。
  • そのタイプ・プロパティーが、構成 プロパティーを Message に設定してある複合タイプに設定されているエレメント (次の例では E_outer1 という名前)
  • 構成 プロパティーを Message に設定してある複合タイプ (次に例では、t_Embedded という名前)
内部メッセージを操作するために書き込む必要のある ESQL は、上記のどのモデルが使用されたかによって異なります。 例えば、次のように定義したと想定します。
  • タイプ・プロパティーを t_Outer に設定してある、外部メッセージ M_outer。
  • タイプ を t_Inner1 に設定してある、内部メッセージ M_inner1。
  • タイプ を t_Inner2 に設定してある、内部メッセージ M_inner2。
  • E_outer1 という名前の最初の子エレメントと t_Embedded という名前の複合タイプとして定義されている 2 番目の子エレメントを持つ、タイプ t_Outer。
  • 構成プロパティーを Message に設定してある、タイプ t_Embedded。
  • E_inner11 という名前の最初の子エレメントを持つ、タイプ t_Inner1。
  • E_inner21 という名前の最初の子エレメントを持つ、タイプ t_Inner2。
  • 構成プロパティーを Message に設定してある、タイプ t_outer1。
  • タイプ・プロパティーを t_outer1 に設定してある、エレメント E_outer1。
E_inner11 の値を設定する場合には、次の ESQL をコーディングします。
SET OutputRoot.MRM.E_outer1.M_inner1.E_inner11 = 'FRED';
E_inner21 の値を設定する場合には、次の ESQL をコーディングします。
SET OutputRoot.MRM.M_inner2.E_inner21 = 'FRED';

メッセージ・ヘッダーを、入力メッセージから出力メッセージにコピーし、入力メッセージ・タイプにパスが入っている場合、パス中の最外部の名前だけが出力メッセージ・タイプにコピーされます。

組み込みメッセージを処理するようにメッセージ・フローを構成する場合には、MQRFH2 ヘッダー (入力メッセージに存在する場合) または入力ノードの「メッセージ・タイプ」プロパティーのいずれかに、メッセージ・タイプの名前ではなくパスを指定できます (例えば、前述のモデル化されたメッセージの場合、単に M_Outer ではなく M_Outer/M_Inner1/M_Inner2 というパスを指定できます)。

CWF または XML のいずれかの物理形式を持つように入力メッセージを指定した場合には、最終パスとして使用するため、メッセージ・タイプ接頭部は MQRFH2 または入力ノードからのメッセージ・タイプの前に連結されます (詳細は、複数パーツ・メッセージを参照してください)。MRM はパス内の最初の項目を最外部のメッセージ・タイプとして使用し、構成プロパティーを Message に設定してある複合タイプを検出しながら、徐々に内部に向け作業を進めていきます。

入力メッセージが物理形式 TDS を持つように指定した場合には、メッセージ・キーを使用する別のプロセスがインプリメントされます。これについては、TDS 形式: 複数パーツ・メッセージで説明しています。

パス連結の詳細については、メッセージ・セットのプロパティーを参照してください。

関連概念
メッセージ・フローの概要
ESQL の概要
メッセージのモデル化
複数パーツ・メッセージ
TDS 形式: 複数パーツ・メッセージ
関連タスク
メッセージ・フローの設計
メッセージ・フローの内容の定義
ESQL ファイルの管理
メッセージ・モデルの開発
関連資料
Compute ノード
Database ノード
Filter ノード
ESQL 参照
SET ステートメント
メッセージ・セットのプロパティー
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
ac17410_