Sdílet prostřednictvím


Výrazy v Power BI Tvůrce sestav

PLATÍ PRO: Power BI Tvůrce sestav Power BI Desktopu

Výrazy se široce používají v rámci Power BI Tvůrce sestav stránkovaných sestav k načtení, výpočtu, zobrazení, skupině, řazení, filtrování, parametrizaci a formátování dat.

Mnoho vlastností položky sestavy lze nastavit na výraz. Výrazy pomáhají řídit obsah, návrh a interaktivitu sestavy. Výrazy jsou napsané v jazyce Microsoft Visual Basic, uloženy v definici sestavy a vyhodnoceny procesorem sestavy při spuštění sestavy.

Na rozdíl od aplikací, jako je Microsoft Excel, kde pracujete s daty přímo v listu, pracujete v sestavě s výrazy, které jsou zástupnými symboly pro data. Pokud chcete zobrazit skutečná data z vyhodnocených výrazů, musíte zobrazit náhled sestavy. Při spuštění sestavy procesor sestavy vyhodnocuje každý výraz, protože kombinuje data sestavy a prvky rozložení sestavy, jako jsou tabulky a grafy.

Při návrhu sestavy je pro vás nastaveno mnoho výrazů pro položky sestavy. Když například přetáhnete pole z podokna dat do buňky tabulky na návrhové ploše sestavy, nastaví se hodnota textového pole na jednoduchý výraz pole. Na následujícím obrázku se v podokně Data sestavy zobrazí ID polí datové sady, Název, SalesTerritory, Code a Sales. Do tabulky byly přidány tři pole: [Name], [Code]a [Sales]. Zápis [Name] na návrhové ploše představuje podkladový výraz =Fields!Name.Value.

Snímek obrazovky Tvůrce sestav návrhového zobrazení

Při zobrazení náhledu sestavy procesor sestav kombinuje oblast dat tabulky se skutečnými daty z datového připojení a zobrazí řádek v tabulce pro každý řádek v sadě výsledků.

Pokud chcete výrazy zadat ručně, vyberte položku na návrhové ploše a pomocí místních nabídek a dialogových oken nastavte vlastnosti položky. Když uvidíte tlačítko (fx) nebo hodnotu <Expression> v rozevíracím seznamu, víte, že vlastnost můžete nastavit na výraz.

Vysvětlení jednoduchých a složitých výrazů

Výrazy začínají symbolem rovná se (=) a zapisují se v jazyce Microsoft Visual Basic. Výrazy můžou zahrnovat kombinaci konstant, operátorů a odkazů na předdefinované hodnoty (pole, kolekce a funkce) a externí nebo vlastní kód.

Pomocí výrazů můžete zadat hodnotu mnoha vlastností položky sestavy. Nejběžnějšími vlastnostmi jsou hodnoty textových polí a zástupného textu. Obvykle platí, že pokud textové pole obsahuje pouze jeden výraz, je výraz hodnotou vlastnosti textového pole. Pokud textové pole obsahuje více výrazů, je každý výraz hodnotou zástupného textu v textovém poli.

Ve výchozím nastavení se výrazy zobrazují na návrhové ploše sestavy jako jednoduché nebo složité výrazy.

  • Jednoduché: Jednoduchý výraz obsahuje odkaz na jednu položku v předdefinované kolekci, například pole datové sady, parametr nebo předdefinované pole. Na návrhové ploše se v hranatých závorkách zobrazí jednoduchý výraz. Například [FieldName] odpovídá podkladovému výrazu =Fields!FieldName.Value. Jednoduché výrazy se vytvoří automaticky při vytváření rozložení sestavy a přetažení položek z podokna Data sestavy na návrhovou plochu. Další informace o symbolech, které představují různé předdefinované kolekce, najdete v tématu Vysvětlení symbolů předpon pro jednoduché výrazy.

  • Komplexní: Komplexní výraz obsahuje odkazy na více předdefinovaných odkazů, operátorů a volání funkcí. Složitý výraz se zobrazí, jako <<Expr>> když hodnota výrazu obsahuje více než jednoduchý odkaz. Pokud chcete zobrazit výraz, najeďte myší na něj a použijte popis. Pokud chcete výraz upravit, otevřete ho v dialogovém okně Výraz .

Následující obrázek znázorňuje typické jednoduché a složité výrazy pro textová pole i zástupný text.

Snímek obrazovky s výchozím formátem výrazu

Pokud chcete místo textu pro výrazy zobrazit ukázkové hodnoty, použijte formátování textového pole nebo zástupného textu. Následující obrázek znázorňuje přepínací plochu návrhu sestavy tak, aby zobrazovala ukázkové hodnoty:

Snímek obrazovky s ukázkovými hodnotami výrazu

Vysvětlení symbolů předpon v jednoduchých výrazech

Jednoduché výrazy používají symboly k označení, zda je odkaz na pole, parametr, předdefinované kolekce nebo kolekce ReportItems . Následující tabulka ukazuje příklady zobrazení a textu výrazu:

Položka Příklad zobrazovaného textu Příklad textu výrazu
Pole datové sady [Sales]

[SUM(Sales)]

[FIRST(Store)]
=Fields!Sales.Value

=Sum(Fields!Sales.Value)

=First(Fields!Store.Value)
Parametry sestavy [@Param]

[@Param.Label]
=Parameters!Param.Value

=Parameters!Param.Label
Předdefinovaná pole [&ReportName] =Globals!ReportName.Value
Literální znaky používané pro zobrazovaný text \[Sales\] [Sales]

Psaní složitých výrazů

Výrazy mohou zahrnovat odkazy na funkce, operátory, konstanty, pole, parametry, položky z předdefinovaných kolekcí a vložený vlastní kód nebo vlastní sestavení.

Následující tabulka uvádí typy odkazů, které můžete zahrnout do výrazu:

Reference Popis Příklad
Konstanty Popisuje konstanty, ke kterým můžete interaktivně přistupovat pro vlastnosti, které vyžadují konstantní hodnoty, například barvy písma. ="Blue"
Operátory Popisuje operátory, které můžete použít ke kombinování odkazů ve výrazu. Například operátor & slouží ke zřetězení řetězců. ="The report ran at: " & Globals!ExecutionTime & "."
Předdefinované kolekce Popisuje předdefinované kolekce, které můžete zahrnout do výrazu, například Fields, Parametersa Variables. =Fields!Sales.Value

=Parameters!Store.Value

=Variables!MyCalculation.Value
Předdefinované funkce sestavy a agregace Popisuje předdefinované funkce, například Sum nebo Previous, ke kterým můžete přistupovat z výrazu. =Previous(Sum(Fields!Sales.Value))
Odkazy na vlastní kód a sestavení ve výrazech v Tvůrce sestav Popisuje, jak můžete přistupovat k integrovaným třídám xref:System.Math CLR a xref:System.Convertdalším třídám CLR, funkcím knihovny runtime jazyka Visual Basic nebo metodám z externího sestavení.

Popisuje, jak můžete získat přístup k vlastnímu kódu, který je vložen do sestavy, nebo který zkompilujete a nainstalujete jako vlastní sestavení na klienta sestavy i na server sestav.
=Sum(Fields!Sales.Value)

=CDate(Fields!SalesDate.Value)

=DateAdd("d",3,Fields!BirthDate.Value)

=Code.ToUSD(Fields!StandardCost.Value)

Ověření výrazů

Když vytvoříte výraz pro konkrétní vlastnost položky sestavy, odkazy, které můžete zahrnout do výrazu, závisí na hodnotách, které vlastnost položky sestavy může přijmout a obor, ve kterém se vlastnost vyhodnotí. Příklad:

  • Ve výchozím nastavení výraz [Sum] vypočítá součet dat, která jsou v rozsahu v době vyhodnocení výrazu. U buňky tabulky závisí obor na členství ve skupinách řádků a sloupců.

  • Pro hodnotu vlastnosti Font musí být hodnota vyhodnocena jako název písma.

  • Syntaxe výrazu se ověřuje v době návrhu. Při publikování sestavy dojde k ověření oboru výrazu. Pro ověření, které závisí na skutečných datech, je možné chyby detekovat pouze za běhu. Některé z těchto výrazů vytvářejí #Error jako chybovou zprávu v vykreslené sestavě.

Další kroky