ESQL の関数

関数とは、指定されたいくつかの入力値に対して 1 つの値を算出する単一の ESQL 式です。

関数には入力パラメーターを指定できますが、出力パラメーターはありません。 関数は、式が呼び出し元に実装されることから生じる値を戻します。 ESQL 式は、BEGIN END なとりの複合式となることもあります。

ESQL では、式で自由に使用できる事前定義関数が多く備えられています。 また、ユーザー独自の関数も宣言して使用できます。 EVAL ステートメントまたは EVAL 関数で、関数を定義することはできません。

関数を定義する場合、名前を指定する必要があります。 名前には、大文字小文字の区別がありません (つまり、 大文字小文字の任意の組み合わせで名前を使用しても、宣言と一致します)。 これは、スキーマ、定数、変数、およびラベルに対して宣言する名前とは対照的です。 それらの場合には、大文字小文字の区別を付けて扱われ、 宣言したのと同じに正確に指定する必要があります。

次の ESQL プログラムの断片をご覧ください。

SET Diameter = SQRT(Area / 3.142) * 2;

この例では、関数 SQRT (平方根) に、続く括弧の中に示されている値 (それ自体が除算という 1 つの式の結果) が与えられており、その結果がさらに式 (乗算) の中で使用されます。 その戻り値は、変数 Diameter に割り当てられます。 ESQL のすべての関数については、ESQL の関数をご覧ください。

さらに、ESQL 式は他の (同じまたは異なる従属プロジェクト内の ESQL ファイルで定義された) ブローカー・スキーマ内の関数を参照できます。 この手法を使用したい場合、関数を完全修飾するか、または修飾子を設定する PATH ステートメントを組み込んでください。 PATH ステートメントは同じ ESQL ファイル内でコーディングする必要がありますが、MODULE 内でコーディングすることはできません。

関連概念
メッセージ・フロー
マッピング

関連タスク
メッセージ・フロー・アプリケーションの開発
ESQL の開発

関連資料
組み込みノード
ESQL
ESQL の関数
CREATE FUNCTION ステートメント
CREATE MODULE ステートメント
CREATE PROCEDURE ステートメント