čtvrtek 10. září 2009

Dynamický ukazatel Past-to-Date

Tradiční ukazatele Year-to-Date, Quarter-to-Date , Month-to-Date asi nemusím představovat. Mohou nastat situace, které vyžadují méně tradiční variaci to-Date, kterou můžeme pracovně nazvat Past-to-Date, tedy součet všech hodnot od minulosti až do vybraného data.

Mějme faktovou tabulku tykající se bankovních úvěrů, kde jedním z ukazatelů je i výše úvěru – kladná pokud transakce zvyšuje výši úvěru o danou částku, záporná když snižuje a nulová pokud je bez vlivu na výši úvěru.

Transakce, z hlediska dimenzí, které nás zajímají, jsou zaznamenávány denně na úrovni jednotlivých úvěrových smluv.

Požadovaný report nad touto tabulkou by měl zobrazovat změnu sumy výše úvěru za jednotlivé roky (jak daný rok přispěl k celkové sumě výše úvěrů) a současně také absolutní výši všech poskytnutých úvěrů až do konce daného roku včetně (suma všech změn výší úvěrů od minulosti až do konce daného roku).



Dále je požadována možnost drillování až na úroveň jednotlivých dnů. Důležité pro to je, aby Výše úvěru živých smluv byla počítána vždy od nekonečné minulosti – to diskvalifikuje funkce typu RSUM, které počítají pouze nad vráceným výsledkem.



Elegantním řešením je využití funkce toDate doprovázenou úpravou časové dimenze a její hierarchie.

  1. Do časové dimenze je potřeba doplnit nový sloupec, který třeba nazveme VSECHNY_DATUMY, a naplníme ho stejnou hodnotou ve všech řádcích.
  2. Upravíme hierarchii časové dimenze tak, že přidáme nový level mezi Grand Total a Rok a jako klíč mu dáme sloupec VSECHNY_DATUMY.


  3. Vytvoříme v metadatech ukazatel Výše úvěru všech smluv pomocí funkce toDate a jako parametr zadáme level Dummy.

Výsledný ukazatel se chová tak, jak jsme u toDate zvyklí. Umožňuje svobodně drilovat jednotlivými úrovněmi hierarchie časové dimenze, aniž by bylo nutné námi vytvořený ukazatel nějak upravovat.


Oleg Svatoš (Teura)

pondělí 7. září 2009

Nová verze Oracle Business Indicators pro iPhone

Koncem srpna byla vydána nová verze Oracle Business Indicators (1.3). Z mého pohledu mezi důležité vylepšení patří:

  1. Podpora českého prostředí iPhone
    - používáte-li iPhone s regionálním nastavení ČR, pak předchozí verze Business Indicators nezobrazovala u Alertů datum a čas vygenerování

  2. Možnost mazání již vygenerovaných Alertů
    - v předchozí verzi jste Alerty museli mazat pouze z BI Dashboardu, nyní můžete přímo v iPhone

  3. Přeposílání odkazů na reporty emailem
    - Odkaz (URL adresu) na jakýkoli report nyní můžete posílat na jedno stisknutí emailem




POZOR: Oracle Business Indicators verze 1.3 vyžaduje v HOSTu celou URL na OBI EE, např. http://193.179.157.75:80/analytics, více o nastavení zde.

eec.

středa 1. července 2009

Vyhlášení vítězů o nejlepší BI Dashboard - soutěž k příležitosti 9. setkání uživatelů DW / BI

Dnes 1.7.2009 v 07:30 jsme ukončili hlasování o nejlepší BI Dashboard. Konečné výsledky hlasování můžete vidět na grafu a pořadí výherců najdete níže.

V naší anketě hlasovalo celkem 783 čtenářů blogu.
Všem účastníkům soutěže a hlasujícím děkujeme.

Šťastným výhercům gratulujeme.


1. místo - Vladimír Pravenec (ICC Ltd.)
počet hlasů: 219
název dashboardu: #1 - MIP

2. místo - Josef Vonášek (ČS a.s.)
počet hlasů: 186
název dashboardu: #10 - CEO Dashboard

3. místo - Lukáš Pour (Altec a.s.)
počet hlasů: 113
název dashboardu: #6 - Sales Dashboard

4. místo - Ivan Huječek (ICC Ltd.)
počet hlasů: 73
název dashboardu: #2 - Panel Obchodniho Reditele

5. místo - Jiří Doubravský (PIKE ELECTRONICS)
počet hlasů: 60
název dashboardu: #7 - SvMartin Dashboard

6. místo - Jiří Zamouřil (Oracle Consulting)
počet hlasů: 46
název dashboardu: #8 - BigBoss Dashboard

7. místo - David Glivický (K2 Atmitec)
počet hlasů: 40
název dashboardu: #9 - BIReport

8. místo - Petr Tomek (Altec a.s.)
počet hlasů: 34
název dashboardu: #5 - TMDashboard

9. místo - Samuel Marek (Mediatel)
počet hlasů: 7
název dashboardu: #3 - Information Dashboard

10. místo - Tomáš Hubálek (Oksystem, s.r.o.)
počet hlasů: 5
název dashboardu: #4 - Region Dashboard



Výherci si dle pořadí v soutěži mohou vybrat jednu ze čtyřiceti cen. Všechny Vás v průběhu týdne budeme kontaktovat.


Gratulujeme!


S pozdravem

Oracle DW/BI Presales
(Erik Eckhardt a Josef Krejčí).


Podrobnosti o soutěži najdete zde. Soutěžící BI Dashboardy si můžete prohlédnout zde.

Seznam článků za Q2/2009 (duben - červen 2009), seřazeno dle kategorie

BI Publisher

DWH

DWUG

Exadata

Experts Bootcamp

Novinky

OBI Apps

OBI Apps - FAQ

OBI EE | OBI SE ONE

OBI EE - FAQ | OBI SE ONE - FAQ

OBI SE - FAQ

ODI - FAQ

ODI / Sunopsis

ODI DataQuality

Soutěž s BI/DW

SQLDeveloper

Vyhodnocení anket


Návštěvnost BI/DW Blogu za Q2/2009

pondělí 29. června 2009

ODI – Jak upravit IKM Slowly Changing Dimension Typ 2 i pro Typ 1

Není to tak dlouho co jsem psal o ODI a jeho podpoře Pomalu se měnících dimenzí druhého typu (SCD2 - Slowly Changing Dimension Type 2) – celý článek najdete zde.
Zkráceně: V ODI můžete každé tabulce nastavit atributy, které určují její chování v případě, že jde o Pomalu se měnící dimenzi (SCD). Logika zpracování pro SCD typu 2 je dodávaná v Integračních Knowledge Modulech (IKM Slowly Changing Dimension).



Minulý týden jsem řešil případ, kdy IKM Oracle Slowly Changing Dimension (je navržené pro SCD2) bylo potřeba využít i pro SCD typu 1. Důvod, proč dané IKM bylo potřeba použít i pro SCD1, byl čistě o připravenosti na budoucí přechod k SCD2.


Postup

Postup je stejný jako kdyby šlo o SCD2, ale na sloupcích tabulky se místo příznaku „Add Row on Change“ nastaví vždy příznak „Overwrite on Change“. Malá změna se pak musí udělat v použitém IKM. Protože když spustíte originální IKM s takto nastaveným chováním SCD, tak vám zpracování dimenze spadne v kroku „Flag rows for update“.

Chyba je v tom, že v příkazu UPDATE mezi WHERE a AND není žádný výraz:


Důvodem je to, že IKM očekává alespoň jeden sloupec, který je označen příznakem „Add Row on Change“, což v případě SCD1 není.

Řešením je jednoduchá úprava IKM - jděte do IKM Oracle Slowly Changing Dimension, otevřete krok „Flag rows for update“ a do stávajícího kódu


přidejte podmíněné AND (v případech kdy půjde o SCD2) a 1=1 (v případech kdy půjde pouze o SCD1).


Poté již IKM bude fungovat tak jak má pro oba dva typy SCD.

Kód pro SCD1 bude vypadat následovně - obsahuje pouze WHERE 1=1 AND ...:



Kód pro SCD2 bude vypadat následovně - obsahuje WHERE (sloupce s „Add Row on Change“) AND 1=1 AND ...)




Erik Eckhardt.

čtvrtek 25. června 2009

Oracle SQLDeveloper - hvězda místo "Go to File"

Jeden tip mimo oblast BI/DW, který ale zvýšil mou produktivitu psaní SQL o 50% :)

Používáte-li SQLDeveloper a českou klávesnici na notebooku (nemáte numerickou), pak jste nejspíše při psaní "select * ..." místo "*" dostali menu "Go to File" (znak hvězda vkládám pomocí kláves "pravý Alt" a "-").


Ti z vás, kteří píší znak "*" stejným způsobem jako já, pak musí přepnout klávesnici na anglickou a hvězdu vložit standardně přes "Shift" a "8", což v mém případě snižuje mou produktivu vývoje sofistikovaných SQL dotazů typu select * from tabulka o 50%.


Chcete-li opět aby SQLDeveloper vkládal znak "*", pak jděte do menu Tools > Preferences... > Accelerators a v menu Category vyberte Navigate > Go to File... a nakonec tlačítko Remove.



Poté Váš SQLDeveloper bude opět umět na české klávesnici stiskem "pravý Alt" a "-" vkládat znak *.


Erik Eckhardt.