Esempi con SET CLEARUPDATESTATUS

In questi esempi vengono illustrate diverse modalità di utilizzo di SET CLEARUPDATESTATUS in uno script di calcolo per il calcolo intelligente di un cubo di memorizzazione a blocchi Essbase.

Per gli esempi, si supponga di utilizzare uno scenario utilizzando il database di base di esempio, in cui le dimensioni sparse sono Mercato e Prodotto. New York è membro della dimensione Market. Calcolo intelligente attivo, ovvero l'impostazione predefinita.

Figura 20-1 Dimensioni standard in Sample Basic


Struttura compressa con tutte le dimensioni standard nel database Sample Basic: Anno, Misure, Prodotto, Mercato e Scenario.

Esempio 1: CLEARUPDATESTATUS AFTER

Nello script di calcolo riportato di seguito, Essbase cerca i blocchi padre modificati per New York lungo la dimensione Prodotto (ad esempio, New York -> Colas).

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

Come specificato dal parametro AFTER, i blocchi sporchi vengono calcolati e contrassegnati come puliti.

Essbase non contrassegna i blocchi di livello 0 come puliti perché non vengono calcolati.

Esempio 2: SOLO CLEARUPDATESTATUS

Nello script di calcolo riportato di seguito, Essbase cerca i blocchi padre modificati per New York lungo la dimensione Prodotto (ad esempio, New York -> Colas).

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

Come specificato dal parametro ONLY, i blocchi padre sporchi sono contrassegnati come puliti, ma non vengono calcolati.

Essbase non contrassegna i blocchi di livello 0 come puliti perché non vengono calcolati. Ad esempio, se New York -> 100-10 è sporca, rimane sporca.

Esempio 3: CLEARUPDATESTATUS OFF

Nello script di calcolo riportato di seguito, Essbase calcola prima tutti i blocchi danneggiati nel cubo.

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

Come specificato dal parametro OFF, i blocchi calcolati rimangono sporchi.

Essbase calcola quindi i due membri pass lungo la dimensione Account. Poiché i blocchi di dati sono ancora contrassegnati come modificati, Essbase li ricalcola. Ancora una volta, non contrassegna i blocchi di dati calcolati come puliti.

Essbase cerca quindi tutti i blocchi danneggiati nel database e li contrassegna come puliti, come specificato dal parametro ONLY.

Non più blocchi vengono calcolati dal comando finale CALC ALL, perché sono tutti contrassegnati come puliti.