Zellenberechnungsreihenfolge
Die Reihenfolge, in der Essbase die Zellen in jedem Datenblock berechnet, hängt davon ab, wie Sie die Datenbank konfiguriert haben.
Jeder Datenblock enthält alle Werte für dicht besetzte Dimensionselemente für seine eindeutige Kombination von dünn besetzten Dimensionselementen. Jeder Datenwert ist in einer Zelle des Datenblocks enthalten.
Wie Sie die Datenbank konfiguriert haben, bestimmt die Berechnungsreihenfolge von dicht besetzten Dimensionselementen innerhalb jedes Blocks sowie die Berechnungsreihenfolge von Blöcken, die dünn besetzte Dimensionselemente darstellen.
Beispiele:
Reihenfolge der Zellenberechnung – Beispiel 1
In diesem Beispiel, dem einfachsten Fall, gelten folgende Bedingungen:
-
Keine Dimensionen haben Zeit- oder Kontotags.
-
Die Einstellung zum Konsolidieren von #MISSING-Werten ist aktiviert.
-
Markt und Jahr sind dichte Dimensionen.
Essbase berechnet dicht besetzte Dimensionen in der Reihenfolge, in der sie in der Datenbankmodellstruktur definiert sind. Angenommen, die Year-Dimension wird im Datenbank-Outline vor der Market-Dimension positioniert und zuerst berechnet.
Das folgende Raster zeigt einen Bereich (eine Teilmenge der Zellen in einem Datenblock). Im Raster wird die Berechnungsreihenfolge für die Zellen des Abschnitts durch die Zahlen 1 - 6 dargestellt.
Tabelle 19-3: Berechnungsreihenfolge Beispiel 1: Eingabezellen und berechnete Zellen
| Jahresmarkt | New York | Massachusetts | Ost |
|---|---|---|---|
| Jan | 112.345 | 68.754 | 3 |
| Feb | 135.788 | 75.643 | 4 |
| Mrz | 112.234 | 93.456 | 5 |
| Qrt 1 | 1 | 2 | 6 |
Datenwerte wurden in die folgenden Eingabezellen geladen:
-
Jan -> New York
-
Feb -> New York
-
Mar -> New York
-
Jan -> Massachusetts
-
Feb -> Massachusetts
-
Mar -> Maastricht
Essbase berechnet die Zellen in der folgenden Reihenfolge.
-
Qtr1 -> New York
-
Qtr1 -> Massachusetts
-
Jan -> Ost
-
Feb -> Osten
-
Mar -> Osten
-
Qtr1 -> Osten
Qtr1 -> Ost hat mehrere Konsolidierungspfade; es kann auf dem Markt oder auf dem Jahr konsolidiert werden. Bei der Konsolidierung auf dem Markt handelt es sich um eine Konsolidierung von Qtr1 -> New York und Qtr1 -> Massachusetts. Bei der Konsolidierung im Jahr handelt es sich um eine Konsolidierung von Jan -> Ost, Feb -> Ost und Mar -> Ost.
Essbase weiß, dass Qtr1 -> East über mehrere Konsolidierungspfade verfügt. Daher berechnet es Qtr1 -> Ost nur einmal, indem es die Werte für Qtr1 konsolidiert und den Konsolidierungspfad der zuletzt berechneten Dimension (in diesem Beispiel die Market-Dimension) verwendet, wie unten dargestellt.
Tabelle 19-4: Beispiel für die Berechnungsreihenfolge 1: Ergebnisse
| Jahresmarkt | New York | Massachusetts | Ost |
|---|---|---|---|
| Jan | 112.345 | 68.754 | 181.099 |
| Feb | 135.788 | 75.643 | 211.431 |
| Mrz | 112.234 | 93.456 | 205.690 |
| Qrt 1 | 360.367 | 237.853 | 598.220 |
Wenn Sie eine Elementformel auf Qtr1 setzen, ignoriert Essbase diese basierend auf der Berechnungsreihenfolge bei der Berechnung von Qtr1 -> Ost. Wenn Sie eine Elementformel in East platzieren, wird die Formel berechnet, wenn Essbase Qtr1 -> East entlang Market konsolidiert.
Bei Bedarf können Sie ein Berechnungsskript verwenden, um die Dimensionen in der von Ihnen gewählten Reihenfolge zu berechnen.
Reihenfolge der Zellenberechnung – Beispiel 2
In diesem Beispiel sind folgende Bedingungen erfüllt:
-
Keine Dimensionen haben Zeit- oder Kontotags.
-
Die Einstellung zum Konsolidieren von #MISSING-Werten ist deaktiviert (Standard).
-
Markt und Jahr sind dichte Dimensionen.
Essbase berechnet dicht besetzte Dimensionen in der Reihenfolge, in der sie in der Datenbankmodellstruktur definiert sind. Angenommen, die Year-Dimension wird im Datenbank-Outline vor der Market-Dimension positioniert und zuerst berechnet.
Das folgende Raster zeigt einen Bereich (eine Teilmenge der Zellen in einem Datenblock). Im Raster wird die Berechnungsreihenfolge für die Zellen des Abschnitts durch die Zahlen 1 - 7 dargestellt.
Tabelle 19-5 Beispiel für die Berechnungsreihenfolge 2: Eingabezellen und berechnete Zellen
| Jahresmarkt | New York | Massachusetts | Ost |
|---|---|---|---|
| Jan | 112.345 | 68.754 | 4 |
| Feb | 135.788 | 75.643 | 5 |
| Mrz | 112.234 | 93.456 | 6 |
| Qrt 1 | 1 | 2 | 3/7 |
Datenwerte wurden in die folgenden Eingabezellen geladen:
-
Jan -> New York
-
Feb -> New York
-
Mar -> New York
-
Jan -> Massachusetts
-
Feb -> Massachusetts
-
Mar -> Maastricht
Essbase berechnet die Qtr1-Zellen für New York, Massachusetts und East sowie die East-Zellen für Jan, Feb und März.
-
Qtr1 -> New York
-
Qtr1 -> Massachusetts
-
Qtr1 -> Osten
-
Jan -> Ost
-
Feb -> Osten
-
Mar -> Osten
-
Qtr1 -> Osten
Qtr1 -> Ost wird auf dem Konsolidierungspfad für das Jahr und den Markt berechnet. Erstens wird Qtr1 -> Ost als Konsolidierung von Qtr1 -> New York und Qtr1 -> Massachusetts berechnet. Zweitens wird Qtr1 -> Ost als Konsolidierung von Jan -> Ost, Feb -> Ost und Mar -> Ost berechnet.
Die Ergebnisse sind identisch mit den Ergebnissen z.B. 1. Qtr1 -> Ost wurde jedoch zweimal berechnet. Dieser Fakt ist wichtig, wenn Sie Daten auf übergeordneten Ebenen laden müssen.
Wenn Sie eine Elementformel auf Qtr1 setzen, wird das Ergebnis basierend auf der Berechnungsreihenfolge überschrieben, wenn Essbase Qtr1 -> East entlang Market konsolidiert. Wenn Sie eine Elementformel auf East setzen, wird das Ergebnis beibehalten, da der Markt zuletzt berechnet wird.
Tabelle 19-6: Beispiel für die Berechnungsreihenfolge 2: Ergebnisse
| Jahresmarkt | New York | Massachusetts | Ost |
|---|---|---|---|
| Jan | 112.345 | 68.754 | 181.099 |
| Feb | 135.788 | 75.643 | 211.431 |
| Mrz | 112.234 | 93.456 | 205.690 |
| Qrt 1 | 360.367 | 237.853 | 598.220 |
Reihenfolge der Zellenberechnung – Beispiel 3
In diesem Beispiel sollten Sie ein Datensegment in einer dicht besetzten, gespeicherten Dimension betrachten. Die Konfiguration der Datenbank bestimmt, dass die Reihenfolge der Dimensionen die Berechnungsreihenfolge definiert. Es gibt zwei Konsolidierungspfade, mit denen die Blöcke berechnet werden.
In diesem Beispiel sind folgende Bedingungen erfüllt:
-
Keine Dimensionen haben Zeit- oder Kontotags.
-
Die Einstellung zum Konsolidieren von #MISSING-Werten ist deaktiviert (Standard).
-
Datenwerte wurden auf übergeordneten Ebenen geladen.
-
Markt und Jahr sind dichte Dimensionen.
Essbase berechnet dicht besetzte Dimensionen in der Reihenfolge, in der sie in der Datenbankmodellstruktur definiert sind. Angenommen, die Year-Dimension wird im Datenbank-Outline vor der Market-Dimension positioniert und zuerst berechnet.
Das folgende Raster zeigt einen Bereich (Teilmenge der Zellen in einem Datenblock), der berechnet werden muss.
Tabelle 19-7 Beispiel für die Berechnungsreihenfolge 3: Eingabezellen und #MISSING-Werte
| Jahresmarkt | New York | Massachusetts | Ost |
|---|---|---|---|
| Jan | #FEHLT | #FEHLT | 181.099 |
| Feb | #FEHLT | #FEHLT | 211.431 |
| Mrz | #FEHLT | #FEHLT | 205.690 |
| Qrt 1 | #FEHLT | #FEHLT |
Die Zellen werden in derselben Reihenfolge berechnet wie in Zellenberechnungsreihenfolge: Beispiel 2. Qtr1 -> Ost wird auf dem Konsolidierungspfad für das Jahr und den Markt berechnet.
Da die Einstellung zum Konsolidieren von #MISSING-Werten deaktiviert ist, konsolidiert Essbase die #MISSING-Werte nicht. Daher werden die Daten, die auf übergeordneten Ebenen geladen werden, nicht durch die darunter liegenden #MISSING-Werte überschrieben.
Wenn jedoch einer der untergeordneten Datenwerte nicht #MISSING ist, werden diese Werte konsolidiert und überschreiben die übergeordneten Werte. Beispiel: Wenn Jan -> New York 50000.00 enthält, überschreibt dieser Wert die auf übergeordneten Ebenen geladenen Werte.
Essbase muss die Zelle "Qtr1 -> Osten" zweimal berechnen, um sicherzustellen, dass ein Wert für die Zelle berechnet wird. Wenn Qtr1 -> Ost nur nach dem letzten Konsolidierungspfad berechnet wird, lautet das Ergebnis #MISSING, was nicht das erforderliche Ergebnis ist.
Die Ergebnisse zeigen, dass Essbase zuerst die Zelle "Qtr1 -> Osten" richtig berechnet, indem Jan -> Osten, Feb -> Osten und Mar -> Osten konsolidiert und dann auf dem Marktkonsolidierungspfad berechnet wird. Es konsolidiert jedoch nicht die #MISSING-Werte in Qtr1 -> New York und Qtr1 -> Massachusetts; daher wird der Wert in Qtr1 -> East nicht überschrieben.
Tabelle 19-8: Beispiel für die Berechnungsreihenfolge 3: Ergebnisse
| Jahresmarkt | New York | Massachusetts | Ost |
|---|---|---|---|
| Jan | #FEHLT | #FEHLT | 181.099 |
| Feb | #FEHLT | #FEHLT | 211.431 |
| Mrz | #FEHLT | #FEHLT | 205.690 |
| Qrt 1 | #FEHLT | #FEHLT | 598.220 |
Reihenfolge der Zellenberechnung – Beispiel 4
In diesem Beispiel wird ein Datenbereich in einer gespeicherten Dimension betrachtet. Die Konfiguration der Datenbank bestimmt, in welcher Reihenfolge die Blöcke berechnet werden.
In diesem Beispiel sind folgende Bedingungen erfüllt:
-
Die Year-Dimension ist als "Time" gekennzeichnet.
-
Die Measures-Dimension ist als Accounts getaggt.
Essbase berechnet zuerst eine als "Accounts" getaggte Dimension, gefolgt von einer als "Time" getaggten Dimension. Daher werden in diesem Beispiel Kennzahlen vor Jahr berechnet.
-
Die Einstellung zum Konsolidieren von #MISSING-Werten ist deaktiviert (Standard).
-
Die Werte für Marketing, Entgeltabrechnung und sonstige Aufwendungen wurden in Quartalen (Ebene 1) geladen.
Die Abbildung unten zeigt den Zweig "Profit" der Measures-Dimension in der Sample Basic-Datenbank. In diesem Beispiel wird davon ausgegangen, dass "Gesamtaufwand" gespeichert ist (kein Element für Dynamische Berechnung).
Abbildung 19-9 Gewinnverzweigung der Kennzahlendimension

Da keine Formeln vorhanden sind und #MISSING nicht konsolidiert, werden die Werte der oberen Ebene nicht überschrieben. Datenwerte mit zwei Konsolidierungspfaden (die Nicht-Level-0-Kennzahlen) werden zweimal berechnet.
Das folgende Raster zeigt einen Bereich (eine Teilmenge der Zellen in einem Datenblock). Im Raster wird die Berechnungsreihenfolge für die Zellen des Abschnitts durch die Zahlen 1 - 17 dargestellt.
Tabelle 19-9 Beispiel für die Berechnungsreihenfolge 4: Eingabezellen, #MISSING-Werte und berechnete Zellen
| Kennzahlen/Jahr | Jan | Feb | Mrz | Qrt 1 |
|---|---|---|---|---|
| Vertrieb | 31.538 | 32.069 | 32.213 | 13 |
| COGS | 14.160 | 14307 | 14.410 | 14 |
| Rand | 1 | 4 | 7 | 10/15 |
| Marketing | #FEHLT | #FEHLT | #FEHLT | 15.839 |
| Entgeltabrechnung | #FEHLT | #FEHLT | #FEHLT | 12.168 |
| Sonstiges | #FEHLT | #FEHLT | #FEHLT | 233 |
| Gesamtausgaben | 2 | 5 | 8 | 11/16 |
| Gewinn | 3 | 6 | 9 | 12/17 |
Die folgenden Zellen haben mehrere Konsolidierungspfade:
-
Gewinnspanne -> Quartal 1
-
Gesamtaufwand -> Quartal 1
-
Gewinn -> Quartal 1
Da die Einstellung zum Konsolidieren von #MISSING-Werten deaktiviert ist, konsolidiert Essbase die #MISSING-Werte nicht. Alle auf übergeordneten Ebenen geladenen Daten werden nicht durch #MISSING-Werte überschrieben. Essbase berechnet die Zellen mit mehreren Konsolidierungspfaden zweimal.
Wenn Sie basierend auf der Berechnungsreihenfolge eine Formel auf "Gewinnspanne" gesetzt haben, wird das Ergebnis durch die Konsolidierung im Quartal 1 überschrieben.
Die Ergebnisse werden unten angezeigt:
Tabelle 19-10: Beispiel für die Berechnungsreihenfolge 4: Ergebnisse
| Kennzahlen/Jahr | Jan | Feb | Mrz | Qrt 1 |
|---|---|---|---|---|
| Vertrieb | 31.538 | 32.069 | 32.213 | 95.820 |
| COGS | 14.160 | 14307 | 14.410 | 42.877 |
| Rand | 17.378 | 17.762 | 17.803 | 52.943 |
| Marketing | #FEHLT | #FEHLT | #FEHLT | 15.839 |
| Entgeltabrechnung | #FEHLT | #FEHLT | #FEHLT | 12.168 |
| Sonstiges | #FEHLT | #FEHLT | #FEHLT | 233 |
| Gesamtaufwendungen | 28.240 | |||
| Gewinn | 17.378 | 17.762 | 17.803 | 12/17 |
Zellenberechnungsreihenfolge für Formeln in einer dicht besetzten Dimension
Berücksichtigen Sie bei der Platzierung einer Formel für ein dicht besiedeltes Dimensionselement die Reihenfolge der Zellenberechnung. Wie in den vorherigen Beispielen dargestellt, überschreibt die zuletzt berechnete Dimension vorherige Zellenberechnungen für Zellen mit mehreren Konsolidierungspfaden.
Die Reihenfolge der Zellenberechnung innerhalb eines Datenblocks wird von Formeln für Elemente nicht beeinflusst. Wenn Essbase auf eine Formel in einem Datenblock trifft, sperrt es alle anderen erforderlichen Datenblöcke, berechnet die Formel und fährt mit der Datenblockberechnung fort.
Bei Bedarf können Sie mit einem Berechnungsskript die Reihenfolge ändern, in der Dimensionen berechnet werden. Siehe Berechnungsskripte für Block Storage-Cubes entwickeln und Formeln für Block Storage-Cubes entwickeln.