ENDIF

EssbaseENDIF計算コマンドは、IFコマンド・シーケンスの終わりをマークします。ENDIFコマンドは、IF文またはIF ... ELSEIF文と組み合せてのみ使用できます。

構文

ENDIF;

ノート

  • 数式または計算スクリプトのすべてのIF文に、ENDIF文を指定する必要があります。必要なENDIF文を指定しないと、数式または計算スクリプトは検証されません。

  • 別のIF文内にネストされたIF文を使用した場合、各IFをENDIFで終了します。例:

    "Opening Inventory"
      (IF (@ISMBR(Budget))
            IF (@ISMBR(Jan))
            "Opening Inventory" = Jan;
            ELSE
            "Opening Inventory" = @PRIOR("Ending Inventory");
            ENDIF;
      ENDIF;)
  • ELSE文またはELSEIF文は、ENDIF文で終了する必要はありません。

  • ENDIF文の末尾にセミコロンを使用して終了する必要はありませんが、数式または計算スクリプトの各ENDIF文の最後には、セミコロンを付ける習慣にすることをお薦めします。

  • IF、ELSE、ELSEIF、ENDIFはすべて、データベース・アウトライン式内で使用するか、計算スクリプト内で使用する場合はデータベース・アウトラインのメンバーに関連付ける必要があります。

次の例は、Sample Basicデータベースに基づいています。この計算スクリプトは、Marketディメンションの現在のメンバーがWestまたはEastの子孫であるかどうかをテストします。そうである場合、EssbaseはMarketingの値に1.5を乗算します。次に、計算スクリプトは、現在のメンバーがSouthの子孫であるかどうかをテストします。その場合、Essbaseは、Marketingの値に0.9を乗算します。現在のメンバーがWest、East、またはSouthの子孫でない場合、Essbaseは、Marketingの値に1.1を乗算します。

IF (@ISMBR(@DESCENDANTS(West))
         OR 
    @ISMBR(@DESCENDANTS(East))
       )
    Marketing = Marketing * 1.5;
ELSEIF(@ISMBR(@DESCENDANTS(South))
    )
    Marketing = Marketing * .9;
ELSE 
    Marketing = Marketing * 1.1;
ENDIF;