SET CLEARUPDATESTATUSの例

これらの例は、Essbaseブロック・ストレージ・キューブの高機能計算の計算スクリプトでSET CLEARUPDATESTATUSを使用する様々な方法を示しています。

例では、Sample Basicデータベースを使用するシナリオで、疎ディメンションがMarketおよびProductであるとします。New Yorkは、Marketディメンションのメンバーです。高機能計算はオンになっていて、これがデフォルトです。

図20-1 Sample Basicの標準ディメンション


Sample Basicデータベースのすべての標準ディメンション(Year、Measures、Product、MarketおよびScenario)を含む縮小されたアウトライン。

例1: CLEARUPDATESTATUS AFTER

次の計算スクリプトでは、EssbaseはProductディメンションに沿って、New Yorkのダーティな親ブロックを検索します(たとえば、New York -> Colas)。

SET CLEARUPDATESTATUS AFTER;
FIX("New York")
   CALC DIM(Product);
ENDFIX

AFTERパラメータで指定されているように、ダーティ・ブロックが計算され、クリーンとしてマークされます。

Essbaseでは、レベル0のブロックは計算されないため、そのブロックはクリーンとしてマークされません。

例2: CLEARUPDATESTATUS ONLY

次の計算スクリプトでは、EssbaseはProductディメンションに沿って、New Yorkのダーティな親ブロックを検索します(たとえば、New York -> Colas)。

SET CLEARUPDATESTATUS ONLY;
FIX("New York")
   CALC DIM(Product);
ENDFIX

ONLYパラメータで指定されているように、ダーティ親ブロックはクリーンとしてマークされますが、計算されません。

Essbaseでは、レベル0のブロックは計算されないため、そのブロックはクリーンとしてマークされません。たとえば、New York -> 100-10がダーティの場合、このブロックはダーティのままです。

例3: CLEARUPDATESTATUS OFF

次の計算スクリプトでは、Essbaseはまずキューブ内のすべてのダーティ・ブロックを計算します。

SET CLEARUPDATESTATUS OFF;
CALC ALL;
CALC TWOPASS;
SET CLEARUPDATESTATUS ONLY;
CALC ALL;

OFFパラメータで指定されているように、計算済ブロックはダーティのままです。

Essbaseは、勘定科目ディメンションに沿って2つのパス・メンバーを計算します。データ・ブロックはダーティとしてマークされたままであるため、Essbaseでそのデータ・ブロックが再計算されます。ここでも計算済データ・ブロックはクリーンとしてマークされません。

次に、Essbaseで、データベース内のすべてのダーティ・ブロックが検索され、ONLYパラメータで指定されているとおりにクリーンとしてマークされます。

最後のCALC ALLコマンドによって計算されるブロックは、すべてクリーンとしてマークされるため、これ以上計算されません。