Einführung in Essbase-Drillthrough

Wenn Smart View-Benutzer mehr Informationen benötigen, als im Cube verfügbar sind, können sie über Drillthrough-Berichte benutzerdefinierten Zugriff auf externe Quelldaten erhalten.

Aufgrund der detaillierten Granularität von Daten in Data Warehouses und anderen Quelldatensystemen ist das Volumen von externen Daten in der Regel zu groß, um hilfreich für Analysen zu sein. Um einen Essbase-Cube mit der optimalen Datenmenge für Analysen aufzufüllen, werden häufig die Quelldaten aggregiert (z.B. werden tägliche Transaktionswerte zu wöchentlichen oder monatlichen Summen aggregiert). Diese Aggregatdaten werden anschließend in den Essbase-Cube geladen.

Falls Smart View-Benutzer bei nachfolgenden Analysen der Daten in Essbase Anomalien entdecken, die eine Untersuchung erforderlich machen, können sie mit einem Drillthrough die zugrunde liegenden Quelldaten schnell anzeigen, um nach der Ursache zu suchen. Wenn sich beispielsweise die Daten vom August auf unerwartete Weise von den Daten vom Juli unterscheiden, können Benutzer einen Drillthrough zum Quellsystem ausführen, um die verantwortlichen Datensätze zu finden.

Um Smart View-Analysebenutzern zusätzliche Informationen darüber bereitzustellen, was ein oder mehrere Werte im Cube bedeuten, können Datenbankmanager Drillthrough-Berichte implementieren, um tiefere Einblicke in die Quelldaten zu gewähren, bevor sie zusammengefasst und in Essbase geladen werden.

Mit Drillthrough-Berichten können Sie eine Schnittstelle zum Datenaustausch zwischen Essbase und externen Quellsystemen erstellen.

Nehmen wir an, in der relationalen Tabelle "SB_DT" sind alle Datensätze ausgewählt. Die SQL-Abfrage lautet:

SELECT * FROM SB_DT

In dieser Abbildung wurde die Länge des Abfrageergebnisses (in SQL Developer) gekürzt, da die Tabelle Tausende von Datensätzen enthält:


Ansicht von Tabellendaten in SQL Developer. Tausende von Zeilen mit der Spalte "DIMENSION_PRODUCT" mit Werten für die Produkt-SKUs, mit der Spalte "DIMENSION_MARKET" mit US-Bundesstaaten, mit der Spalte "DIMENSION_YEAR" mit Monaten, mit der Spalte "DIMENSION_SCENARIO" mit den Werten "Actual" oder "Budget" und mit Spalten mit Zahlen namens "SALES", "COGS", "MARKETING" und "PAYROLL".

Gehen wir von derselben Tabelle mit weniger ausgewählten Datensätzen aus. Im folgenden Beispiel wird die SQL-Auswahl auf benannte Spalten begrenzt, die Kennzahlen werden aggregiert, und es wird ein Filter (WHERE-Klausel) angewendet:

select DIMENSION_PRODUCT, DIMENSION_MARKET, YEAR_PARENT, DIMENSION_SCENARIO, sum(SALES) as SALES, sum(COGS) as COGS
         from SB_DT where DIMENSION_SCENARIO ='Actual' AND DIMENSION_MARKET ='California' AND YEAR_PARENT ='Qtr4' group by DIMENSION_PRODUCT, DIMENSION_MARKET,
        YEAR_PARENT, DIMENSION_SCENARIO

Daraufhin wird das Abfrageergebnis aggregiert und gefiltert:


Ansicht von Tabellendaten in SQL Developer. 12 Zeilen mit der Spalte "DIMENSION_PRODUCT" mit Werten für die Produkt-SKUs, mit der Spalte "DIMENSION_MARKET" mit "California", mit der Spalte "YEAR_PARENT" mit "Qtr4", mit der Spalte "DIMENSION_SCENARIO" mit dem Wert "Actual" und mit Spalten mit Zahlen namens "SALES" und "COGS".

Sie können RDBMS-Abfragen in Essbase mit Datenquellen, Dataload und Drillthrough-Berichten nutzen. Mit Drillthrough-Berichten erhalten Sie gefilterten Zugriff auf eine externe Datenquelle direkt über eine Essbase-Abfrage in einem Smart View-Arbeitsblatt.

Drillthrough-Terminologie

In diesem Thema wird die Bedeutung von Begriffen im Zusammenhang mit Essbase-Drillthrough erläutert.

Drillthrough ausführen

Wenn Sie einen Drillthrough ausführen, greifen Sie von einer oder mehreren Essbase-Zellenschnittmengen in einem Smart View-Arbeitsblatt auf externe Daten zu. Durch die Drillthrough-Aktion erhalten Sie zusätzliche Informationen, die nicht im Essbase-Cube enthalten sind. Ein Drillthrough wird erforderlich, wenn Essbase aggregierte (zusammengefasste) Werte enthält und im externen Quellsystem Daten mit mehr Granularität enthalten sind, die zur Verfügung gestellt werden können.

  • Wenn beim Drillthrough eine Abfrage ausgeführt wird, werden die Ergebnisse in einem neu geöffneten Arbeitsblatt angezeigt. Hierbei handelt es sich um den Drillthrough-Bericht. Der Bericht enthält Informationen, die von den externen Quelldaten abgerufen wurden.

  • Wenn beim Drillthrough eine URL aufgerufen wird, wird diese in einem Webbrowser geöffnet. An die URL können Parameter übergeben werden, um eine angepasste Suche auf der Website auszuführen.

Drillthrough-Bericht

Ein Drillthrough-Bericht ist das Ergebnis eines Drillthrough-Vorgangs, der in einem Smart View-Raster für zusätzliche Daten aus einem Quellsystem außerhalb von Essbase ausgeführt wurde.

Drillthrough-Berichtsdefinition

Wenn Sie ein Datenbankmanager sind oder eine höhere Rolle besitzen, können Sie mithilfe einer Drillthrough-Berichtsdefinition den Zugriff definieren, den Ihre Benutzer auf externe Informationen haben. Sie können Drillthrough-Berichtsdefinitionen in der Essbase-Weboberfläche oder REST-API erstellen. Sie sind mit Ihrem Cube verknüpft. In der Definition geben Sie Folgendes an:

  • Eine Spaltenzuordnung. Hier ist angegeben, welche externen Spalten Sie in den Berichten anzeigen möchten und auf welche hierarchische (generationelle) Tiefe Sie den Zugriff ermöglichen möchten (z.B. ob Sie tägliche, monatliche oder vierteljährliche Informationen aus der externen Quelle bereitstellen möchten).

  • Eine drillfähige Region. Hier ist angegeben, welche Zellenschnittmengen Ihres Cubes den Zugriff auf Drillthrough-Berichte (oder eine URL) mit zusätzlichen externen Daten ermöglichen. In den nachfolgenden Beispielen sind drillfähige Regionen im POV des Smart View-Arbeitsblatts mithilfe von Zellstilen blau dargestellt. Sie können drillfähige Regionen mit den in Essbase verfügbaren Elementsetfunktionen angeben. In den nachfolgenden Beispielen lautet der Name der drillfähigen Region "@DESCENDANTS("Measures")" in "Sample Basic".

  • Eine Zuordnung für Laufzeitparameter, wenn eine parametrisierte Abfrage in der zugrunde liegenden Datenquellenabfrage implementiert ist (optional).

Drillthrough-Berichtsdefinitionen basieren normalerweise auf vordefinierten Verbindungen und Datenquellen in Essbase (es sei denn, Sie definieren den Zugriff auf eine in Essbase hochgeladene Datei). In einer Verbindung sind die Authentifizierungsdetails für die externe Quelle gespeichert. In einer oder mehreren Datenquellen, die Sie über die Verbindung definieren, können Sie eine anfängliche Abfrage zum Abrufen von Daten aus der externen Quelle angeben (z.B. indem Sie alles in einer bestimmten Tabelle auswählen). Mit der Abfrage, die Sie in der Datenquelle angeben, können Sie eine Teilmenge der Daten in der von Ihnen zu Beginn gewünschten Größe abrufen. Beim späteren Erstellen oder Bearbeiten der Drillthrough-Berichtsdefinition können Sie eingrenzen, wie viel Datenzugriff Sie bereitstellen möchten.

Workflow für Drillthrough-Berichtsdesign

Verwenden Sie als Datenbankmanager den folgenden Workflow, um den Drillthrough für Ihren Cube zu entwerfen und zu testen.

  1. Bereiten Sie den Datenzugriff vor.

    1. Laden Sie eine Datendatei hoch. ODER:
    2. Rufen Sie die erforderlichen Informationen zur Autorisierung des Zugriffs auf ein externes Quellsystem ab.
    3. Definieren Sie eine Verbindung und mindestens eine Datenquelle zur Datendatei oder zur externen Quelle. Informationen hierzu finden Sie unter Globale Verbindung und Datenquelle erstellen oder Verbindung und Datenquelle auf Anwendungsebene erstellen.
  2. Erstellen Sie Drillthrough-Berichtsdefinitionen für den Cube.

    1. Definieren Sie die Spaltenzuordnung.
    2. Definieren Sie die drillfähige Region.
    3. Ordnen Sie Laufzeitparameter zu, falls verwendet.
  3. Testen Sie die Drillthrough-Berichte.

    1. Bereiten Sie Smart View vor.

      • Installieren Sie die neueste Version.
      • Stellen Sie eine Verbindung zum Cube her.
      • Aktivieren Sie Zellenstile, damit drillfähige Regionen angezeigt werden.
    2. Führen Sie einen Drillthrough von verschiedenen Zellenschnittmengen in Smart View aus.

      • Führen Sie einen Drillthrough von einer Schnittmenge aus.
      • Führen Sie einen Drillthrough von mehreren Schnittmengen aus.
      • Führen Sie einen Drillthrough von Zellen bei verschiedenen Generationen aus.
    3. Prüfen Sie die Drillthrough-Berichtsausgaben und das Plattformlog.

Bei diesem Workflow und dem Rest dieser Einführung geht es hauptsächlich darum, was Sie wissen müssen, um Drillthrough-Zugriff auf externe Quelldaten in einem RDBMS zu entwerfen und zu testen. Weitere Informationen zur Drillthrough-URL-Implementierung finden Sie unter Drillthrough zu einer URL ausführen.

Informationen zu den verschiedenen Zugriffsanforderungen für Drillthrough-Design und -Verwendung finden Sie unter Zugriff auf Drillthrough-Berichte.

Funktionsweise von Drillthrough

In diesem Beispiel gehen wir davon aus, dass der Cube "Sample Basic" in Essbase die Elemente "Qtr1" bis "Qtr4" als die untersten Ebenen der Time-Dimension enthält.


Hierarchie "Year". "Year" ist der Name der Dimension, die "Qtr1", "Qtr2", "Qtr3" und "Qtr4" als untergeordnete Elemente der Ebene 0 enthält.

In der Modellstrukturhierarchie sind keine Monate enthalten. Allerdings sind die monatlichen Daten im externen Quellsystem in einer Tabellenspalte namens "DIMENSION_YEAR" vorhanden:


DIMENSION_YEAR-Spalte mit Monatswerten: Aug, Sep, Oct usw.

Im folgenden Beispiel führt ein Smart View-Benutzer einen Drillthrough zu der Zellenschnittmenge eines Sales-Wertes für "Qtr1" aus:


Smart View-Raster mit Benutzerauswahl des Zellenwertes "1998" bei der Schnittmenge von (Qtr1, Sales, New York, Actual, Cola)

Daraufhin wird in Essbase folgender Drillthrough-Bericht generiert:


Drillthrough-Bericht vom Quellsystem, der nur Datensätze mit "YEAR_PARENT=Qtr1" zurückgibt und eine SALES-Summe von 1998 ergibt

Der Drillthrough-Bericht enthält zusätzliche Informationen aus der Quelldatenbank zu "Sales" für "Qtr1". Die Werte für "Jan", "Feb" und "Mar" ergeben als Summe den Wert für "Qtr1": 678+645+675=1998.

Die Abfrage, die Essbase intern verwendet, um den oben dargestellten Drillthrough-Bericht zu erstellen, lautet:

SELECT
        "DIMENSION_PRODUCT", "DIMENSION_MARKET", "DIMENSION_YEAR", "DIMENSION_SCENARIO",
        "SALES", "COGS", "YEAR_PARENT"  FROM <Query defined in Datasource> WHERE
        "YEAR_PARENT" = 'Qtr1' AND "DIMENSION_PRODUCT" = '100-10' AND "DIMENSION_MARKET" =
        'New York' AND "DIMENSION_SCENARIO" = 'Actual'

Im Plattformlog können Administratoren auf die exakten Abfragen hinter den einzelnen Drillthrough-Berichten zugreifen.

Drillthrough-Berichtsdefinition

Wenn Sie ein Datenbankmanager sind oder eine höhere Rolle besitzen, können Sie mithilfe einer Drillthrough-Berichtsdefinition den Zugriff definieren, den Ihre Benutzer auf externe Informationen haben.

Hinweis:

Benennen Sie keine Drillthrough-Berichtsdefinitionen um. Umbenannte Drillthrough-Berichtsdefinitionen sind möglicherweise nicht bearbeitbar und funktionieren vielleicht nicht wie erwartet.

Um den im Abschnitt Funktionsweise von Drillthrough generierten Drillthrough-Bericht zu aktivieren, hat der Datenbankmanager eine Drillthrough-Berichtsdefinition erstellt, die mit "Sample Basic" verknüpft ist. Der Drillthrough-Bericht referenziert eine vordefinierte Datenquelle, die mithilfe einer Abfrage externe Daten aus "SB_DT" (der unter Einführung in Essbase-Drillthrough erwähnten hypothetischen Quellsystemtabelle) abruft.

Der Datenbankmanager hat in der Drillthrough-Berichtsdefinition die folgende Spaltenzuordnung angegeben:

Externe Spalte In Bericht aufnehmen Essbase-Dimension Gen.-/Eb.-Filter
DIMENSION_PRODUCT J Product Product SKU [Generation]
DIMENSION_MARKET J Market State [Generation]
DIMENSION_YEAR J Year Keine
DIMENSION_SCENARIO J Scenario Level0 [Level]
SALES J Keine --
COGS J Keine --
YEAR_PARENT J Year Quarter [Generation]

Die Spaltenzuordnung definiert, welche externen Quellspalten in den Bericht aufgenommen werden und welchen Essbase-Dimensionen diese Spalten zugeordnet sind. Optional wird eine Generations-/Ebenenfilterbedingung definiert, mit der die Tiefe des Zugriffs angegeben wird.

In der oben dargestellten Zuordnungsvorlage hat der Datenbankmanager folgende Zuordnungen vorgenommen:

  • Die externe Spalte "DIMENSION_PRODUCT" wurde der Generation "Product SKU" in der Essbase-Dimension "Product" zugeordnet. Dieser Spaltenzuordnungstyp wird als Generationszuordnung bezeichnet.

  • Die externe Spalte "DIMENSION_MARKET" wurde der Generation "State" in der Essbase-Dimension "Market" zugeordnet (weiteres Beispiel für eine Generationszuordnung).

  • Die externe Spalte "DIMENSION_YEAR" wurde der Dimension "Year" zugeordnet, ohne einen weiteren Filter. Dieser Spaltenzuordnungstyp wird als Dimensionszuordnung bezeichnet.

  • Die externe Spalte "DIMENSION_SCENARIO" wurde der untersten Ebene (Ebene 0) in der Essbase-Dimension "Scenario" zugeordnet. Dieser Spaltenzuordnungstyp wird als Ebene-0-Zuordnung bezeichnet.

  • Die Spalten "SALES" und "COGS" wurden keiner Dimension zugeordnet, sollen jedoch in den Bericht aufgenommen werden. In der Regel ist es nicht erforderlich, Spalten der Essbase-Dimension "Accounts" zuzuordnen.

  • Die externe Spalte "YEAR_PARENT" wurde der Generation "Quarter" in der Dimension "Year" zugeordnet.

Spaltenzuordnungsoptionen

Da die von Essbase generierte Abfrage zum Abrufen von Daten aus Ihrer Datenquelle stark von der definierten Spaltenzuordnung abhängt, ist es hilfreich, die verschiedenen Spaltenzuordnungstypen und die jeweiligen Einsatzmöglichkeiten zu kennen. Folgende Spaltenzuordnungstypen sind verfügbar:

  • Dimensionszuordnung

  • Generationszuordnung

  • Ebene-0-Zuordnung

Dimensionszuordnung

Mit einer Dimensionszuordnung können Sie eine Quelldatenspalte direkt einem Dimensionsnamen im Essbase-Cube zuordnen. Dieser Zuordnungstyp ist hilfreich, wenn die Quelldatenspalte alle Datenlayer enthält, die in der entsprechenden Dimension des Cubes dargestellt werden.

Beispiel: Eine Quelldatenspalte namens "MONTH" enthält eine Mischung aus allen Generationen/Ebenen der Dimension, wie in der folgenden Abbildung gezeigt:


Ansicht einer abgeschnittenen relationalen Spalte ("MONTH") neben einer abgeschnittenen Year-Hierarchie von "Sample Basic". Die Spalte "MONTH" enthält folgende Datensätze: "Jan", "Qtr3", "Feb", "Qtr1", "Year", "Aug" usw. Die Hierarchie "Year" enthält das Element "Qtr1" mit den untergeordneten Elementen "Jan", "Feb", "Mar" und "Qtr2" mit den untergeordneten Elementen "Apr", "May", "Jun" usw.

In diesem Fall ist es sinnvoll, die Spalte "MONTH" der Essbase-Dimension "Year" ohne einen weiteren Filter zuzuordnen:

Externe Spalte In Bericht aufnehmen Essbase-Dimension Gen.-/Eb.-Filter
MONTH J Year Keine

Wenn Sie eine Dimensionszuordnung für "MONTH" (siehe oben) verwenden, ist die Filterbedingung (die WHERE-Klausel der SQL-Abfrage) für die Spalte "MONTH" nicht vordefiniert:

SELECT "MONTH"
FROM <Query defined in Datasource>
WHERE "MONTH" = '<Grid context>'

Das Drillthrough-Ergebnis für "MONTH" gibt die aktuelle Smart View-Zellenschnittmenge zurück.

Weitere Informationen zur Funktionsweise der Dimensionszuordnung finden Sie unter Drillthrough-Anwendungsfall - Beispiel.

Generationszuordnung

Mit einer Generationszuordnung können Sie eine Quelldatenspalte einer benannten Generation in einer Essbase-Dimension zuordnen. Dieser Zuordnungstyp ist hilfreich, wenn die Quelldatenspalte nur den Datenlayer enthält, der in einer bestimmten Generation einer Dimension im Cube dargestellt wird. Beispiel: Die Quelldatenspalte "MONTH" enthält nur Monate, und die Dimension "Year" weist Monate bei der 3. Generation auf:


Ansicht einer abgeschnittenen relationalen Spalte ("MONTH") neben einer abgeschnittenen Year-Hierarchie von "Sample Basic". Die Spalte "MONTH" enthält nur Monate als Datensätze: "Jan", "Feb", "Feb", "Mar", "Mar", "Apr", "May" usw. Die Hierarchie "Year" enthält das Element "Qtr1" mit den untergeordneten Elementen "Jan", "Feb", "Mar" und "Qtr2" mit den untergeordneten Elementen "Apr", "May", "Jun" usw.

Ordnen Sie die Quellspalte in diesem Fall am besten der 3. Generation ("Months") der Dimension "Year" zu:

Externe Spalte In Bericht aufnehmen Essbase-Dimension Gen.-/Eb.-Filter
MONTH J Year Months [Generation]

Wenn Sie eine Generationszuordnung für "MONTH" (siehe oben) verwenden, wird die Abfragefilterbedingung für die Spalte "MONTH" vordefiniert:

SELECT "MONTH"
FROM <Query defined in Datasource>
WHERE "MONTH" = '<Generation filter>'

Das Drillthrough-Ergebnis für "MONTH" gibt in diesem Fall Werte bis zur Generation "Months" der Dimension "Year" zurück. Für Ebenen, die unterhalb der Generation "Months" liegen, werden keine Daten zurückgegeben, auch wenn Daten vorhanden sind.

Die Generationszuordnung eignet sich nicht gut für die Arbeit mit asymmetrischen (unregelmäßigen) Hierarchien. Eine Generationszuordnung hat keine Auswirkungen auf die Drillthrough-Abfrage in einer Dimension mit einer unregelmäßigen Hierarchie, es sei denn, der Drillthrough wird für ein Element in einer direkten Ahnenlinie zu der Generation ausgeführt, in der die Spaltenzuordnung definiert ist. Um unerwartete Ergebnisse zu vermeiden, empfiehlt Oracle die Verwendung einer Ebene-0-Zuordnung statt einer Generationszuordnung beim Drillthrough in asymmetrischen Hierarchien.

Weitere Informationen zur Funktionsweise der Generationszuordnung finden Sie unter Drillthrough-Anwendungsfall - Beispiel.

Ebene-0-Zuordnung

Bei einer Ebene-0-Zuordnung fügt Essbase der Filterbedingung alle Elemente der Blattebene aus der Hierarchie unterhalb der Zellenschnittmenge hinzu (unabhängig davon, welches Element im aktuellen Smart View-Rasterkontext zur Laufzeit ausgewählt ist).

Die Ebene-0-Zuordnung ist beim Arbeiten mit asymmetrischen (unregelmäßigen) Hierarchien hilfreich. In einer unregelmäßigen Hierarchie verwenden nicht alle Elemente derselben Ebene (L) dieselbe generationelle Tiefe (G) in der Modellstruktur.


Abbildung eines Elementbaums mit einer unregelmäßigen Hierarchie. Das oberste Element "Measures" ist die 1. Generation und sowohl Ebene 2 als auch Ebene 3. Die untergeordneten Elemente von "Measures", nämlich "Profit", "Inventory" und "Ratios", sind die 2. Generation und die Ebenen 1 und 2. Die Elemente "a" bis "h" sind untergeordnete Elemente von "Profit", "Inventory" und "Ratios" und sind die 3. Generation sowie die Ebenen 0 und 1. Die Elemente "aa", "ab", "ba", "bb" und "bc" sind untergeordnete Elemente von "a" und "b" und sind die 4. Generation sowie Ebene 0.

Ein gängiges Beispiel für eine unregelmäßige Hierarchie ist eine Mitarbeiterorganisationsstruktur.

Die Product-Dimension der Essbase-Cube-Modellstruktur für "Sample Basic" wäre eine unregelmäßige Hierarchie, wenn unter dem Element 100-10 ("Cola") einige untergeordnete Produkte hinzugefügt würden:


Ansicht einer abgeschnittenen Product-Hierarchie im geänderten Cube "Sample Basic". Enthält das Produkt 100 mit den untergeordneten Elementen 100-10, 100-20, 100-30 usw. 100-10 ist eingeblendet und zeigt die hinzugefügten untergeordneten Elemente 100-10-10, 100-10-20, 100-10-30 und 100-10-40.

Im folgenden Beispiel ordnet der Datenbankmanager die Quellspalte "PRODUCT" der Ebene 0 der Product-Dimension zu, wie im Folgenden dargestellt:

Externe Spalte In Bericht aufnehmen Essbase-Dimension Gen.-/Eb.-Filter
PRODUCT J Product Level0 [Level]

In diesem Fall wird die Abfragefilterbedingung für die Spalte "PRODUCT" vordefiniert:

SELECT "PRODUCT"
FROM <Query defined in Datasource>
WHERE  "PRODUCT" = <Level0> below <Grid context>

Das Drillthrough-Ergebnis für "PRODUCT" gibt alle Elemente der Ebene 0 unterhalb des "Product"-Elements zurück, das in der aktuellen Smart View-Zellenschnittmenge ausgewählt wurde.

Weitere Informationen zur Funktionsweise der Ebene-0-Zuordnung finden Sie unter Drillthrough-Anwendungsfall - Beispiel.

Drillthrough-Anwendungsfall - Beispiel

Im folgenden Beispiel für einen Anwendungsfall untersuchen wir die folgenden Faktoren, die Sie beim Festlegen des Zugriffs auf Drillthrough-Berichte für Smart View-Benutzer berücksichtigen müssen:

  • Einen Essbase-Cube für die Analyse

  • Ein externes Quellsystem für den Drillthrough

  • Eine Drillthrough-Berichtsdefinition mit einer vom Datenbankmanager definierten Spaltenzuordnung

  • Drillthrough-Berichtsergebnisse aus Smart View

Essbase-Cube

Dieses Beispiel basiert auf einem Cube, der dem Essbase-Demo-Cube "Sample Basic" ähnelt. Allerdings sind nur Daten auf Quartalsebene für die Time-Dimension im Cube vorhanden (Monate wurden entfernt). Angenommen, die untersten Elemente (Ebene 0) der Year-Dimension sind "Qtr1" bis "Qtr4":


Hierarchie "Year". "Year" ist der Name der Dimension, die "Qtr1", "Qtr2", "Qtr3" und "Qtr4" als untergeordnete Elemente der Ebene 0 enthält.

Obwohl in dieser Modellstrukturhierarchie keine Monate enthalten sind, stehen die monatlichen Daten extern zur Verfügung, indem Sie einen Drillthrough zum Quellsystem (hier: Oracle Database) ausführen und auf die Informationen in einer Spalte namens "DIMENSION_YEAR" zugreifen:


DIMENSION_YEAR-Spalte mit Monatswerten: Aug, Sep, Oct usw.

Angenommen, die restlichen Dimensionen entsprechen denen im Essbase-Demo-Cube "Sample Basic", der im Katalog "Dateien" im Abschnitt "Galerie" verfügbar ist. Eine schnelle Prüfung dieser Dimensionen findet in der folgenden Reihenfolge statt:

Die Measures-Dimension verfolgt KPIs für Accounts mithilfe dynamischer Berechnungen mit Essbase-Berechnungsformeln.


Measures-Dimension mit Elementen der 2. Generation: "Profit", "Inventory" und "Ratios". "Profit" ist eingeblendet und zeigt die untergeordneten Elemente "Margin" und "Total Expenses". "Margin" ist eingeblendet und zeigt die untergeordneten Elemente "Sales" und "COGS". Die Elemente "Inventory" und "Ratios" sind nicht eingeblendet, haben aber jeweils zusätzliche untergeordnete Elemente.

Die Product-Dimension verfolgt den aktiven Bestand und geht zwei Generationen in die Tiefe, und zwar in die 2. Generation namens "Category" (aufgefüllt mit 100 [Alias: "Colas"], 200, 300, 400 und "Diet") und in die 3. Generation/Ebene 0 namens "Product SKU" (aufgefüllt mit 100-10 [Alias: "Cola"], 100-20 usw.).


Product-Dimension mit Elementen der 2. Generation: "100", "200", "300", "400" und "Diet". Das Produktkategorieelement 100 ist eingeblendet und zeigt untergeordnete Elemente der Ebene 0 von folgenden Produkt-SKUs: 100-10, 100-20 und 100-30. Andere Produktkategorieelemente, "200", "300", "400" und "Diet", sind nicht eingeblendet, haben aber jeweils zusätzliche untergeordnete Elemente.

Die Market-Dimension bietet eine geografische Trennung mit zwei zusätzlichen Generationen unterhalb des Dimensionsnamens. Die 2. Generation entspricht der Region ("East", "West" usw.) und die 3. Generation entspricht dem US-Bundesstaat.


Market-Dimension mit Elementen der 2. Generation: "East", "West", "South" und "Central". Das Market-Regionselement "East" ist eingeblendet und zeigt die untergeordneten Elemente der Ebene 0 von einigen östlichen US-Bundesstaaten: New York, Massachusetts, Florida, Connecticut und New Hampshire. Andere Produktkategorieelemente, "West", "South" und "Central", sind nicht eingeblendet, haben aber jeweils zusätzliche untergeordnete Elemente.

Mit der Scenario-Dimension werden dem Cube mit zwei gespeicherten und zwei dynamischen Berechnungselementen Finanzreportinganalysen hinzugefügt:


Scenario-Dimension mit Elementen der 2. Generation: "Actual", "Budget", "Variance" und "Variance %". Die beiden letztgenannten Elemente sind dynamische Berechnungen, während "Actual" und "Budget" gespeicherte Elemente sind.

Externes Quellsystem

Angenommen, das Quellsystem in diesem Beispiel ist Oracle Database. Die vordefinierte Datenquelle in Essbase enthält eine SQL-Abfrage, die Informationen aus einer Tabelle in Oracle Database abruft.

Die Aufgabe des Datenbankmanagers besteht darin, eine Drillthrough-Berichtsdefinition basierend auf dieser Datenquelle zu entwerfen. Damit erhalten Smart View-Benutzer den richtigen Zugriff auf Quellsystemdaten, die über die Datenquelle abgerufen werden.

Die Abfrage in der Datenquelle kann ganz einfach wie folgt lauten:

SELECT * FROM TABLENAME

Sie kann auch verfeinert werden, um eine Aggregation oder eine Auswahl der externen Daten abzurufen, die Sie als Basis verwenden möchten.

Die Auswahl aus Ihrer hypothetischen Tabelle in Oracle Database enthält externe Spalten wie die in der Einführung. Einige dieser externen Spalten werden Essbase-Dimensionen zugeordnet, wenn wir die Drillthrough-Berichtsdefinition entwerfen.

Definition der Spaltenzuordnung

Die Spaltenzuordnung in diesem Beispiel verwendet eine Dimensionszuordnung für die Dimension "Product", eine Generationszuordnung für die Dimensionen "Year" und "Scenario" sowie eine Ebene-0-Zuordnung für die Dimension "Market".

Externe Spalte In Bericht aufnehmen Essbase-Dimension Gen.-/Eb.-Filter
DIMENSION_PRODUCT J Product Keine
DIMENSION_MARKET J Market Level0 [Level]
YEAR_PARENT J Year Quarter [Generation]
DIMENSION_SCENARIO J Scenario Scen [Generation]
SALES J Keine --
COGS J Keine --
MARKETING J Keine --
PAYROLL J Keine --
MISC J Keine --

Beispiele für Drillthrough-Berichte nach Spaltenzuordnungstyp

In den folgenden Beispielen für Drillthrough-Berichte sind die Abfrageergebnisse für den jeweiligen Spaltenzuordnungstyp dargestellt, den der Datenbankmanager als Teil der Drillthrough-Berichtsdefinition angibt.

Dimensionszuordnung - Beispiel 1

In diesem Beispiel wird die Dimensionszuordnung für die Product-Dimension ohne hierarchischen Filter verwendet:

Externe Spalte In Bericht aufnehmen Essbase-Dimension Gen.-/Eb.-Filter
DIMENSION_PRODUCT J Product Keine

In diesem Fall ist ein Drillthrough, der von einer Zellenschnittmenge ausgeführt wird, nicht an eine bestimmte Generation oder Ebene gebunden.

Ein Drillthrough von (Year, Sales, West, Actual, Cola) ergibt daher:


Smart View-Raster mit Benutzerauswahl des Zellenwertes "14862" bei der Schnittmenge von (Year, Sales, West, Actual, Cola)

Es wird ein Drillthrough-Bericht zurückgegeben, der nach dem aktuellen Rasterkontext für "Product" gefiltert ist, nämlich 100-10 (100-10 ist die Produkt-SKU, die mit dem Aliasnamen "Cola" verknüpft ist). Alle aus der Spalte "DIMENSION_PRODUCT" im Quellsystem abgerufenen Werte sind Datensätze mit "DIMENSION_PRODUCT = 100-10".


Drillthrough-Bericht mit Datensätzen nur für die Produkt-SKU 100-10 und einer SALES-Summe von 14862

Um Drillthrough-Berichte beim Testen zu validieren, prüfen Sie, ob die Summe für die Kennzahl im Bericht mit der Zellenschnittmenge übereinstimmt, von der der Drillthrough ausgeführt wurde. Im oben dargestellten Beispiel ist der Drillthrough-Bericht validiert, weil die Zelle, von der der Drill ausgeführt wurde, mit dem Wert (14862) der Summe der zugeordneten Spalte im Drillthrough-Bericht übereinstimmt.

Die Abfrage, die Essbase verwendet, um den oben dargestellten Drillthrough-Bericht zu erstellen, lautet:

SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE (
"YEAR_PARENT" = 'Qtr3' OR
"YEAR_PARENT" = 'Qtr4' OR
"YEAR_PARENT" = 'Qtr1' OR
"YEAR_PARENT" = 'Qtr2') 
AND 
"DIMENSION_PRODUCT" = '100-10'
AND (
"DIMENSION_MARKET" = 'Oregon' OR
"DIMENSION_MARKET" = 'California' OR
"DIMENSION_MARKET" = 'Washington' OR
"DIMENSION_MARKET" = 'Utah' OR
"DIMENSION_MARKET" = 'Nevada')
AND 
"DIMENSION_SCENARIO" = 'Actual'

Dimensionszuordnung - Beispiel 2

Ausgehend vom vorherigen Beispiel können wir die Ausgabe bei einem Drillthrough zu einer höheren Ebene der Product-Dimension untersuchen.

Bei einem Drillthrough von (Year, Sales, West, Actual, Colas) wird Folgendes zurückgegeben:


Smart View-Raster mit Benutzerauswahl des Zellenwertes "28306" bei der Schnittmenge von (Year, Sales, West, Actual, Cola)

Es wird ein Drillthrough-Bericht zurückgegeben, der nach dem aktuellen Rasterkontext für "Product" gefiltert ist, nämlich 100 (100 ist die Produktkategorie, die mit dem Aliasnamen "Colas" verknüpft ist). Alle aus der Spalte "DIMENSION_PRODUCT" im Quellsystem abgerufenen Werte sind Datensätze mit "DIMENSION_PRODUCT = 100".


Drillthrough-Bericht mit Datensätzen nur für die Produktkategorie 100 und einer SALES-Summe von 23806

Der Drillthrough-Bericht ist validiert, weil die Zelle, von der der Drill ausgeführt wurde, mit dem Wert (23806) der Summe der zugeordneten Spalte im Drillthrough-Bericht übereinstimmt.

Die Abfrage, die Essbase verwendet, um den oben dargestellten Drillthrough-Bericht zu erstellen, lautet:

SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE (
"YEAR_PARENT" = 'Qtr3' OR
"YEAR_PARENT" = 'Qtr4' OR
"YEAR_PARENT" = 'Qtr1' OR
"YEAR_PARENT" = 'Qtr2') 
AND 
"DIMENSION_PRODUCT" = '100'
AND (
"DIMENSION_MARKET" = 'Oregon' OR
"DIMENSION_MARKET" = 'California' OR
"DIMENSION_MARKET" = 'Washington' OR
"DIMENSION_MARKET" = 'Utah' OR
"DIMENSION_MARKET" = 'Nevada')
AND 
"DIMENSION_SCENARIO" = 'Actual'

Generationszuordnung - Beispiel 1

In diesem Beispiel wird die Generationszuordnung für die Year-Dimension mit einem Filter für die Generation "Quarter" verwendet:

Externe Spalte In Bericht aufnehmen Essbase-Dimension Gen.-/Eb.-Filter
YEAR_PARENT J Year Quarter [Generation]

Der von einer Zellenschnittmenge ausgeführte Drillthrough ist an die angegebene Generation von "Year" gebunden.

Bei einem Drillthrough von (Qtr2, Sales, Market, Actual, Cola) wird Folgendes zurückgegeben:


Smart View-Raster mit Benutzerauswahl des Zellenwertes "16048" bei der Schnittmenge von (Qtr2, Sales, Market, Actual, Cola)

Es wird ein Drillthrough-Bericht zurückgegeben, der nach dem zugeordneten Generationskontext für "Year" gefiltert ist, also "Quarters". Weil sich "Qtr2" im ausgewählten Rasterkontext befindet, sind alle aus der Spalte "YEAR_PARENT" im Quellsystem abgerufenen Werte Datensätze mit "YEAR_PARENT = Qtr2".


Drillthrough-Bericht mit Datensätzen nur für "Qtr2" und einer SALES-Summe von 16048

Der Drillthrough-Bericht ist validiert, weil die Zelle, von der der Drill ausgeführt wurde, mit dem Wert (16048) der Summe der zugeordneten Spalte im Drillthrough-Bericht übereinstimmt.

Die Abfrage, die Essbase verwendet, um den oben dargestellten Drillthrough-Bericht zu erstellen, lautet:

SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE 
"YEAR_PARENT" = 'Qtr2'
AND
"DIMENSION_PRODUCT" = '100-10'
AND (
"DIMENSION_MARKET" = 'Oregon' OR 
"DIMENSION_MARKET" = 'New York' OR 
"DIMENSION_MARKET" = 'Oklahoma' OR 
"DIMENSION_MARKET" = 'California' OR 
"DIMENSION_MARKET" = 'Florida' OR 
"DIMENSION_MARKET" = 'Washington' OR 
"DIMENSION_MARKET" = 'Utah' OR 
"DIMENSION_MARKET" = 'Iowa' OR 
"DIMENSION_MARKET" = 'New Mexico' OR 
"DIMENSION_MARKET" = 'Massachusetts' OR 
"DIMENSION_MARKET" = 'Texas' OR 
"DIMENSION_MARKET" = 'Illinois' OR 
"DIMENSION_MARKET" = 'Colorado' OR 
"DIMENSION_MARKET" = 'Connecticut' OR 
"DIMENSION_MARKET" = 'New Hampshire' OR 
"DIMENSION_MARKET" = 'Missouri' OR 
"DIMENSION_MARKET" = 'Louisiana' OR 
"DIMENSION_MARKET" = 'Ohio' OR 
"DIMENSION_MARKET" = 'Wisconsin' OR 
"DIMENSION_MARKET" = 'Nevada')
AND
"DIMENSION_SCENARIO" = 'Actual'

Generationszuordnung - Beispiel 2

Ausgehend vom vorherigen Beispiel können wir die Ausgabe bei einem Drillthrough zu einer höheren Ebene der Year-Dimension untersuchen.

Bei einem Drillthrough von (Year, Sales, Market, Actual, Cola) wird Folgendes zurückgegeben:


Smart View-Raster mit Benutzerauswahl des Zellenwertes "62824" bei der Schnittmenge von (Year, Sales, Market, Actual, Cola)

Es wird ein Drillthrough-Bericht zurückgegeben, der nach der zugeordneten Quarters-Generation von "Year" gefiltert ist. Die aus der Spalte "YEAR_PARENT" im Quellsystem abgerufenen Werte sind "Qtr1", "Qtr2", "Qtr3" und "Qtr4".


Drillthrough-Bericht mit Datensätzen für alle Quartale von "Year" und einer SALES-Summe von 62824

Der Drillthrough-Bericht ist validiert, weil die Zelle, von der der Drill ausgeführt wurde, mit dem Wert (62824) der Summe der zugeordneten Spalte im Drillthrough-Bericht übereinstimmt.

Die Abfrage, die Essbase verwendet, um den oben dargestellten Drillthrough-Bericht zu erstellen, lautet:

SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE (
"YEAR_PARENT" = 'Qtr3' OR 
"YEAR_PARENT" = 'Qtr4' OR 
"YEAR_PARENT" = 'Qtr1' OR 
"YEAR_PARENT" = 'Qtr2')
AND
"DIMENSION_PRODUCT" = '100-10'
AND (
"DIMENSION_MARKET" = 'Oregon' OR 
"DIMENSION_MARKET" = 'New York' OR 
"DIMENSION_MARKET" = 'Oklahoma' OR 
"DIMENSION_MARKET" = 'California' OR 
"DIMENSION_MARKET" = 'Florida' OR 
"DIMENSION_MARKET" = 'Washington' OR 
"DIMENSION_MARKET" = 'Utah' OR 
"DIMENSION_MARKET" = 'Iowa' OR 
"DIMENSION_MARKET" = 'New Mexico' OR 
"DIMENSION_MARKET" = 'Massachusetts' OR 
"DIMENSION_MARKET" = 'Texas' OR 
"DIMENSION_MARKET" = 'Illinois' OR 
"DIMENSION_MARKET" = 'Colorado' OR 
"DIMENSION_MARKET" = 'Connecticut' OR 
"DIMENSION_MARKET" = 'New Hampshire' OR 
"DIMENSION_MARKET" = 'Missouri' OR 
"DIMENSION_MARKET" = 'Louisiana' OR 
"DIMENSION_MARKET" = 'Ohio' OR 
"DIMENSION_MARKET" = 'Wisconsin' OR 
"DIMENSION_MARKET" = 'Nevada')
AND
"DIMENSION_SCENARIO" = 'Actual'

Beispiel für Ebene-0-Zuordnung

In diesem Beispiel wird die Ebene-0-Zuordnung für die Market-Dimension mit einem Filter für alle Elemente der Ebene 0 (Blattelemente) verwendet:

Externe Spalte In Bericht aufnehmen Essbase-Dimension Gen.-/Eb.-Filter
DIMENSION_MARKET J Market Level0 [Level]

In diesem Fall gibt ein Drillthrough, der von einer Zellenschnittmenge ausgeführt wird, alle untersten Elemente für "Market" zurück.

Bei einem Drillthrough von (Year, Sales, Market, Actual, Cola) wird Folgendes zurückgegeben:


Smart View-Raster mit Benutzerauswahl des Zellenwertes "62824" bei der Schnittmenge von (Year, Sales, Market, Actual, Cola)

Es wird ein Drillthrough-Bericht zurückgegeben, der die Elemente der untersten Ebene der Market-Dimension enthält, nämlich "States". Alle aus der Spalte "DIMENSION_MARKET" im Quellsystem abgerufenen Werte sind Datensätze mit US-Bundesstaaten.


Drillthrough-Bericht mit Datensätzen für alle Blattelemente (US-Bundesstaaten) von "Market" und einer SALES-Summe von 62824

Der Drillthrough-Bericht ist validiert, weil die Zelle, von der der Drill ausgeführt wurde, mit dem Wert (62824) der Summe der zugeordneten Spalte im Drillthrough-Bericht übereinstimmt.

Die Abfrage, die Essbase verwendet, um den oben dargestellten Drillthrough-Bericht zu erstellen, lautet:

SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE (
"YEAR_PARENT" = 'Qtr3' OR 
"YEAR_PARENT" = 'Qtr4' OR 
"YEAR_PARENT" = 'Qtr1' OR 
"YEAR_PARENT" = 'Qtr2')
AND
"DIMENSION_PRODUCT" = '100-10'
AND (
"DIMENSION_MARKET" = 'Oregon' OR 
"DIMENSION_MARKET" = 'New York' OR 
"DIMENSION_MARKET" = 'Oklahoma' OR 
"DIMENSION_MARKET" = 'California' OR 
"DIMENSION_MARKET" = 'Florida' OR 
"DIMENSION_MARKET" = 'Washington' OR 
"DIMENSION_MARKET" = 'Utah' OR 
"DIMENSION_MARKET" = 'Iowa' OR 
"DIMENSION_MARKET" = 'New Mexico' OR 
"DIMENSION_MARKET" = 'Massachusetts' OR 
"DIMENSION_MARKET" = 'Texas' OR 
"DIMENSION_MARKET" = 'Illinois' OR 
"DIMENSION_MARKET" = 'Colorado' OR 
"DIMENSION_MARKET" = 'Connecticut' OR 
"DIMENSION_MARKET" = 'New Hampshire' OR 
"DIMENSION_MARKET" = 'Missouri' OR 
"DIMENSION_MARKET" = 'Louisiana' OR 
"DIMENSION_MARKET" = 'Ohio' OR 
"DIMENSION_MARKET" = 'Wisconsin' OR 
"DIMENSION_MARKET" = 'Nevada')
AND
"DIMENSION_SCENARIO" = 'Actual'