プロパティー・ツリーへのアクセス

プロパティー・ツリーには独自の相関名 Properties があり、このツリーの内容を参照または設定するすべての ESQL ステートメントではこの名前を使用する必要があります。

プロパティー・ツリーのフィールドには、メッセージの特性を定義する値が含まれています。 例えば、プロパティー・ツリーには、メッセージ・ドメイン用のフィールドがあり、エンコード用のフィールドとメッセージ・データがエンコードされる CCSID 用のフィールドが含まれています。 このツリーのフィールドの完全なリストは、Properties サブツリー内のエレメントのデータ・タイプを参照してください。

適切な ESQL ステートメントを使用して、こうしたフィールドに問い合わせて更新することができます。Compute ノードで新規出力メッセージを作成する場合には、メッセージ・プロパティーの値を設定しなければなりません。

出力メッセージのプロパティーの設定

新規出力メッセージの生成に Compute ノードを使用する場合には、プロパティー・ツリーでそのプロパティーを設定する必要があります。 出力メッセージのプロパティーは、入力メッセージのプロパティーと同じである必要はありません。

例えば、出力 MRM メッセージに出力メッセージ・プロパティーを設定するには、以下のプロパティーを設定してください。

プロパティー
メッセージ・ドメイン MRM
メッセージ・セット メッセージ・セット ID
メッセージ・タイプ メッセージ名¹
メッセージ形式 物理形式名²
注:
  1. 複数パーツ・メッセージを使用している場合、MessageType の使用に関する詳細については、複数パーツ・メッセージ を参照してください。
  2. 物理層に指定する名前は、そこに定義済みの名前と一致する必要があります。 物理層のデフォルトの名前は CWF1XML1、および TDS1 です。

この ESQL プロシージャーは、メッセージ・プロパティーを、呼び出し側のステートメントによって渡される値に設定します。 このタスクは頻繁に実行する必要がありますが、このようなプロシージャーを異なる多数のノードおよびメッセージ・フローで使用することができます。 必要であれば、特定の値を設定する ESQL をコーディングすることができます。

CREATE PROCEDURE setMessageProperties(IN OutputRoot REFERENCE, IN setName char, IN typeName char, IN formatName char) BEGIN
	/****************************************************************************
	* A procedure that sets the message properties
	****************************************************************************/
	set OutputRoot.Properties.MessageSet    = setName;
	set OutputRoot.Properties.MessageType   = typeName;
	set OutputRoot.Properties.MessageFormat = formatName;
END;

出力メッセージ・ドメインを設定するには、メッセージ・プロパティーを設定するか、または必要なドメインを参照する ESQL ステートメントを SET ステートメントの 2 番目の修飾子、パーサー・フィールドにコーディングします。 例えば、ESQL ステートメントがドメインを MRM に設定するとします。

SET OutputRoot.MRM.Field1 = 'field1 data';

この ESQL ステートメントは次のようにドメインを XML に設定します。

SET OutputRoot.XML.Field1 = 'field1 data';

単一のメッセージに対して、複数のドメインを ESQL で指定しないでください。 ただし、PROPAGATE ステートメントを使用していくつかの出力メッセージを生成する場合には、それぞれのメッセージごとに異なるドメインを設定することができます。

プロパティー・ツリー内のエレメントの完全なリストについては、Properties サブツリー内のエレメントのデータ・タイプを参照してください。

特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
ac06015_