機械翻訳について

付録4: Formulaエラー: コンパイル時間

コンパイル時の様々な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コールのコンテキストとして使用されます。