Ďalším krokom po vytvorení dátového modelu v PowerPivote a správnom vytvorení vzťahov medzi tabuľkami je jeho úprava. Ide o to, aby sme si zjednodušili a spríjemnili používanie výslednej kontingenčky. Ona je síce funkčná, ale zvyčajne obsahuje príliš dlhú ponuku, v ktorej treba prácne listovať, a takisto zatiaľ nevie nič iné okrem rezania dát jednotlivými stĺpcami. Čo síce môže niektorým užívateľom stačiť, ale to dokáže aj obyčajná kontingenčka. A keďže PowerPivot dokáže omnoho viac, bola by škoda to nevyužiť 🙂
Medzi veci, ktoré je dobré upraviť hneď po vytvorení dátového modelu, patria:
- Premenovanie tabuliek (ak ste ich ešte nepremenovali),
- Premenovanie stĺpcov v tabuľkách na zmysluplné názvy,
- Poskrývanie stĺpcov, ktoré nie sú v ponuke kontingenčky priamo potrebné,
- Poskrývanie tabuliek, ktoré nie sú v ponuke kontingenčky priamo potrebné,
- Pridanie vypočítaných stĺpcov a polí v jazyku DAX na obohatenie analýz,
- Vytvorenie hierarchií,
- Vytvorenie kľúčových ukazovateľov výkonu – KPI,
- Doladenie pokročilých vlastností a nastavení PowerPivotu.
V tomto článku sa pozrieme na prvé 3 body.
Premenovanie tabuliek a stĺpcov v modeli
Tento krok je síce jednoduchý, ale o to dôležitejšie je vykonať ho už na začiatku. Je to kvôli tomu, že keby ste to nespravili teraz, tak neskôr už budete mať v PowerPivote hromadu vzorcov, kde je použitý daný názov tabuľky. A keď sa rozhodnete premenovať tabuľku s názvom napr. „v_sales_tgt“ na „Plán predaja“, tak Vám to rozhodí všetky vzorce, ktoré používali starý názov tabuľky. Dokým totiž nemáte Excel 2016, tak sa Vám automaticky neupravia názvy na nové. A máte postarané o „zábavu“ na dlhé zimné večery… Ďalší z dôvodov je ten, že keď zavesíte PowerPivot na server, a použijete ho ako zdroj dát napr. v Exceli alebo v Reporting Services, a neskôr zmeníte hociktorý z názvov, tak všetko čo bolo na to napojené prestane fungovať. Lebo si to bude pamätať staré názvy. Preto si treba rozmyslieť názvy tabuliek a väčšiny stĺpcov už na začiatku, a za pár minút ich premenovať (a ušetriť si tým hodiny práce neskôr).
Tabuľku premenujete v okne PowerPivotu tak isto ako názov hárku v Exceli – kliknete pravým tlačidlom myši na jej záložku naspodu okna, vyberiete položku „Premenovať“, zadáte nový názov tabuľky, a stlačíte Enter:
Stĺpce v tabuľke potom premenujete podobným spôsobom – kliknete pravým tlačidlom myši na názov stĺpca, vyberiete položku „Premenovať stĺpec“, zadáte nový názov stĺpca, a stlačíte Enter:
A takto to zopakujete pre všetky tabuľky a stĺpce, ktoré chcete, aby ste videli v kontingenčnej tabuľke. Netreba premenovávať všetky – najmä nie tie stĺpce, ktoré slúžia ako prepájacie stĺpce medzi tabuľkami. Tie totiž užívateľ nepotrebuje v ponuke kontingenčnej tabuľky vidieť, a preto ich stačí odtiaľ skryť. Takisto, nie všetky tabuľky v modeli potrebuje používateľ vidieť aj v kontingenčke – ide najmä o rôzne pomocné tabuľky s parametrami alebo inými dátami, ktoré samé o sebe nemajú žiaden analytický význam. Takéto tabuľky tiež v modeli skryjete, a navyše si ušetríte prácu s premenovávaním všetkých stĺpcov 🙂 Skrývaniu sa budeme venovať o pár riadkov nižšie.
Dajte si však pozor na to, že keď ste už mali premenovávaný stĺpec, alebo hocijaký stĺpec z premenovávanej tabuľky, použitý v kontingenčke, tak sa Vám dáta z kontingenčky „stratia“. Ide o to, že Excel funguje voči PowerPivotu len ako prehliadač modelu. A kontingenčku konštruuje tak, že na pozadí vytvorí dotaz s názvami použitých tabuliek a stĺpcov, ten pošle PowerPivotu, ten ho vykoná a pošle výsledok naspäť do Excelu, a Excel ho zobrazí v kontingenčke. Keď však spravíte hocijakú zmenu v PowerPivote (ako napr. premenovanie stĺpca), tak po návrate do okna Excelu, Excel automaticky aktualizuje ponuku kontingenčky a dáta v nej, ale použije na to dotaz, ktorý použil pri poslednom zobrazení kontingenčky. A v ňom sú ešte staré názvy tabuliek a stĺpcov. A zareaguje na to svojsky – neupozorní Vás, že taký stĺpec už neexistuje, a namiesto toho ho vyhodí z kontingenčky preč. Čo vyzerá naoko tak, že sa dáta stratili, ale v skutočnosti všetky dáta v modeli zostali, len v kontingenčke je použitých menej polí ako predtým. Preto treba premenovaný stĺpec pridať do kontingenčky znova, a dáta sa zázračne „objavia“ naspäť 🙂
Napríklad: Majme kontingenčku z predchádzajúceho článku, kde na riadkoch máme meny (stĺpec CurrencyName z tabuľky Meny), v stĺpcoch roky (stĺpec CalendarYear z tabuľky Čas), a v hodnotách súčet cien objednávok (stĺpec SalesAmount_USD z tabuľky Objednávky). Kontingenčka vyzerá takto:
Následne prejdeme do PowerPivotu, a v tabuľke Objednávky premenujeme stĺpec SalesAmount_USD na „Cena objednávky“. Keď sa vrátime naspäť do Excelu, bude kontingenčka vyzerať takto:
Všimnite si, že kontingenčka obsahuje pôvodné záhlavia riadkov a stĺpcov, aj keď je počet riadkov teraz väčší. Je to kvôli tomu, že keď neexistuje v kontingenčke žiadne pole s hodnotou, tak kontingenčka zobrazí všetky kombinácie hodnôt z použitých polí, nie len tie, pre ktoré reálne existujú dáta. Takisto, keď sa pozriete do oblasti Hodnoty v ponuke kontingenčky, tak je prázdna – pretože stĺpec, ktorý sme tam pôvodne dali, sa už teraz volá „Cena objednávky“, a keďže Excel už nevie nájsť stĺpec s pôvodným názvom, tak ho z ponuky vyhodil. Situáciu opravíme tým, že do tejto oblasti znova pridáme – tentokrát už premenovaný – stĺpec „Cena objednávky“ z tabuľky Objednávky. Výsledky v kontingenčke sa následne začnú zobrazovať rovnako, ako pred premenovaním stĺpca. Výsledok bude vyzerať takto:
Poskrývanie stĺpcov z ponuky kontingenčnej tabuľky
Ako sme už spomenuli vyššie, sú prípady, kedy nepotrebujete mať viditeľné tabuľky a stĺpce v ponuke kontingenčky, ale v modeli ich potrebujete používať na svoje výpočty. Príkladom môže byť napr. toto menu kontingenčky:
V tabuľke Meny sú 3 stĺpce, ale len 1 je použiteľný pre analýzy. Je to stĺpec CurrencyName, ktorý obsahuje názov meny. Zvyšné dva stĺpce sú:
- Stĺpec CurrencyKey je prepájacím stĺpcom na tabuľku objednávky, a obsahuje číslo meny. Pre užívateľa nemá žiadny analytický význam, ale je potrebný na prepojenie tabuliek. Preto ho potrebujeme z ponuky skryť.
- Stĺpec CurrencyAlternateKey obsahuje kód meny, a keďže pre užívateľa je ľahšie analyzovať dáta pomocou stĺpca CurrencyName, tak stĺpec CurrencyAlternateKey je preňho nepotrebný. Tento stĺpec teda z modelu zmažeme.
Takisto si všimnite ponuku stĺpcov v tabuľke Objednávky. Prvé stĺpce v ponuke končia na „-Key“, a sú to všetko prepájacie stĺpce na ostatné tabuľky s príslušnými číselníkmi. Tieto tiež v modeli potrebujeme, ale nie v ponuke kontingenčky – preto ich skryjeme tiež.
Prepnite sa teda do okna PowerPivotu a ideme tieto úpravy spraviť.
V okne PowerPivotu najprv kliknite vľavo dole na záložku, ktorá reprezentuje tabuľku Meny. Vyzerá to takto:
Teraz chceme skryť stĺpec CurrencyKey. Klikneme teda pravým tlačidlom myši na názov tohto stĺpca, a vyberieme z ponuky „Skryť v klientskych nástrojoch“:
Vybraný stĺpec sa zašedí, aby ste vedeli, že odteraz sa už nebude zobrazovať v ponuke kontingenčky. V dátovom modeli ale stále je, takže bez problémov pôjde použiť vo vzorcoch aj vo všetkom ostatnom, čo sa v PowerPivote dá robiť. Len v kontingenčke sa už nebude zobrazovať. Výsledok bude vyzerať takto v PowerPivote:
…a takto v ponuke kontingenčky:
Všimnite si, že v ponuke kontingenčky stĺpec CurrencyKey už nie je. Ak by ste ho tam znova chceli, choďte naspäť do PowerPivotu, kliknite pravým tlačidlom myši na názov toho stĺpca, a vyberte z ponuky „Odkryť z klientskych nástrojov“.
Je tam však ešte stále stĺpec CurrencyAlternateKey, ktorý sme chceli zmazať, pretože je pre užívateľa zbytočný. Preto ideme naspäť do okna PowerPivotu, a zmažeme ho.
Stĺpec zmažeme v PowerPivote rovnakým spôsobom, ako v Exceli – klikneme pravým tlačidlom myši na jeho názov, a vyberieme položku „Odstrániť stĺpce“:
Výsledok bude vyzerať takto v PowerPivote:
…a po návrate do Excelu bude vyzerať ponuka kontingenčnej tabuľky takto:
A toto treba zopakovať postupne pre každú tabuľku. Pretože:
- užívateľ by mal v ponuke vidieť len tie polia, ktoré majú nejaký analytický význam, resp. sú pre neho použiteľné,
- čím väčšia ponuka polí, tým je výsledok neprehľadnejší, ťažšie použiteľný, a Vy aj užívateľ strávite viac času rolovaním v ponuke, ako samotnou analýzou.
Preto treba poskrývať alebo povymazávať všetky nepoužiteľné stĺpce.
Okrem nepotrebných stĺpcov však treba niekedy poskrývať aj komplet celé tabuľky. O tom si povieme v nasledujúcom článku.
Autor, tréner a expert na PowerPivot, Power BI a jazyk DAX. Založil som tento web, aby som pomohol dostať PowerPivot a Power BI do širšieho povedomia, a aby som ľuďom ukázal, že aj komplexné analytické problémy idú riešiť jednoducho. Po nociach vzývam Majstra Yodu a tajne plánujem ovládnutie vesmíru.