付録4: Formulaエラー: コンパイル時間
コンパイル時の様々なFormulaエラーの説明を次に示します。
Formulaエラー | 摘要 |
---|---|
構文エラー | FormulaのテキストがFormula言語の構文ルールに違反しています。 例: IF文にIFのかわりにIF1を使用します。 |
文の順序が正しくない | ALIAS、DEFAULTまたはINPUT文は、他の文の後に表示されます。 |
ASSIGNMENT文の誤用 | ASSIGNMENTは値をデータベース・アイテムに代入しています。 CHANGE-CONTEXTS文の外部でコンテキストに値が代入されています。 非コンテキスト変数には、CHANGE-CONTEXTS文内で値が代入されます。 |
ALIAS文の誤用 | ALIAS文は、データベース・アイテムにのみ使用できます。 |
DEFAULT文の欠落 | デフォルト設定が指定されているデータベース・アイテムには、DEFAULT文が必要です。 |
DEFAULT文の誤用 | DEFAULT文は、入力またはデータベース・アイテム以外の変数に対して指定します。 |
変数が初期化されていない | コンパイラは使用時に初期化されていない変数を検出します。 コンパイラはどのような場合でも実行できません。 このエラーは、データベース・アイテムを使用するつもりで、データベース・アイテムがFormulaで使用できない(存在しないか、パーティション化制限がFormulaで使用できない)場合に発生します。 |
関数コールがない | 関数コールが認識されません。 戻り型、関数名、パラメータ型の組合せが、使用可能な関数のいずれにも一致しません。 |
演算子の使用方法が間違っている | Formula演算子のインスタンスが、その演算子で認められている使用方法に従っていません。 例: +演算子に2つの使用方法が許可されています。 両方のオペランドをデータ型NUMBERにするか、データ型TEXTにする必要があります。 |
整合性のないデータ型の使用 | Formula変数は、複数のデータ型であるかのように使用されています。 例: 変数AにはFormulaの最初にNUMBER値が代入されますが、Formulaの後半にTEXT値が代入されます。 データベース・アイテムまたはコンテキストが間違ったデータ型で使用されています。 |
EXIT文がWHILEループ内にない | |
コンテキスト内で混在して使用されている | 変数は後でコンテキストとして使用されるか、またはその逆になります。 例: AREA1に値が代入されるため、通常の変数として使用されますが、後のAREA1はGET_CONTEXTコールのコンテキストとして使用されます。 |