Vstavané kolekcie – na premenné zostavy a skupiny sa v stránkovanej zostave (Zostavovač zostáv Power BI)
VZŤAHUJE SA NA: Power BI Zostavovač zostáv Power BI Desktop
Ak máte komplexný výpočet, ktorý sa vo výrazoch v stránkovanej zostave používa viackrát, možno budete chcieť vytvoriť premennú. Môžete vytvoriť premennú zostavy alebo skupinovú premennú. Názvy premenných musia byť v zostave jedinečné.
Premenné zostavy
Pomocou premennej zostavy uchovávajte hodnotu pre výpočty závislé od času, ako sú napríklad sadzby meny alebo časové pečiatky, alebo na zložitý výpočet, na ktorý sa viackrát odkazuje. V predvolenom nastavení sa premenná zostavy vypočíta raz a možno ju použiť vo výrazoch v celej zostave. Premenné zostavy sú predvolene určené iba na čítanie. Môžete zmeniť predvolenú hodnotu na povolenie premennej zostavy ako režim čítania a zapisovania. Hodnota v premennej zostavy sa zachová počas celej relácie, kým sa zostava znova nespracuje.
Ak chcete pridať premennú zostavy, otvorte dialógové okno ReportProperties (Nastavenia Zostáv), vyberte položku Premenné a zadajte názov a hodnotu. Názvy sú reťazce rozlišujú sa veľké a malé písmená, ktoré začínajú písmenom a nemajú žiadne medzery. Názov môže obsahovať písmená, čísla alebo znaky podčiarknutia (_).
Ak chcete odkazovať na premennú vo výraze, použite syntax globálnej kolekcie, =Variables!CustomTimeStamp.Value
napríklad . V oblasti návrhu sa hodnota zobrazí v textovom poli ako <<Expr>>
.
Premenné zostavy môžete použiť nasledujúcimi spôsobmi:
Použitie iba na čítanie: Ak chcete vytvoriť konštantu pre reláciu zostavy, môžete raz nastaviť hodnotu, napríklad vytvoriť časovú pečiatku.
Keďže výrazy v textových poliach sa vyhodnocujú na požiadanie ako strany používateľa v rámci zostavy, dynamické hodnoty (napríklad výraz, ktorý obsahuje
Now()
funkciu, ktorá vracia čas dňa) môžu vrátiť rôzne hodnoty, ak stranu posuniete dopredu a dozadu pomocou tlačidla Späť . Nastavením hodnoty premennej zostavy na výraz=Now()
a následným pridaním premennej do výrazu zaistíte, že v rámci spracovania zostavy sa použije rovnaká hodnota.Použitie režimu čítania a zapisovania : Nastavte hodnotu raz a serializujte hodnotu v rámci relácie zostavy. Možnosť čítania a zapisovania pre premenné poskytuje lepšiu alternatívu než použitie statickej premennej v bloku Kód v definícii zostavy.
Keď vymažete možnosť Iba na čítanie pre premennú, vlastnosť Writable pre premennú sa nastaví na hodnotu true. Ak chcete aktualizovať hodnotu z výrazu, použite metódu SetValue,
=Variables!MyVariable.SetValue("123")
napríklad .Poznámka
Nedá sa ovládať, keď procesor zostavy inicializuje premennú, alebo vyhodnotí výraz, ktorý aktualizuje premennú. Poradie spustenia inicializácie premenných nie je definované.
Ďalšie informácie o reláciách nájdete v téme Ukážky zostáv v službe Zostavovač zostáv.
Skupinové premenné
Na výpočet zložitého výrazu v rozsahu skupiny použite skupinovú premennú. Skupinová premenná je platná iba v rozsahu skupiny a jej podradených skupín.
Predpokladajme napríklad, že oblasť údajov zobrazuje údaje inventára pre položky, ktoré sú v rôznych kategóriách daní, a chcete použiť rôzne sadzby dane pre každú kategóriu. Zoskupíte údaje v časti Kategória a zadefinujete premennú Tax (Daň) v nadradenej skupine. Potom by ste definovali skupinovú premennú pre ItemTax pre každú daňovú kategóriu a priradili každú z rôznych podskupín Category do správnej premennej skupiny. Napríklad:
Pre nadradenú skupinu založenú na
[Category]
, definujte premennú Tax (Daň ) s hodnotou[Tax]
. Predpokladajme, že hodnoty kategórií sú Food (Jedlo) a Clothing (Oblečenie).Pre podriadenú skupinu založenú na
[Subcategory]
, definujte premennú ItemsTax ako=Variables!Tax.Value * Sum(Fields!Price.Value)
. Predpokladajme, že hodnoty podkategórie pre kategóriu Jedlo sú Nápoje a Chlieb. Predpokladajme, že hodnoty podkategórie pre Oblečenie sú košele a klobúky.Pre textové pole v riadku v podradenej skupine pridajte výraz
=Variables!ItemsTax.Value
.Textové pole zobrazuje celkovú daň za nápoje a chlieb pomocou dane z potravín a pre košele a klobúky pomocou dane z oblečenia.
Ak chcete pridať premennú skupiny, otvorte dialógové okno Vlastnosti skupiny Tablix, vyberte položku Premenné a zadajte názov a hodnotu. Premenná skupiny sa vypočíta raz na jedinečnú hodnotu skupiny.
Ak chcete odkazovať na premennú vo výraze, použite syntax globálnej kolekcie, =Variables!GroupDescription.Value
napríklad . V oblasti návrhu sa hodnota zobrazí v textovom poli ako <<Expr>>
.