Beachten Sie das folgende Skript, bei dem angenommen wird, dass SalesYTD
ein untergeordnetes Element von Ratios
in Sample.Basic
ist (wobei Accounts und Time dicht besetzt sind).
SET UPDATECALC OFF; "SalesYTD"( IF(@ismbr("Jan")) "SalesYTD" = "Sales"; Else "SalesYTD"="Sales" + @prior("SalesYTD"); Endif)
In diesem Beispiel erfüllen 11/12 der Daten die ELSE-Bedingung, wohingegen nur 1/12 der Daten die IF-Bedingung erfüllen. Das Element "SalesYTD" wird außerdem im Zellenmodus berechnet. Dies bedeutet, dass der Monat Januar unabhängig von der IF-Reihenfolge als erstes berechnet wird, da er in der Modellstruktur an erster Stelle steht. Sie können dieses Skript optimieren, indem Sie NOT in der IF-Anweisung wie im folgenden Beispiel verwenden:
SET UPDATECALC OFF; "SalesYTD"( IF(NOT(@ismbr("Jan"))) "SalesYTD" = "Sales" + @prior("SalesYTD"); Else "SalesYTD"="Sales"; Endif)