Sdílet prostřednictvím


Vytváření řetězců dynamického formátu pro míry

PLATÍ PRO: Power BI Desktop služba Power BI

S řetězci dynamického formátu pro míry můžete určit, jak se míry zobrazují ve vizuálech, podmíněným použitím formátového řetězce s samostatným vzorcem DAX (Data Analysis Expression).

Řetězce dynamického formátu překonaly základní nevýhodu použití funkce FORMAT. Funkce FORMAT vrátí i číselné datové typy jako řetězce, které nemusí pracovat s vizuály, jako jsou grafy, které vyžadují číselné hodnoty. Při použití řetězců dynamického formátu míra zachová svůj datový typ a není nucena změnit na datový typ řetězce. V závislosti na kontextu se na míru použijí různé formátovací řetězce.

Můžete také použít řetězce dynamického formátu se skupinami výpočtů. Pro míry můžete použít stejné vzory DAX, které pracují se skupinami výpočtů v řetězcích dynamického formátu, ale rozsah je omezený na jednotlivé míry místo všech měr v modelu. Další informace najdete v tématu Skupiny výpočtů – řetězce dynamického formátu.

Vytváření řetězců dynamického formátu

Vytvoření řetězce dynamického formátu

  1. V podokně Data vyberte míru, pro kterou chcete zadat řetězec dynamického formátu.

  2. Na pásu karet Nástroje měr na pásu karet > oddílu seznamu Formát vyberte >. Nalevo od řádku vzorců DAX se zobrazí nový rozevírací seznam s vybranou možností Formát . V tomto rozevíracím seznamu můžete přepínat mezi výrazem DAX statické míry a výrazem DAX řetězce dynamického formátu. Před přepnutím na dynamický formát je před přepnutím na dynamický řetězec předem vyplněný jako řetězec v řádku vzorců DAX.

    Snímek obrazovky s rozevíracím seznamem Formát

  3. Přepište řetězec výrazem DAX, který vypíše správný formátovací řetězec pro vaši míru. Například následující výraz vyhledá řetězec formátu měny z tabulky Řetězce formátu měn podle země/oblasti, který chceme.

    Snímek obrazovky výrazu metriky dynamického formátu

  4. Ověřte, že řetězec dynamického formátu funguje ve vizuálu.

    Pokud chcete odstranit řetězec dynamického formátu a vrátit se k použití řetězce statického formátu, vyberte v rozevíracím seznamu Formát oddílu>Formátování jinou možnost formátu. Vzhledem k tomu, že tato akce není vrácena zpět, zobrazí se dialogové okno s dotazem, jestli chcete pokračovat. Pokud se chcete znovu vrátit k použití řetězce dynamického formátu, musíte znovu zadat výraz DAX.

    Snímek obrazovky s upozorněním na změnu formátu

Příklad

Nejlepším způsobem, jak se dozvědět o nové funkci, je vyzkoušet si ji sami. Můžete to udělat jenom pomocí ukázkového souboru Adventure Works 2020 PBIX , který je k dispozici v ukázkovém modelu DAX. Pomocí ukázkového modelu můžete přidat převod měny a zobrazit převedenou částku prodeje po roce. Po stažení otevřete soubor v Power BI Desktopu.

Vytvoření nových tabulek

Ukázkový model neobsahuje všechna data potřebná k vytvoření a použití řetězců dynamického formátu. Abyste mohli začít, musíte nejdřív přidat dvě tabulky.

  1. Na pásu karet Domů vyberte Zadat data.

  2. V dialogovém okně Vytvořit tabulku zadejte řetězce formátu měny země/oblasti do pole Název a pak zkopírujte a vložte následující tabulku:

    Country/Region Měna Formát
    Austrálie Dolar AU$#,0,00
    Kanada Dolar C$#,0,00
    Dánsko Koruna kr#,0
    Eurozóny Euro € #,0,00
    Japonsko Jen ¶ #,0
    Švédsko Koruna kr#,0
    Švýcarsko Frank CHF#,0,00
    Spojené království Bušit £ #,0
    USA Dolar US$#,0,00
  3. Ověřte, že tabulka vypadá správně, a vyberte Načíst.

    Snímek obrazovky s dialogovým oknem Vytvořit tabulku

  4. Opakujte předchozí kroky pro následující tabulku:

    Název tabulky: Roční průměrné směnné kurzy

    Country/Region Měna Year (Rok) Roční průměrný směnný kurz
    Austrálie Dolar 2022 1.442
    Austrálie Dolar 2021 1.332
    Austrálie Dolar 2020 1.452
    Austrálie Dolar 2019 1.439
    Austrálie Dolar 2018 1.34
    Austrálie Dolar 2017 1.358
    Kanada Dolar 2022 1.301
    Kanada Dolar 2021 1.254
    Kanada Dolar 2020 1.341
    Kanada Dolar 2019 1.327
    Kanada Dolar 2018 1.297
    Kanada Dolar 2017 1.35
    Dánsko Koruna 2022 7.077
    Dánsko Koruna 2021 6.29
    Dánsko Koruna 2020 6.538
    Dánsko Koruna 2019 6.67
    Dánsko Koruna 2018 6.319
    Dánsko Koruna 2017 6.864
    Eurozóny Euro 2022 0.951
    Eurozóny Euro 2021 0.846
    Eurozóny Euro 2020 0.877
    Eurozóny Euro 2019 0.893
    Eurozóny Euro 2018 0.848
    Eurozóny Euro 2017 0.923
    Japonsko Jen 2022 131.454
    Japonsko Jen 2021 109.817
    Japonsko Jen 2020 106.725
    Japonsko Jen 2019 109.008
    Japonsko Jen 2018 110.424
    Japonsko Jen 2017 116.667
    Švédsko Koruna 2022 10.122
    Švédsko Koruna 2021 8.584
    Švédsko Koruna 2020 9.205
    Švédsko Koruna 2019 9.457
    Švédsko Koruna 2018 8.703
    Švédsko Koruna 2017 8.894
    Švýcarsko Frank 2022 0.955
    Švýcarsko Frank 2021 0.914
    Švýcarsko Frank 2020 0.939
    Švýcarsko Frank 2019 0.994
    Švýcarsko Frank 2018 0.979
    Švýcarsko Frank 2017 1.024
    Spojené království Bušit 2022 0.811
    Spojené království Bušit 2021 0.727
    Spojené království Bušit 2020 0.779
    Spojené království Bušit 2019 0.784
    Spojené království Bušit 2018 0.75
    Spojené království Bušit 2017 0.808

Vytvoření sloupce Year

V existující tabulce kalendářních dat je potřeba nový sloupec Year.

  1. V zobrazení modelu klikněte pravým tlačítkem myši na tabulku Kalendářní datum a vyberte Nový sloupec.

  2. Do řádku vzorců DAX zadejte následující výraz: Year = YEAR([Date])a stiskněte Enter.

    Snímek obrazovky s vzorcem

Vytvoření vztahů

Vztahy jsou potřeba mezi vašimi novými tabulkami Ročních průměrných směnných kurzů a Řetězci formátu měny země/regionu a mezi tabulkou Ročních průměrných směnných kurzů a existující tabulkou kalendářních dat.

  1. Pokud máte zapnuté automatické rozpoznávání relací (na kartě Nástroje sloupce vyberte Spravovat relace a pak vyberte Automatické rozpoznávání), je možné, že pro vás byl vytvořen vztah mezi řetězci formátu měny země/oblasti a ročními průměrnými směnnými kurzy ve sloupci Země/oblast . Pokud ne, vytvořte tuto relaci pomocí tlačítka Nová relace v nástrojích> SloupcůSpravovat relace:

    • Tabulka 1: Roční průměrné směnné kurzy
    • Sloupec tabulky 1: Země/oblast
    • Kardinalita: M:1
    • Tabulka 2: Řetězce formátu měny země/oblasti
    • Sloupec Tabulka 2: Země/oblast
    • Nastavit tuto relaci jako aktivní: Ano
    • Směr křížového filtru: Jednoduché

    Relace by měla vypadat takto:

    Snímek obrazovky s vlastnostmi vztahu mezi řetězci formátu měny země/oblasti a ročními průměrnými směnnými kurzy

  2. Pokud máte automatické rozpoznávání relací, je možné, že byla vytvořena relace mezi řetězci formátu měny Země/oblast a prodejní oblastí ve sloupci Země/oblast . Tento vztah ale není pro náš model správný. Odstraňte tuto relaci.

  3. Místo toho vytvořte relaci mezi ročními průměrnými směnnými kurzy a datem ve sloupci Rok .

    • Tabulka 1: Roční průměrné směnné kurzy
    • Sloupec tabulky 1: Rok
    • Kardinalita: M:N
    • Tabulka 2: Datum
    • Sloupec tabulky 2: Rok
    • Nastavit tuto relaci jako aktivní: Ano
    • Směr křížového filtru: Single (Roční průměr směnného kurzu) filtry Date (Datum)

    Relace by měla vypadat takto:

    Snímek vztahu

  4. Uložte model.

Vytvoření tabulky skupin měr

Skupina měr vám pomůže uspořádat různé míry tak, že je budete mít v jedné tabulce.

  1. Na pásu karet Domů vyberte Zadat data.

  2. V dialogovém okně Vytvořit tabulku ponechte hodnoty prázdné. Pojmenujte tabulku Ukazatele prodeje, a pak vyberte Načíst. Tato tabulka obsahuje vaše nové míry.

Vytvořit míry

  1. V podokně Data rozbalte a klikněte pravým tlačítkem na Prodejní míry a pak vyberte Nová míra. Do řádku vzorců DAX zadejte následující výraz DAX a stiskněte Enter:

    Sales Amount = SUM(Sales[Sales Amount])
    

    Měl by vypadat takto:

    Snímek obrazovky vzorce DAX pro míru prodejní částky

  2. V prodejních mírách klikněte pravým tlačítkem na Sloupec1 a vyberte Skrýt v zobrazení sestavy. Tím se změní prodejní ukazatele na skupinu ukazatelů, která se teď zobrazí v horní části podokna Data s ikonou skupiny ukazatelů, například takto:

    Snímek obrazovky se sloupcem Column1 ve skupině měr Sales

  3. Teď můžete vytvořit míru pro výpočet směnného kurzu. Pravým tlačítkem myši klikněte na Prodejní míry, vyberte Nová míra, do řádku vzorců DAX zadejte následující výraz a stiskněte Enter:

    Exchange Rate (Yearly Avg) = 
    IF (
        ISBLANK ( SELECTEDVALUE ( 'Country/Region Currency Format Strings'[Country/Region] ) )
            || SELECTEDVALUE ( 'Country/Region Currency Format Strings'[Country/Region] ) = "United States",
        1,
        AVERAGE ( 'Yearly Average Exchange Rates'[Yearly Average Exchange Rate] )
    )
    
    

    Měl by vypadat takto: Snímek obrazovky se vzorcem DAX směnného kurzu v editoru DAX.

  4. Teď vytvořte další míru, která převede míru Sales Amount na jiné měny. Pravým tlačítkem myši klikněte na Prodejní míry, vyberte Nová míra, do řádku vzorců DAX zadejte následující výraz a stiskněte Enter:

        Converted Sales Amount = 
        SUMX('Date',
        CALCULATE( [Sales Amount] * [Exchange Rate (Yearly Avg)]))
    
    

    Skupina měr Sales measures by teď měla vypadat takto: Snímek obrazovky vzorce pro míru převedené částky prodeje.

Vytvoření sestavy

  1. Přejděte do zobrazení Sestava. Přidejte do sestavy novou prázdnou stránku.

  2. Přidejte vizuál spojnicového grafu na novou stránku sestavy. Použijte tento vizuál k zobrazení metriky před přidáním dynamického formátovacího řetězce pro metriky.

  3. V podokně > – Míry Prodeje vyberte Converted Sales Amount (Převedená částka prodeje). Aniž byste vybírali kdekoli jinde, vyberte v tabulce Datum také Rok.

    Snímek obrazovky s vizuálem spojnicového grafu v zobrazení sestavy

  4. Zkopírujte a vložte vizuál, abyste měli dva vizuály spojnicového grafu. Změňte vizuál druhého spojnicového grafu na vizuál tabulky a pak ho přesuňte pod spojnicový graf, například takto:

    Snímek obrazovky vizuálu kopírovaného spojnicového grafu

  5. Výběrem řezatele seznamu v podokně Vizualizací přidejte vizuál řezatele seznamu na stránku reportu. V podokně Data vyberte Zemi/Oblast z tabulky Řetězce formátu měny země/oblasti a přidejte ji do průřezu.

    Snímek obrazovky s průřezem země/oblasti

  6. Přeuspořádejte vizuály, dokud nebudou mít lepší rozložení, například takto:

    Snímek obrazovky s uspořádáním vizuálů

  7. I když to není nutné, můžete změnit vlastnosti vizuálu a vytvořit tak přehlednější sestavu. Pomocí tlačítka Formát vizuálu v podokně Vizualizace proveďte následující změny:

    Slicer

    • Vizuál karta >Nastavení sliceru>Jednotlivý výběr>zapnuto
    • Obecná karta >Vlastnosti>Odsazení: 10 px, všechny hrany
    • Obecné záložka >Efekty>Vizuální ohraničení: Zapnuto, světle šedé, 10px zaoblené rohy
    • Obecné karta >Název: Vypnuto
    • Vizuál záložka >Tlačítka>Ohraničení: #333333, 6 čar šířka

    tabulka

    • Záložka Obecná>>: 10 px, všechny hrany
    • Obecné záložka >Efekty>Vizuální ohraničení: Zapnuto, světle šedá, 10px zaoblené rohy
    • Karta Vizuál>mřížka> vodorovných mřížek: Zapnuto, Bílá, šířka 2
    • Vizuální karta>>: Zapnuto, Bílé, šířka 2
    • VizuálnízáložkaMřížkaOhraničení: bílý
    • Vizualizace>mřížky>Možnosti: 2 řádky odsazení
    • Vizuál kartě >Hodnoty>Barva pozadí: #F6F4F4
    • Vizuál karta >Hodnoty>Alternativní barva pozadí: #F6F4F4
    • Vizuální> karta Záhlaví sloupců:> Tučný text, Barva textu bílá, Barva pozadí #0D6ABF

    Spojnicový graf

    • Obecné karta >Vlastnosti>Odsazení: 10 px, všechny hrany
    • Obecná karta>Efekty>Vizuální ohraničení: Zapnuto, světle šedá, zaoblené rohy 10 px
    • Karta obecné>Vlastnosti>Název>Podnázev: Zapnuto
    • Vizuální karta >Osa Y >Název: Vypnuto
    • Vizuál karta >Y-osy>Hodnoty: Vypnuto
    • Vizualizace karet >značky: Zapnuto
    • Vizuál karta >Popisky dat: Zapnuto
    • Vizuální karta >Popisky dat>Hodnota: Tučně, modře

    Plátno (volitelné)

    • Nastavení> plátnaPozadí plátna: světle šedá, 85% průhlednost

    S těmito vlastnostmi vizuálu získáte pěknou stránku sestavy, například takto:

    Snímek obrazovky s pozadím šedého plátna pro vizuál

Vytvoření řetězce dynamického formátu

Výběrem různých názvů zemí/oblasti ve filtru se zobrazí výsledek míry 'Převedená částka prodeje' ve vizualizacích, ale ne ve správném formátu pro danou zemi/oblast.

  1. V podokně Data v části Míry Prodeje vyberte Převedená částka prodeje.

  2. Na pásu karet Nástroje měr v rozevíracím seznamu Formát vyberte Dynamický.

  3. Rozevírací seznam vlevo od řádku vzorců by teď měl zobrazovat Formát a vzorec v řádku vzorců by měl mít formátovací řetězec. Nahraďte formátovací řetězec následujícím výrazem DAX a stiskněte Enter:

    SELECTEDVALUE ( 'Country/Region Currency Format Strings'[Format], "\$#,0.00;(\$#,0.00);\$#,0.00" )
    

    Měl by vypadat takto:

    Snímek obrazovky s dynamickým vzorcem pro formát měny země/oblasti

  4. V průřezu vyberte jinou zemi nebo oblast. Vizuály tabulkového a spojnicového grafu by teď měly zobrazovat převedenou částku měny ve správném formátu pro danou zemi nebo oblast. Zkuste v průřezu vybrat jinou zemi nebo oblast, abyste viděli, jak se vizuály mění.

    Snímek obrazovky s vizuálem Převedená částka prodeje

  5. Uložte model.

Známé problémy a důležité informace

  • Vizuály mají možnosti formátování, které můžou ovlivnit zobrazení řetězce formátu. Pokud se formátování ve vizuálu neočekávaně zobrazuje, přejděte do možností vizuálu Vizualizace>Formát vizuálu, vyhledejte jednotky zobrazení a změňte je z Automaticky na Žádné.

    Snímek obrazovky jednotek zobrazení nastavených z automaticky na žádné

  • Přímo můžete odkazovat na míru v řetězci dynamického formátu pomocí jejího názvu (například [Míra A]) nebo nepřímo pomocí SELECTEDMEASURE().

  • Řetězce dynamického formátu pro míry jsou určené pouze pro míry modelu. Míry sestavy, které lze přidat do sestavy živého připojení, nemohou mít dynamické formátovací řetězce.

  • Když u DirectQuery pro Analysis Services zvolíte Provést změny tohoto modelu v sestavě živého připojení, přesměruje připojení k DirectQuery přes Analysis Services. Obecně můžete provádět změny formátových řetězců měr vzdáleného modelu. S řetězci dynamického formátu pro ukazatele:

    • Míry vzdáleného modelu s definovanými řetězci dynamického formátu jsou blokované v provádění změn řetězce formátu na řetězec statického formátu nebo jiného výrazu DAX řetězce dynamického formátu.
    • Míry vzdáleného modelu nelze změnit z řetězce statického formátu na výraz DAX dynamického formátu definovaného v místním modelu.
    • Míry místního modelu jsou pro míry blokované pomocí řetězců dynamického formátu.