DECLARE ステートメントに EXTERNAL キーワードを指定することにより、ESQL プログラム内で、ユーザー定義プロパティーに変数としてアクセスします。 例えば、ESQL ステートメント DECLARE today EXTERNAL CHARACTER 'monday' は、today という名前のユーザー定義プロパティーを、初期値 monday で定義します。
ユーザー定義プロパティーを使用可能にするには、そのプロパティーを使用するメッセージ・フローを作成する際に、メッセージ・フロー・エディターでプロパティーを定義する必要があります。 メッセージ・フロー・エディターで UDP を定義する際には、値とプロパティー・タイプを定義する必要があります。 値にはデフォルト値が使用される場合がありますが、デフォルト値は UDP のタイプによって異なります。 メッセージ・フロー・エディターで UDP に割り当てた値は、ご使用の ESQL プログラムで UDP に割り当てた値よりも優先されます。
サブフローの UDP を定義することもできます。 ただし、UDP はグローバル・スコープなので、特定のサブフローに限定されるわけではありません。 メッセージ・フローの中でサブフローを再利用する場合に、それらのサブフローに同じ UDP があれば、それらの UDP を別の値に設定することはできません。
UDP を使用するメッセージ・フローをデプロイする前に、ブローカー・アーカイブ・エディターで UDP の値を変更できます。 値が割り当てられていない UDP を含むメッセージ・フローをデプロイしようとすると、デプロイメントは失敗します。 詳しくは、デプロイメント時にユーザー定義プロパティーを使用してメッセージ・フローを構成するを参照してください。
UDP を使用して簡単に構成データを設定し、それをプロパティーのように使うことができます。 ユーザー作成プラグインに対する外部呼び出しや環境ツリーの構文解析は関係しないので、 ツリーからデータを読み取る際の構文解析のコストが除かれます。 UDP の値はデプロイメント時に変数でファイナライズされます。
モジュールまたはスキーマの中でのみ、UDP を宣言することができます。 実行時に UDP を照会、発見、および設定して、メッセージ・フローの動作を動的に変更することができます。 詳しくは、ユーザー定義プロパティーを参照してください。
JavaCompute ノードから UDP にアクセスする方法については、JavaCompute ノードからメッセージ・フローのユーザー定義プロパティーへのアクセスを参照してください。