Introductie tot Essbase drill-through

Wanneer Smart View gebruikers meer informatie nodig hebben dan wat er beschikbaar is in de kubus, kunnen drill-through-rapporten aangepaste toegang tot externe brongegevens bieden.

Gezien de gedetailleerde granulatie van gegevens die in datawarehouses en andere brongegevenssystemen worden bewaard, is het volume van externe gegevens vaak te groot om voor analyses te kunnen worden gebruikt. Als u een Essbase kubus wilt vullen met de optimale hoeveelheid gegevens voor analyses, zult u vaak de brongegevens aggregeren (bijvoorbeeld dagelijkse transactiewaarden aggregeren naar wekelijkse of maandelijkse totalen) en deze geaggregeerde gegevens laden in de Essbase kubus.

Als Smart View gebruikers bij volgende analyses in Essbase afwijkingen vinden die ze willen onderzoeken, kunnen ze met een drill-through snel de onderliggende brongegevens bekijken om de oorzaak te achterhalen. Als bijvoorbeeld de gegevens voor augustus onverwacht afwijken van juli, kunnen gebruikers met een drill-through naar het bronsysteem de record(s) zoeken die hiervoor verantwoordelijk zijn.

Als databasebeheerders Smart View gebruikers aanvullende informatie willen geven over waaruit een of meer gegevenswaarden in de kubus bestaan, kunnen ze drill-through-rapporten implementeren om diepere inzichten in de brongegevens te verschaffen voordat de gegevens worden geaggregeerd en in Essbase worden geladen.

Drill-through-rapporten zijn één manier waarop u een interface voor gegevensuitwisseling tussen Essbase en externe bronsystemen kunt maken.

Neem het voorbeeld van een relationele tabel, SB_DT, met alle records geselecteerd. De SQL-zoekvraag is:

SELECT * FROM SB_DT

In deze illustratie is het zoekvraagresultaat (in SQL Developer) afgekapt vanwege de lengte, aangezien de tabel duizenden records bevat:


Weergave van tabelgegevens in SQL Developer. Duizenden rijen waarbij kolom DIMENSION_PRODUCT waarden bevat voor product-SKU's, kolom DIMENSION_MARKET Amerikaanse staten bevat, kolom DIMENSION_YEAR maanden bevat, kolom DIMENSION_SCENARIO werkelijke en gebudgetteerde waarden, en kolommen genaamd SALES, COGS, MARKETING en PAYROLL met getallen bevat.

Kijk naar dezelfde tabel met minder records geselecteerd. Als de SQL-selectie bijvoorbeeld wordt beperkt tot benoemde kolommen, worden meeteenheden geaggregeerd en wordt een filter (WHERE-clausule) toegepast,

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

vervolgens wordt het zoekvraagresultaat geaggregeerd en gefilterd:


Weergave van tabelgegevens in SQL Developer. 12 rijen waarbij kolom DIMENSION_PRODUCT waarden bevat voor product-SKU's, kolom DIMENSION_MARKET California bevat, kolom YEAR_PARENT Qtr4 bevat en kolom DIMENSION_SCENARIO werkelijke waarden en kolommen genaamd SALES en COGS met getallen bevat.

U kunt de kracht van RDBMS-zoekvragen in Essbase gebruiken met gegevensbronnen, het laden van gegevens en drill-through-rapporten. Drill-through-rapporten bieden rechtstreeks vanuit een Essbase zoekvraag in een Smart View werkblad gefilterde toegang tot een externe gegevensbron.

Drill-through-terminologie

In dit onderwerp wordt de betekenis van de termen met betrekking tot Essbase drill-throughs uitgelegd.

Drill-through uitvoeren

Met een drill-through wordt toegang verkregen tot externe gegevens van een of meer Essbase celintersecties in een Smart View werkblad. De drill-through-actie verschaft aanvullende informatie buiten de Essbase kubus. Er ontstaat behoefte aan een drill-through wanneer Essbase geaggregeerde ('samengevatte') waarden bevat en het externe bronsysteem gegevens beschikbaar kan maken die gedetailleerder zijn.

  • Als er bij een drill-through een zoekvraag wordt uitgevoerd, worden de resultaten weergegeven in een nieuw werkblad dat wordt geopend. Dit werkblad is het drill-through-rapport. Het rapport bevat informatie die is opgehaald uit de externe brongegevens.

  • Als bij een drill-through een URL wordt gestart, wordt deze in een webbrowser geopend. Er kunnen parameters aan de URL worden doorgegeven om een aangepaste zoekactie op de website uit te voeren.

Drill-through-rapport

Een drill-through-rapport is het resultaat van een drill-through-bewerking die wordt uitgevoerd vanaf een Smart View raster om aanvullende gegevens van een bronsysteem buiten Essbase te verkrijgen.

Drill-through-rapportdefinitie

Als u een databasebeheerder of hoger bent, is een drill-through-rapportdefinitie de manier om de toegang te definiëren die uw gebruikers tot externe gegevens moeten hebben. U maakt drill-through-rapportdefinities in de Essbase webinterface of REST-API. Deze worden aan de kubus gekoppeld. Als onderdeel van de definitie geeft u het volgende op:

  • Een kolomtoewijzing. Hiermee geeft u op welke externe kolommen in de rapporten moeten worden weergegeven en hoeveel hiërarchische (generationele) toegangsdiepte u wilt bieden (bijvoorbeeld: wilt u dagelijkse, maandelijkse of driemaandelijkse gegevens van de externe bron weergeven?)

  • Een drillbare regio. Hiermee wordt opgegeven welke celintersecties van uw kubus toegang bieden voor drill-through-rapporten (of een URL) met aanvullende externe gegevens. In de volgende voorbeelden hebben drillbare regio's in de POV van het Smart View werkblad met de celstijlen de kleurcodering blauw gekregen. U geeft drillbare regio's op met een van de Functies onderdelenset die in Essbase beschikbaar zijn. In de navolgende voorbeelden is de drillbare regio @DESCENDANTS("Measures") voor Sample Basic.

  • Een toewijzing voor runtimeparameters, als een zoekvraag met parameters is geïmplementeerd in de onderliggende gegevensbronzoekvraag (optioneel).

Drill-through-rapportdefinities zijn meestal afhankelijk van vooraf gedefinieerde verbindingen en gegevensbronnen in Essbase (tenzij u toegang definieert tot een bestand dat is geladen naar Essbase). Bij de verbinding worden de verificatiedetails voor de externe bron opgeslagen. U kunt met een of meer gegevensbronnen die u definieert, via een opgegeven verbinding een aanvankelijke zoekvraag voor het ophalen uit de externe bron opgeven (bijvoorbeeld: alles selecteren van een bepaalde tabel). Met de zoekvraag die u in de gegevensbron opgeeft, kan om te beginnen een subset gegevens van elke gewenste grootte worden opgehaald. Later kunt u de toegang tot gegevens beperken wanneer u de drill-through-rapportdefinitie maakt of bewerkt.

Workflow voor het ontwerpen van drill-through-rapporten

U gebruikt als databasebeheerder de volgende workflow om een drill-through voor uw kubus te ontwerpen en testen.

  1. Gegevenstoegang voorbereiden

    1. Upload een gegevensbestand, OF
    2. Verkrijg autorisatiegegevens die nodig zijn om toegang te krijgen tot een extern bronsysteem
    3. Definieer een verbinding en een of meer gegevensbronnen naar het gegevensbestand of naar de externe bron. Raadpleeg Een algemene verbinding en gegevensbron maken of Een verbinding en gegevensbron op applicatieniveau maken.
  2. Drill-through-rapportdefinities voor de kubus maken

    1. de kolomtoewijzing definiëren
    2. de drillbare regio definiëren
    3. runtimeparameters toewijzen, indien gebruikt
  3. De drill-through-rapporten testen

    1. Smart View voorbereiden

      • de laatste versie installeren
      • verbinden met de kubus
      • celstijlen activeren om drillbare regio's te tonen
    2. Drill-through vanaf verschillende celintersecties in Smart View

      • drill-through vanaf één intersectie
      • drill-through vanaf meerdere intersecties
      • drill-through vanaf cellen van verschillende generaties
    3. De drill-through-rapportuitvoer en het platformlog controleren

In deze workflow en de rest van deze introductie wordt aangegeven wat u moet weten om drill-through-toegang tot externe brongegevens in een RDBMS te ontwerpen en testen. Zie Drill-through naar een URL als u meer geïnteresseerd bent in de implementatie van een drill-through-URL.

Als u de verschillende toegangsvereisten voor het ontwerp en gebruik van drill-through wilt begrijpen, raadpleegt u Toegang tot drill-through-rapporten.

De werking van drill-through

Ga ervan uit dat in dit voorbeeld de Sample Basic kubus in Essbase Qtr1-Qtr4 als de laagste niveaus van de tijddimensie heeft.


Year-hiërarchie Year is de dimensienaam, met onderliggende niveau 0-onderdelen Qtr1, Qtr2, Qtr3 en Qtr4.

Er zijn geen maanden in de structuurhiërarchie, maar de maandelijkse gegevens zijn beschikbaar in het externe bronsysteem, in een tabelkolom genaamd DIMENSION_YEAR:


Kolom DIMENSION_YEAR met maandwaarden Aug, Sep, Oct, enzovoort

Wanneer een Smart View gebruiker een drill-through uitvoert op een celintersectie van een waarde Sales voor Qtr1:


Smart View raster met gebruikersselectie op celwaarde 1998 bij intersectie van (Qtr1, Sales, New York, Actual, Cola)

Het drill-through-rapport dat door Essbase wordt gegenereerd, is


Drill-through-rapport van het bronsysteem dat alleen records retourneert waarbij YEAR_PARENT=Qtr1 en dat een SALES-totaal van 1998 weergeeft

Het drill-through-rapport toont aanvullende informatie van de brondatabase over Sales voor Qtr1. Zoals u ziet, zijn de waarden van Jan, Feb en Mar het totaal voor Qtr1: 678+645+675=1998.

De zoekvraag die Essbase intern gebruikt om het bovenstaande drill-through-rapport te genereren is:

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'

Beheerders hebben vanuit het platformlog toegang tot de exacte zoekvragen achter elk drill-through-rapport.

Drill-through-rapportdefinitie

Als u een databasebeheerder of hoger bent, is een drill-through-rapportdefinitie de manier om de toegang te definiëren die uw gebruikers tot externe gegevens moeten hebben.

Opmerking:

Hernoem drill-through-rapportdefinities niet. Drill-through-rapportdefinities die zijn hernoemd, kunnen mogelijk niet worden bewerkt en werken mogelijk niet zoals verwacht.

Om het drill-through-rapport te activeren dat is gegenereerd in De werking van drill-through, heeft de databasebeheerder een drill-through-rapportdefinitie gemaakt die is gekoppeld aan Sample Basic. Het drill-through-rapport verwijst naar een vooraf gedefinieerde gegevensbron die een zoekvraag gebruikt om externe gegevens op te halen uit SB_DT (de hypothetische bronsysteemtabel die wordt genoemd in Introductie tot Essbase drill-through).

De databasebeheerder heeft in de drill-through-rapportdefinitie de volgende kolomtoewijzing opgegeven:

Externe kolom Opnemen in rapport Essbase dimensie Generatie-/niveaufilter
DIMENSION_PRODUCT J Product Product-SKU [generatie]
DIMENSION_MARKET J Markt Staat [generatie]
DIMENSION_YEAR J Year Geen
DIMENSION_SCENARIO J Scenario Niveau0 [niveau]
SALES J Geen --
COGS J Geen --
YEAR_PARENT J Year Quarter [generatie]

Met de kolomtoewijzing wordt gedefinieerd welke externe bronkolommen in het rapport moeten worden opgenomen en aan welke Essbase dimensies deze kolommen zijn toegewezen en wordt (optioneel) een generatie-/niveaufiltervoorwaarde gedefinieerd waarmee wordt aangegeven hoe diep er toegang kan worden verkregen.

In de toewijzingssjabloon hierboven heeft de databasebeheerder het volgende gedaan:

  • De externe DIMENSION_PRODUCT-kolom is toegewezen aan de generatie genaamd Product SKU in de Essbase dimensie Product. Dit type kolomtoewijzing wordt generatietoewijzing genoemd.

  • De externe DIMENSION_MARKET-kolom is toegewezen aan de generatie genaamd State in de Essbase dimensie Market (dit is nog een voorbeeld van generatietoewijzing).

  • De externe DIMENSION_YEAR-kolom is toegewezen aan de dimensie Year, zonder verder filter. Dit type kolomtoewijzing wordt dimensietoewijzing genoemd.

  • De externe DIMENSION_SCENARIO-kolom is toegewezen aan het laagste niveau (niveau 0) van de Essbase dimensie Scenario. Dit type kolomtoewijzing wordt niveau 0-toewijzing genoemd.

  • De kolommen SALES en COGS zijn niet ergens aan toegewezen, maar deze kolommen zijn geselecteerd om in het rapport te worden opgenomen. Het is meestal niet nodig kolommen aan de Essbase dimensie Accounts toe te wijzen.

  • Deze heeft de externe YEAR_PARENT-kolom toegewezen aan de generatie genaamd Quarter in de dimensie Year.

Opties voor kolomtoewijzing

Omdat de zoekvraag die door Essbase wordt gegenereerd om gegevens van de gegevensbron op te halen, in hoge mate afhankelijk is van de gedefinieerde kolomtoewijzing, is het nuttig inzicht te krijgen in de verschillende manieren waarop kolommen worden toegewezen en in welke gevallen een methode handig is. De typen kolomtoewijzing zijn:

  • Dimensietoewijzing

  • Generatietoewijzing

  • Niveau 0-toewijzing

Dimensietoewijzing

Bij dimensietoewijzing kunt u een brongegevenskolom direct toewijzen aan een dimensienaam in de Essbase kubus. Dit type toewijzing is nuttig als de brongegevenskolom alle lagen gegevens bevat die worden vertegenwoordigd in de bijbehorende dimensie van de kubus.

Een brongegevenskolom MONTH bijvoorbeeld bevat een combinatie van alle zelfde generaties/niveaus als de dimensie, zoals weergegeven,


Afgekapte relationele kolom MONTH en afgekapte hiërarchie Year van Sample Basic naast elkaar weergegeven. Kolom MONTH bevat records: Jan, Qtr3, Feb, Qtr1, Year, Aug, enzovoort. Hiërarchie Year bevat Qtr1 met onderliggende onderdelen Jan, Feb, Mar, Qtr2 met onderliggende onderdelen Apr, May, Jun, enzovoort.

zodat het handig is om de kolom MONTH toe te wijzen aan de Essbase dimensie Year, zonder verder filter:

Externe kolom Opnemen in rapport Essbase dimensie Generatie-/niveaufilter
MONTH J Year Geen

Wanneer u een dimensietoewijzing voor MONTH gebruikt zoals hierboven wordt getoond, wordt de filtervoorwaarde (de WHERE-clausule van de SQL-zoekvraag) niet vooraf gedefinieerd voor de kolom MONTH:

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

en het drill-through-resultaat voor MONTH retourneert de huidige Smart View celintersectie.

Meer informatie over hoe dimensietoewijzing werkt in Voorbeeld van het gebruik van drill-through.

Generatietoewijzing

Bij generatietoewijzing wijst u een brongegevenskolom toe aan een benoemde generatie in een Essbase dimensie. Dit type toewijzing is handig als de brongegevenskolom alleen de gegevenslaag bevat die wordt vertegenwoordigd in een specifieke generatie van een dimensie in de kubus. Als de brongegevenskolom MONTH bijvoorbeeld alleen maanden bevat en de dimensie Year maanden als generatie 3 heeft,


Afgekapte relationele kolom MONTH en afgekapte hiërarchie Year van Sample Basic naast elkaar weergegeven. bevat kolom MONTH alleen maanden als records: Jan, Feb, Feb, Mar, Mar, Apr, May, enzovoort. Hiërarchie Year bevat Qtr1 met onderliggende onderdelen Jan, Feb, Mar, Qtr2 met onderliggende onderdelen Apr, May, Jun, enzovoort.

is de beste keuze de bronkolom toe te wijzen aan generatie 3 (Months) van de dimensie Year:

Externe kolom Opnemen in rapport Essbase dimensie Generatie-/niveaufilter
MONTH J Year Maanden [generatie]

Wanneer u een generatietoewijzing voor MONTH gebruikt zoals hierboven wordt getoond, wordt de filtervoorwaarde van de zoekvraag vooraf gedefinieerd voor de kolom MONTH:

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

en het drill-through-resultaat voor MONTH retourneertwaarden omlaag in de generatie Months van de dimensie Year. Er worden geen gegevens (indien aanwezig) voor een niveau lager dan Months geretourneerd.

Generatietoewijzing is niet ideaal voor asymmetrische (ongelijkmatige) hiërarchieën. Een generatietoewijzing heeft geen effect op de drill-through-zoekvraag in een dimensie met een ongelijkmatige hiërarchie, tenzij de drill-through wordt uitgevoerd voor een onderdeel in een directe lijn van leden op verschillende niveaus naar de generatie waar de kolomtoewijzing is gedefinieerd. Het wordt aanbevolen niveau 0-toewijzing te gebruiken in plaats van generatietoewijzing voor een drill-through voor asymmetrische hiërarchieën om onverwachte resultaten te voorkomen.

Meer informatie over hoe generatietoewijzing werkt in Voorbeeld van het gebruik van drill-through.

Niveau 0-toewijzing

Essbase voegt bij niveau 0-toewijzing alle onderdelen op eindnodeniveau van de hiërarchie onder de celintersectie (ongeacht welk onderdeel is geselecteerd in de huidige Smart View rastercontext tijdens runtime) toe aan de filtervoorwaarde.

Niveau 0-toewijzing is nuttig bij het werken met asymmetrische (ongelijkmatige) hiërarchieën. In een ongelijkmatige hiërarchie delen niet alle onderdelen van hetzelfde niveau (L) dezelfde generatiediepte (G) in de structuur.


Illustratie van onderdelenstructuur in ongelijkmatige hiërarchie Measures, het onderdeel bovenaan, is generatie 1 en zowel niveau 2 als niveau 3. Onderliggende onderdelen van Measures, Profit, Inventory en Ratios zijn generatie 2 en niveaus 1 en 2. Onderdelen a tot en met h zijn onderliggende onderdelen van Profit, Inventory en Ratios, en zijn generatie 3 en niveaus 0 en 1. Onderdelen aa, ab, ba, bb en bc zijn onderliggende onderdelen van a en b, en zijn generatie 4, niveau 0.

Een algemeen voorbeeld van een ongelijkmatige hiërarchie is een organisatiestructuur van een werknemer.

De dimensie Product van de Essbase kubusstructuur voor Sample Basic zou een ongelijkmatige hiërarchie zijn als er enkele onderliggende producten onder 100-10 (Cola) zouden worden toegevoegd:


Weergave van een afgekapte hiërarchie Product van gewijzigde Sample Basic. Bevat product 100 met onderliggende onderdelen 100-10, 100-20, 100-30, etc. 100-10 is uitgevouwen om de toegevoegde onderliggende onderdelen 100-10-10, 100-10-20, 100-10-30 en 100-10-40 te tonen.

Als de databasebeheerder de bronkolom PRODUCT toewijst aan niveau 0 van de dimensie Product, zoals getoond:

Externe kolom Opnemen in rapport Essbase dimensie Generatie-/niveaufilter
PRODUCT J Product Niveau0 [niveau]

wordt de filtervoorwaarde van de zoekvraag vooraf gedefinieerd voor de kolom PRODUCT:

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

en retourneert het drill-through-resultaat voor PRODUCT alle niveau 0-onderdelen onder het onderdeel Product dat is geselecteerd in de huidige Smart View celintersectie.

Meer informatie over hoe niveau 0-toewijzing werkt in Voorbeeld van het gebruik van drill-through.

Voorbeeld van het gebruik van drill-through

In dit voorbeeld onderzoeken we de volgende factoren waarmee u rekening moet houden bij het ontwerp van de drill-through-rapporttoegang voor Smart View gebruikers:

  • Een Essbase kubus voor analyse

  • Een extern bronsysteem voor drill-through

  • Een drill-through-rapportdefinitie met een kolomtoewijzing die door de databasebeheerder is gedefinieerd

  • Drill-through-rapportresultaten van Smart View

Essbase kubus

In dit voorbeeld is de basis een kubus die vergelijkbaar is met de Essbase demokubus, Sample Basic, maar er zijn alleen gegevens op kwartaalniveau voor de tijddimensie aanwezig in de kubus (maanden zijn verwijderd). Stel dat de dimensie Year Qtr1-Qtr4 als onderdelen van het laagste niveau (niveau 0) heeft:


Year-hiërarchie Year is de dimensienaam, met onderliggende niveau 0-onderdelen Qtr1, Qtr2, Qtr3 en Qtr4.

Hoewel er geen maanden in deze structuurhiërarchie bestaan, zijn de maandelijkse gegevens extern beschikbaar door een drill-through-bewerking voor het bronsysteem (ga ervan uit dat dit Oracle Database is) uit te voeren en toegang te verkrijgen tot informatie vanuit een kolom genaamd DIMENSION_YEAR:


Kolom DIMENSION_YEAR met maandwaarden Aug, Sep, Oct, enzovoort

Voor de resterende dimensies wordt ervan uitgegaan dat deze hetzelfde zijn als in de Essbase demokubus Sample Basic die beschikbaar is in de sectie 'Galerij' van de bestandscatalogus. Een snel overzicht hiervan op volgorde:

Met de dimensie Measures worden kernprestatie-indicatoren voor accounts bijgehouden met behulp van dynamische berekeningen met Essbase berekeningsformules.


Dimensie Measures met generatie 2-onderdelen Profit, Inventory en Ratios. Profit is uitgevouwen om de onderliggende onderdelen Margin en Total Expenses te tonen. Margin is uitgevouwen om de onderliggende onderdelen Sales en COGS te tonen. Inventory en Ratios zijn niet uitgevouwen maar elk heeft aanvullende onderliggende onderdelen.

Met de dimensie Product wordt de actieve voorraad bijgehouden, waarbij er twee generaties omlaag wordt gegaan naar generatie 2 genaamd Category (gevuld door 100 [alias Colas], 200, 300, 400 en Diet) en generatie 3/niveau 0 genaamd Product SKU (gevuld door 100-10 [alias Cola], 100-20, enzovoort).


Dimensie Product met generatie 2-leden 100, 200, 300, 400 en Diet. Onderdeel 100 van de categorie Product is uitgevouwen om onderliggende onderdelen van niveau 0 van product-SKU's te tonen: 100-10, 100-20 en 100-30. Andere productcategorie-onderdelen, 200, 300, 400 en Diet, zijn niet uitgevouwen maar elk heeft aanvullende onderliggende onderdelen.

De dimensie Market biedt geografische scheiding met twee aanvullende generaties onder de dimensienaam. Generatie 2 is Region (East, West, enzovoort) en generatie 3 is State.


Dimensie Market met generatie 2-onderdelen East, West, South en Central. Onderdeel East van regio Market is uitgevouwen om onderliggende onderdelen op niveau 0 te tonen van enkele oostelijke Amerikaanse staten: New York, Massachusetts, Florida, Connecticut en New Hampshire. Andere productcategorie-onderdelen, West, South en Central, zijn niet uitgevouwen maar elk heeft aanvullende onderliggende onderdelen.

Met de dimensie Scenario wordt een analyse voor financiële rapportage aan de kubus toegevoegd met twee opgeslagen en twee dynamisch berekende onderdelen:


Scenariodimensie met generatie 2-onderdelen Actual, Budget, Variance en Variance %. De laatste twee onderdelen zijn ingesteld als 'Dynamisch berekenen', terwijl Actual en Budget worden opgeslagen.

Extern bronsysteem

Het bronsysteem in dit voorbeeld is Oracle Database. De vooraf gedefinieerde gegevensbron in Essbase bevat een SQL-zoekvraag waarmee informatie uit een tabel in Oracle Database wordt opgehaald.

Het is onze taak als databasebeheerder op basis van deze gegevensbron een drill-through-rapportdefinitie te ontwerpen dat SmartView gebruikers de juiste toegang biedt tot bronsysteemgegevens die via de gegevensbron worden opgehaald.

De zoekvraag in de gegevensbron kan zo eenvoudig zijn als

SELECT * FROM TABLENAME

of deze kan worden verfijnd om een aggregatie of assortiment op te halen van de externe gegevens die u als basis wilt gebruiken.

De selectie van onze hypothetische tabel in Oracle Database bevat externe kolommen zoals de kolommen die worden geïllustreerd in de introductie. We wijzen enkele van deze externe kolommen toe aan Essbase dimensies wanneer we de drill-through-rapportdefinitie ontwerpen.

Definitie kolomtoewijzing

De kolomtoewijzing in dit voorbeeld gebruikt dimensietoewijzing voor Products, generatietoewijzing voor Year en Scenario, en niveau 0-toewijzing voor Market.

Externe kolom Opnemen in rapport Essbase dimensie Generatie-/niveaufilter
DIMENSION_PRODUCT J Product Geen
DIMENSION_MARKET J Markt Niveau0 [niveau]
YEAR_PARENT J Year Quarter [generatie]
DIMENSION_SCENARIO J Scenario Scen [generatie]
SALES J Geen J
COGS J Geen J
MARKETING J Geen J
PAYROLL J Geen J
MISC J Geen J

Voorbeelden van drill-through-rapporten op type kolomtoewijzing

De volgende voorbeelden van een drill-through-rapport illustreren de zoekvraagresultaten voor elk type kolomtoewijzing dat de databasebeheerder opgeeft als onderdeel van de drill-through-rapportdefinitie.

Voorbeeld van dimensietoewijzing 1

Dimensietoewijzing gebruiken voor Product zonder hiërarchisch filter,

Externe kolom Opnemen in rapport Essbase dimensie Generatie-/niveaufilter
DIMENSION_PRODUCT J Product Geen

drill-through uitgevoerd vanaf een celintersectie is niet gebonden aan een specifieke generatie of specifiek niveau.

Daarom wordt een drill-through uitgevoerd vanaf (Year, Sales, West, Actual, Cola):


Smart View raster met gebruikersselectie op celwaarde 14862 bij intersectie van (Year, Sales, West, Actual, Cola)

retourneert een drill-through-rapport dat is gefilterd op de huidige rastercontext voor Product, dat wil zeggen 100-10 (100-10 is de product-SKU die hoort bij de aliasnaam Cola). Alle waarden die worden opgehaald uit de kolom DIMENSION_PRODUCT in het bronsysteem, zijn records waarbij DIMENSION_PRODUCT = 100-10.


Drill-through-rapport met alleen records die specifiek zijn voor product-SKU 100-10 met een SALES-totaal van 14862

Controleer voor de validatie van drill-through-rapporten tijdens het testen of de som van de meeteenheid in het rapport overeenkomt met de celintersectie waarop de drill-through is uitgevoerd. In het bovenstaande voorbeeld is het drill-through-rapport gevalideerd, omdat de cel waarop de drill-through is uitgevoerd, overeenkomt met de waarde (14862) van de som van de toegewezen kolom in het drill-through-rapport.

De zoekvraag die Essbase gebruikt om het bovenstaande drill-through-rapport te genereren is:

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'

Voorbeeld van dimensietoewijzing 2

Laten we verder aan de hand van het vorige voorbeeld nagaan wat er gebeurt als er een drill-through-bewerking vanaf Product op een hoger niveau wordt uitgevoerd.

Het uitvoeren van een drill-through-bewerking vanaf (Year, Sales, West, Actual, Colas):


Smart View raster met gebruikersselectie op celwaarde 28306 bij intersectie van (Year, Sales, West, Actual, Colas)

retourneert een drill-through-rapport dat is gefilterd op de huidige rastercontext voor Product, dat nu 100 is (100 is de productcategorie die hoort bij de aliasnaam Colas). Alle waarden die worden opgehaald uit de kolom DIMENSION_PRODUCT in het bronsysteem, zijn records met DIMENSION_PRODUCT = 100.


Drill-through-rapport met alleen records die specifiek zijn voor productcategorie 100 met een SALES-totaal van 23806

Het drill-through-rapport is gevalideerd, omdat de cel waarop de drill-through is uitgevoerd, overeenkomt met de waarde (23806) van de som van de toegewezen kolom in het drill-through-rapport.

De zoekvraag die Essbase gebruikt om het bovenstaande drill-through-rapport te genereren is:

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'

Voorbeeld van generatietoewijzing 1

De generatietoewijzing voor 'Year' gebruiken met een filter voor de generatie genaamd 'Quarter',

Externe kolom Opnemen in rapport Essbase dimensie Generatie-/niveaufilter
YEAR_PARENT J Year Quarter [generatie]

drill-through uitgevoerd vanaf een celintersectie is gebonden aan de opgegeven generatie of Year.

Een drill-through uitvoeren vanaf (Qtr2, Sales, Market, Actual, Cola):


Smart View raster met gebruikersselectie op celwaarde 16048 bij intersectie van (Qtr2, Sales, Market, Actual, Cola)

retourneert een drill-through-rapport dat is gefilterd op de toegewezen generatiecontext voor Year, namelijk Quarters. Omdat Qtr2 zich bevindt in de geselecteerde rastercontext, zijn alle waarden die worden opgehaald uit de kolom YEAR_PARENT in het bronsysteem records waarbij YEAR_PARENT = Qtr2.


Drill-through-rapport met alleen records die specifiek zijn voor Qtr2 met een SALES-totaal van 16048

Het drill-through-rapport is gevalideerd, omdat de cel waarop de drill-through is uitgevoerd, overeenkomt met de waarde (16048) van de som van de toegewezen kolom in het drill-through-rapport.

De zoekvraag die Essbase gebruikt om het bovenstaande drill-through-rapport te genereren is:

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'

Voorbeeld van generatietoewijzing 2

Laten we verder aan de hand van het vorige voorbeeld nagaan wat er gebeurt als er een drill-through-bewerking vanaf de dimensie Year op een hoger niveau wordt uitgevoerd.

Een drill-through uitvoeren vanaf (Year, Sales, Market, Actual, Cola):


Smart View raster met gebruikersselectie op celwaarde 62824 bij intersectie van (Year, Sales, Market, Actual, Cola)

retourneert een drill-through-rapport dat is gefilterd op de toegewezen generatie Quarters van Year. De volgende waarden worden opgehaald uit de kolom YEAR_PARENT in het bronsysteem: Qtr1, Qtr2, Qtr3 en Qtr4.


Drill-through-rapport met records voor alle kwartalen van Year en een SALES-totaal van 62824

Het drill-through-rapport is gevalideerd, omdat de cel waarop de drill-through is uitgevoerd, overeenkomt met de waarde (62824) van de som van de toegewezen kolom in het drill-through-rapport.

De zoekvraag die Essbase gebruikt om het bovenstaande drill-through-rapport te genereren is:

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'

Voorbeeld van niveau 0-toewijzing

De niveau 0-toewijzing voor Market gebruiken met een filter voor alle niveau 0-leden (eindonderdelen),

Externe kolom Opnemen in rapport Essbase dimensie Generatie-/niveaufilter
DIMENSION_MARKET J Markt Niveau0 [niveau]

drill-through uitgevoerd vanaf een celintersectie retourneert alle laagste onderdelen voor Market.

Een drill-through uitvoeren vanaf (Year, Sales, Market, Actual, Cola):


Smart View raster met gebruikersselectie op celwaarde 62824 bij intersectie van (Year, Sales, Market, Actual, Cola)

retourneert een drill-through-rapport dat de onderdelen op het laagste niveau van de dimensie Market bevat, namelijk States. Alle waarden die worden opgehaald uit de kolom DIMENSION_MARKET in het bronsysteem, zijn records met staten.


Drill-through-rapport met records voor alle eindonderdelen (staten) van Market en een SALES-totaal van 62824

Het drill-through-rapport is gevalideerd, omdat de cel waarop de drill-through is uitgevoerd, overeenkomt met de waarde (62824) van de som van de toegewezen kolom in het drill-through-rapport.

De zoekvraag die Essbase gebruikt om het bovenstaande drill-through-rapport te genereren is:

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'