Formula文
Formula文を使用して、Formulaに実行させる操作を指示します。文を使用するには、文のタイプや正しい順序、文のグループ化に関する知識が必要です。
文のタイプ
次に、Formulaで使用できる命令用の文を示します。
| 
                         文  | 
                     
                         文の形式  | 
                     
                         説明および例  | 
                  
|---|---|---|
| 
                         
                             | 
                     
                         
                             | 
                     
                         データベース・アイテムまたはグローバル値に別の名前を付与します。アプリケーションから提供されたデータベース・アイテム名が長すぎて、Formulaで使用できない場合があります。 ALIAS文を使用してデータベース・アイテムの名前を短縮できます。ALIASの作成後は、これをデータベース・アイテム名のかわりに使用します。別名は、短い名前のローカル変数にデータベース・アイテムを代入するよりも効率的です。 
                      | 
                  
| 
                         
                             | 
                     
                         variable = expression array[index] = expression  | 
                     
                         変数、または配列変数の索引の位置に式値を代入します。Formulaは文の右側にある式を評価します。その結果を左側に指定されている変数に格納します。Formulaではローカル変数の値しか変更できないため、代入文の左側には常にローカル変数を指定してください。 "CHANGE_CONTEXTS"文の中では、コンテキストにのみ値を代入します。"CHANGE_CONTEXTS"文の外側では、入力、出力およびローカル変数にのみ値を代入します。 
                      | 
                  
| 
                         
                             | 
                     
                         (context1 = expression1 [,context2 = expression2 ]  | 
                     
                         Formula内の1つ以上のコンテキストを変更します。"CHANGE_CONTEXTS"文内で、 
                      | 
                  
| 
                         
                             | 
                     
                         
                            
                             | 
                     
                         DEFAULT FOR文は、次の状況のときにFormulaが入力またはデータベース・アイテムとして使用する値を提供します。 
 DEFAULT_DATA_VALUE FOR文は、配列データベース・アイテムで個々のデータ値がNULLである場合に使用する値を提供します。 一部のデータベース・アイテムはデフォルト値を必要とします。データベースからデータが返されなかったり、NULL値が返されたりすることがあるためです。 
                      | 
                  
| 
                         
                             | 
                     
                         
                             | 
                     
                         囲んでいる 
                      | 
                  
| 
                         
                             | 
                     
                         
                            
                            
                            
                             | 
                     
                         あるFormulaから別のFormulaを呼び出します。たとえば、あるFormulaから共通の計算を実行する小さいFormulaを呼び出せます。この方法を使用することで、Formulaが長くなるのを回避できます。 
                      | 
                  
| 
                         
                             | 
                     
                         
                            
                             | 
                     
                         条件がtrueの場合に、1つまたは複数の文を実行します。条件がfalseの場合に実行する文のセットを指定する場合は、 
                      | 
                  
| 
                         
                             | 
                     
                         
                             | 
                     
                         Formulaの入力変数を列挙します。 
                      | 
                  
| 
                         
                             | 
                     
                         
                             | 
                     
                         Formulaの実行をただちに停止します。呼出し側に返す値がある場合は、Formulaを停止する Formula内には複数のReturn文を入力できます。 
                      | 
                  
| 
                         
                             | 
                     
                         
                             | 
                     
                         1つの条件がtrueの間は多くの文が繰り返し実行されます。 
 
                      | 
                  
| 
                         
                             | 
                     
                         
                            
                            
                            
                             | 
                     
                         参照データを格納します。これらのデータを設定、取出しまたは削除できます。 
                      | 
                  
文の順序
次の順序で文をFormulaに配置します。
- 
               
ALIAS文(ある場合)
 - 
               
DEFAULT文(ある場合)
 - 
               
INPUT文(ある場合)
 - 
               
その他の文
 
文のグループ化
IF/THEN文、ELSE句、WHILEループ、CHANGE_CONTEXTSの中で複数の文をグループ化するには、文のグループをカッコで囲みます。カッコがない場合、先行する文は最初の文にしか適用されません。
文をグループ化できる方法の例を次に示します。
I = A.FIRST
WHILE (A.EXISTS(I)) LOOP
(
  A[I] = I
  I = A.NEXT(I,-1)
)
         文をグループ化できていない方法の例を次に示します。
I = A.FIRST
WHILE (A.EXISTS(I)) LOOP
  A[I] = I
  I = A.NEXT(I,-1) /* This is not executed as part of the loop. */