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

Betrachten Sie in diesem Beispiel ein Datensegment in einer dicht besetzten, gespeicherten Dimension. Die Reihenfolge der Dimensionen definiert die Berechnungsreihenfolge. #MISSING-Werte müssen konsolidiert werden, und es sind keine Formeln vorhanden. Essbase kann den Bereich in einem Durchlauf berechnen.

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.

  1. Qtr1 -> New York

  2. Qtr1 -> Massachusetts

  3. Jan -> Ost

  4. Feb -> Osten

  5. Mar -> Osten

  6. 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

Betrachten Sie in diesem Beispiel ein Datensegment in einer gespeicherten, dicht besetzten Dimension. Die Konfiguration der Datenbank bestimmt, dass die Reihenfolge der Dimensionen die Berechnungsreihenfolge definiert. Ein Block muss zweimal 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).

  • 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.

  1. Qtr1 -> New York

  2. Qtr1 -> Massachusetts

  3. Qtr1 -> Osten

  4. Jan -> Ost

  5. Feb -> Osten

  6. Mar -> Osten

  7. 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.

Nicht-Ebene 0-Eingabedaten müssen entlang der Regionselemente der Market-Dimension berechnet werden. Daten für die Kindermärkte fehlen. Obwohl #MISSING-Werte nicht konsolidiert sind und keine Formeln vorhanden sind, führt Essbase zwei Durchgänge durch.

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.

Einige Eingabedaten, die nicht der Ebene 0 angehören, müssen entlang der Quartalelemente der Dimension "Zeit" berechnet werden. Daten für die untergeordneten Monate fehlen. Wie dieser Cube konfiguriert ist, wird zuerst die Dimension "Accounts" berechnet, und #MISSING-Werte werden nicht konsolidiert. In der Kontenhierarchie dieses Abschnitts sind keine Formeln vorhanden.

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


Gewinnzweig der Measures-Dimension.

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.