Formulaコンパイル・エラー

コンパイル・エラーは、Formulaのコンパイル後に「FastFormula」ページに表示されます。エラーが発生すると、コンパイラはコンパイル・プロセスを停止します。エラー・メッセージには、行番号およびエラー・タイプが表示されます。

一般的なコンパイル・エラー

一般的なFormulaコンパイル・エラーをいくつか次に示します。

Formulaコンパイル・エラー

説明

構文エラー

FormulaテキストがFormula言語の文法に違反しています。たとえば、IF文でIFのかわりにIF1を使用した場合。

文の順序が正しくない

ALIASDEFAULTまたはINPUT文は、他の文よりも後に配置します。

ASSIGNMENT文の使用方法が間違っている

次のいずれかの条件が存在する場合に発生します。

  • ASSIGNMENTによって値がデータベース・アイテムに割り当てられています。

  • CHANGE_CONTEXTS文の外部でコンテキストに値が割り当てられています。

  • FormulaがCHANGE_CONTEXTS文の内部で値を非コンテキスト変数に割り当てています。

CHANGE_CONTEXTS文をFormulaで使用できます。

ALIAS文の使用方法が間違っている

ALIAS文はデータベース・アイテムに対してのみ使用できます。

DEFAULT文がない

デフォルト値を指定するデータベース・アイテムにはDEFAULT文が必要です。

DEFAULT文の使用方法が間違っている

DEFAULT文は、入力またはデータベース・アイテム以外の変数に対して指定します。

変数が初期化されていない

コンパイラは、使用する変数が初期化されていないことを検出しました。すべての場合、コンパイラがこれを行うことはできません。このエラーは、Formulaタイプでサポートされていないコンテキストを必要とするデータベース・アイテムがFormulaに含まれている場合によく発生します。Formulaは、データベース・アイテムをローカル変数として処理します。たとえば、バランス・データベース・アイテムには、PAYROLL_REL_ACTION_ID、PAYROLL_ASSIGNMENT_IDおよびCALC_BREAKDOWN_IDのコンテキストが必要です。通常、これらの文は「Oracle Payroll」タイプのFormulaで使用します。

関数コールがない

コンパイラは関数コールを認識していません。戻りタイプ、関数名およびパラメータ・タイプの組合せが、いずれの使用可能な関数とも一致しません。

演算子の使用方法が間違っている

Formulaの演算子を使用しているインスタンスが、その演算子の許可される使用方法と一致していません。

たとえば、+演算子には2つの使用方法が許可されています。オペランドのデータ型は、両方ともNUMBERであるか、両方ともTEXTです。

データ型の使用方法が整合していない

Formulaで複数のデータ型のFormula変数が使用されています。あるいは、間違ったデータ型のデータベース・アイテムまたはコンテキストがFormulaで使用されています。

たとえば、Formulaの開始部分で変数AにNUMBERの値が割り当てられているのに、後からTEXT値が割り当てられている場合などです。

EXIT文がWHILEループ内にない

最終的にfalseになるか、ループを抜けるためのEXITコールが存在しない条件。

コンテキストの使用方法が間違っている

コンテキストとしての変数、または変数としてのコンテキストがFormulaで使用されています。

たとえば、FormulaでAREA1に通常の変数としての値が割り当てられているのに、後からGET_CONTEXTコール内でコンテキストとしてAREA1が使用されている場合などです。