GOC644 — DAX základy (2 dny)
1. Úvod do Power BI 2. Datový model 3. Úvod do DAX 4. Oblasti použití DAX 5. Kontext výpočtu 6. Časová inteligence 7. Optimalizace DAX 8. Row Level Security 9. Nástroje
GOC6441 — Pokročilý DAX (2 dny)
1. Opakování & přehled 2. Dynamické reporty 3. DAX jako dotazovací jazyk 4. VertiPaq engine 5. Ladění výkonu 6. Composite Models 7. Workshop
Cvičení
1. Datový model 2. DAX základy 3. Kontext výpočtu 4. Časová inteligence
🏠 Rozcestník kurzů
GOC644 · Cvičení 1

Cvičení 1 — Tvorba datového modelu z AdventureWorks DW

Importujte data z SQL Server, vytvořte relace a hierarchie
⏱ ~25 minut🗂 Cíl: Připravit základní datový model pro další cvičení

Cíle cvičení

  • Naučit se připojit k SQL Server z Power BI Desktop
  • Importovat tabulky z AdventureWorks DW 2019
  • Vyčistit a transformovat data pomocí Power Query
  • Vytvořit a ověřit relace mezi tabulkami
  • Označit Date Table a vytvořit hierarchii dat
1

Připojení k SQL Server a výběr tabulek

1
Otevřete Power BI Desktop Spusťte aplikaci Power BI Desktop. Pokud jste ji naposledy nepoužívali, přivítá vás úvodní obrazovka.
2
Klikněte na "Načíst data" a vyberte SQL Server V domovské kartě vyberte Načíst data > Další... nebo Databáze > SQL Server.
💡 Zobrazit nápovědu
Pokud vidíte tlačítko "Načíst data" přímo, klikněte na něj a vyberte možnost SQL Server z kategorie Databáze.
3
Zadejte údaje o serveru
  • Server: Zadejte název vašeho SQL Server (instruktor vám jej sdělí, obvykle něco jako .\SQLEXPRESS nebo název počítače)
  • Database: AdventureWorksDW2019
  • Zvolte Import (ne DirectQuery)
💡 Zobrazit nápovědu
Pokud si nejste jistí názvem serveru, zeptejte se instruktora nebo zkuste localhost nebo (local). Můžete také použít Windows autentifikaci, kterou Power BI automaticky nabídne.
4
Vyberte tabulky k importu V navigátoru dat zaškrtněte následující tabulky:
  • FactInternetSales
  • DimDate
  • DimProduct
  • DimProductCategory
  • DimProductSubcategory
  • DimCustomer
  • DimGeography
ℹ️ Tip: Náhled si ověříte před potvrzením. Zaškrtnutí tabulky zobrazí její obsah vpravo.
5
Potvrďte výběr a načtěte data Klikněte na Načíst. Power BI začne importovat data — tento proces může trvat několik sekund.
2

Transformace v Power Query

⚠️ Pokud se Power Query automaticky neotevře, klikněte v Power BI na Transformovat data v pásu karet Home.
1
Vyberte tabulku FactInternetSales V levém panelu Power Query klikněte na FactInternetSales.
💡 Zobrazit nápovědu
Měli byste vidět seznam sloupců. Pokud vidíte více sloupců než je v zadání, připravte se je vyfiltrovat v dalším kroku.
2
Zachovejte pouze potřebné sloupce v FactInternetSales Klikněte na Domů > Zvolte sloupce a ponechte pouze:
  • OrderDateKey
  • DueDateKey (aktivní relace — shoduje se s referenčním modelem přednášek)
  • ProductKey
  • CustomerKey
  • SalesTerritoryKey
  • SalesAmount
  • OrderQuantity
  • UnitPrice
  • DiscountAmount
  • TotalProductCost (bude potřeba pro Cvičení 2)
💡 Zobrazit nápovědu
V okně "Vybrat sloupce" zaškrtněte sloupce, které chcete zachovat, a zrušte zbývající. Poté klikněte OK. Alternativně: klikněte pravým tlačítkem na sloupce, které chcete odstranit, a vyberte "Odebrat".
3
Upravte DimDate tabulku V levém panelu klikněte na DimDate. Ponechte sloupce:
  • DateKey
  • FullDateAlternateKey
  • CalendarYear
  • CalendarQuarter
  • MonthNumberOfYear
  • EnglishMonthName
  • EnglishDayNameOfWeek
💡 Zobrazit nápovědu
Opět použijte "Zvolte sloupce" nebo pravé tlačítko myši pro odstranění nepotřebných sloupců.
4
Vyčistěte zbývající tabulky (DimProduct, DimProductCategory atd.) Pro každou zbývající tabulku ponechte:
  • DimProduct: ProductKey, EnglishProductName, ListPrice, ProductSubcategoryKey
  • DimProductCategory: ProductCategoryKey, EnglishProductCategoryName
  • DimProductSubcategory: ProductSubcategoryKey, EnglishProductSubcategoryName, ProductCategoryKey
  • DimCustomer: CustomerKey, FirstName, LastName, GeographyKey
  • DimGeography: GeographyKey, EnglishCountryRegionName, CountryRegionCode
5
Zavřete Power Query a načtěte data Klikněte na Zavřít a upladit v pravém horním rohu. Power BI načte data do modelu.
3

Ověření a vytvoření relací v Modelu

1
Otevřete zobrazení Model V levém panelu Power BI klikněte na ikonu Model nebo v pásu karet klikněte na Zobrazení > Model.
2
Zkontrolujte a ověřte automaticky vytvořené relace Power BI by měl automaticky vytvořit relace na základě klíčů. Měli byste vidět:
Tabulka 1 Sloupec 1 Tabulka 2 Sloupec 2 Aktivní
FactInternetSales DueDateKey DimDate DateKey ✓ Ano (aktivní)
FactInternetSales OrderDateKey DimDate DateKey Ne (neaktivní)
FactInternetSales ProductKey DimProduct ProductKey ✓ Ano
FactInternetSales CustomerKey DimCustomer CustomerKey ✓ Ano
DimProduct ProductSubcategoryKey DimProductSubcategory ProductSubcategoryKey ✓ Ano
DimProductSubcategory ProductCategoryKey DimProductCategory ProductCategoryKey ✓ Ano
DimCustomer GeographyKey DimGeography GeographyKey ✓ Ano
💡 Zobrazit nápovědu
Pokud některá relace chybí, ručně ji vytvořte přetažením sloupce z jedné tabulky na sloupec v druhé tabulce. Relace by měly být "many-to-one" (jedna k mnoha) — FactInternetSales (many) → DimXxx (one).
3
Zajistěte, aby relace byla správně orientována Jednocestné šipky vedou od dimenzí (strana One) k faktům (strana Many) — tedy od DimXxx k FactInternetSales. Šipka ukazuje směr propagace filtru: DimDate → FactInternetSales. Pokud vidíte opačný směr, klikněte na relaci a upravte ji.
4

Označení Date Table a vytvoření hierarchie

1
Označte DimDate jako Date Table V zobrazení Model klikněte pravým tlačítkem na tabulku DimDate a vyberte Označit jako tabulku data.
💡 Zobrazit nápovědu
Alternativně: vyberte DimDate, v pásu karet klikněte na Nástroje tabulky > Označit jako tabulku data. Poté vyberte sloupec FullDateAlternateKey jako sloupec data — musí být typu Date nebo DateTime, nikoliv celé číslo (DateKey je integer a nelze jej použít).
2
Vytvořte hierarchii "Datum" v DimDate V zobrazení Model nebo Data vyberte tabulku DimDate. V podokně vpravo (pro danou tabulku) klikněte na CalendarYear, podržte Ctrl a klikněte na EnglishMonthName a FullDateAlternateKey.
💡 Zobrazit nápovědu
Pokud se okno hierarchie nezobrazuje automaticky, v pásu karet (v zobrazení Model) najděte možnost Nová hierarchie. Vyberte sloupce v pořadí: CalendarYear (top), EnglishMonthName (middle), FullDateAlternateKey (bottom).
3
Pojmenujte hierarchii "Datum" Po vytvoření hierarchie se zobrazí s názvem "Hierarchie". Klikněte na ni a přejmenujte na "Datum".
4
Vytvořte calculated columns v DimProduct a poté hierarchii (volitelné)

DimProduct neobsahuje sloupce Category ani Subcategory přímo — jsou v oddělených tabulkách. Nejprve přidejte calculated columns pomocí RELATED():

V zobrazení Data vyberte tabulku DimProduct, klikněte na Nový sloupec a zadejte:

ProductSubcategoryName = RELATED(DimProductSubcategory[EnglishProductSubcategoryName])
ProductCategoryName = RELATED(DimProductCategory[EnglishProductCategoryName])

Poté vytvořte hierarchii z těchto sloupců: ProductCategoryName → ProductSubcategoryName → EnglishProductName. Pojmenujte ji "Produkt".

💡 Toto bude užitečné pro vytváření drill-down vizualizací v budoucích cvičeních. RELATED() funguje, protože model obsahuje relace DimProduct → DimProductSubcategory → DimProductCategory.
5

Finalizace a uložení

1
Otevřete zobrazení Report V levém panelu klikněte na ikonu Report (vypadá jako sloupec). Měli byste vidět prázdnou stránku s podporou vizualizací.
2
Přidejte kartu pro ověření dat Z podokna Vizualizace vlevo přetáhněte Card vizualizaci na stránku. Z pole "FactInternetSales" přetáhněte "SalesAmount" do karty. Měla by se zobrazit suma prodejů.
💡 Zobrazit nápovědu
Pokud nevidíte podokno Pole, klikněte na něj v pravém panelu. Karta by měla zobrazit něco jako "12 345 678" — to je součet všech prodejů v datech.
3
Uložte soubor Klikněte na Soubor > Uložit a uložte soubor jako GOC644_cviceni.pbix do vhodné složky (např. Dokumenty nebo Pracovní plocha).
4
Ověřte strukturu modelu Vraťte se do zobrazení Model a zkontrolujte, zda všechny relace a hierarchie vypadají správně. Měli byste vidět:
  • FactInternetSales v centru se šipkami vedoucími k všem dimenziím
  • Řetězec DimProduct → DimProductSubcategory → DimProductCategory
  • Hierachie "Datum" v DimDate
6

Kontrolní seznam (Checklist)

✓ Úspěšně jste dokončili Cvičení 1, pokud:
  • ✓ Všechny tabulky jsou importovány a vidíte je v podokně Pole
  • ✓ Všechny relace jsou správně nastaveny (6 relací)
  • ✓ DimDate je označena jako Date Table
  • ✓ Hierarchie "Datum" existuje v DimDate
  • ✓ Soubor je uložen jako GOC644_cviceni.pbix
  • ✓ Karta zobrazuje součet SalesAmount (něco kolem milionů)
ℹ️ Poznámka pro instruktora: Demonstrujte, jak se model tvořil krok za krokem, a nechte účastníky sledovat. V Cvičení 2 se budou na tomto modelu budovat DAX míry a sloupce.