Jak vytvořit aplikaci, MS Power Platform, PowerApps, Vše

5. část – Power Apps tvorba nové aplikace podmíněné formátování

Občas je užitečné, aby různé řádky galerie měly různou barvu nebo některé prvky byly zobrazeny pouze někde. Pokud pro to existuje pravidlo vycházející z dat, lze tak učinit. Aneb naformátujete řádky galerie na základě nějaké podmínky -> podmíněné formátování.

Podmíněné formátování

Podmínka If()

Abyste mohli vytvořit podmíněné formátování, je nejdříve třeba znát funkci, která toho docílíte. Tou je funkce If(), v překladu Když(). Tato funkce je základem ve většině programovacích jazyků a její logika je všude stejná, liší se pouze syntaxe. V první části je vždy nějaký logický dotaz, otázka, na kterou lze odpovědět ano/ne (pravda/nepravda – true/false). Následuje příkaz, který se provede, pokud je odpověď na dotaz pravda. Za tím následuje příkaz, který se provede v opačném případě, tedy když je odpověď nepravda.

V PowerApps je přesná syntaxe následující:

If(dotaz; příkaz pokud pravda; dotaz; příkaz pokud pravda; … ; příkaz pokud nepravda – nepovinný).

Nemusí se tedy psát pouze jeden dotaz a jeden příkaz pro pravdu, ale lze se postupně ptát na další dotazy a pro ně psát příkazy. Funkce se vyhodnocuje od začátku (zleva) a pokračuje dále, dokud nenarazí na dotaz, jež vyhodnotí jako pravdu. Poté provede příkaz, uvedený za tímto dotazem a na další dotaz již nepokračuje. Pokud není žádný dotaz pravda, provede se příkaz pro nepravdu, pokud je nějaký uveden, jinak se nestane nic. Výsledkem funkce je tedy vždy maximálně jeden příkaz.

Podmínka pro různé barvy řádků galerie

Funkci If() lze tedy využít například pro různou barvu řádků podle pracovní pozice / oddělení, které jste již v datech definovali. Běžné pracovníky zobrazíte třeba světle modře a vedoucí prodejny světle žlutě. Připravte si pro to hodnoty RGB jednotlivých barev, například 204; 231; 246 jako světle modrou a 250; 250; 150 jako světle žlutou.

Pro nastavení barvy řádků využijete vlastnost galerie TemplateFill. Do této vlastnosti vepíšete podmínku If(hodnota oddělení tohoto řádku = “Pracovník”;  RGBA světle modré barvy; hodnota oddělení tohoto řádku = “Vedoucí prodejny”; RGBA světle žluté barvy; bílá barva). Kdekoli ve vlastnostech galerie nebo vlastnostech prvků uvnitř řádku galerie lze přistupovat k hodnotám daného řádku pomocí příkazu ThisItem.’nějaká vlastnost nebo název sloupce tabulky’. V tomto případě chcete hodnotu ve sloupci Oddělení. Jelikož sloupec oddělení je typu volba (složitější struktura než textový sloupec), nestačí vypsat pouze název sloupce, ale je třeba ještě určit, že se má porovnávat hodnota dané volby: ThisItem.Oddělení.Value. Výstup tohoto příkazu je textová hodnota volby, která je pro daný záznam (řádek) uložena. RGBA je hodnota RGB a k tomu hodnota průhlednosti. Tedy pro světle modrou barvu plně neprůhlednou je kód RGBA(204; 231; 246; 1). Pro výsledek nepravda, kdy zaměstnanec není ani na jedné pracovní pozici, lze použít čistě příkaz pro bílou barvu: White. Výsledný kód vypadá takto:

Galerie má poté různě barevné řádky podle pracovní pozice:

Podmínka pro zobrazení prvku na řádku galerie

Další využití podmínky v galerii je případ, kdy chcete, aby například ikona popelnice nebyla vidět u zaměstnanců, kteří jsou vedoucí prodejny, tedy aby tyto zaměstnance nešlo odstranit.

Zde se dá využít zjednodušené podmínky ve vlastnosti  Visible (Viditelný) daného prvku. Tato vlastnost je typu true/false (pravda/nepravda), tudíž zde stačí napsat pouze samotné dotazy. Jejich výsledkem je vždy true/false, tedy přesně to, co vlastnost Visible vyžaduje. V základu má každý prvek v této vlastnosti napsáno true, tedy je vždy viditelný. Pokud to přepíšete na false, prvek bude vždy skrytý. Místo toho ale napište dotaz, který je pravda jen v některých případech. Pouze v těchto případech bude prvek viditelný. Popelnice v galerii by měla být viditelná pouze tehdy, když zaměstnanec není vedoucí prodejny. Nerovná se se značí <>. Tedy do vlastnosti Visible napíšete dotaz ThisItem.Oddělení.Value <> “Vedoucí prodejny”.  Popelnice budou viditelné u všech záznamů, které splňují podmínku, že oddělení se nerovná Vedoucí prodejny, jak vidíte na obrázku.

Školení Power Apps

Pokud by vás zajímalo více z Power Apps připravili jsme školení pro začátečníky i pokročilé nebo individuální školení na míru. Podívejte se na naší nabídku školení, ze které si vybere každý.

Naše minisérie článků

Zajímá vás, co dalšího lze v Power Apps nastavit a jak dále aplikaci tvořit. Sledujte naši minisérii článků, kam pravidelně přidáváme další články o Power Apps.

Napsat komentář