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
.
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.
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:
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 , Parameters a 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.Convert další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ě.