Pomocou definovaných vlastných funkcií môžeme napísať vzorec raz a opakovane ho používať v celej aplikácii Power Apps! Fantastické, na túto funkciu som netrpezlivo čakal už niekoľko rokov. Milujem toto nové rozšírenie funkcií Power Apps a teším sa, ako ho budem používať vo svojich mobilných aplikáciách.
Používateľom definované funkcie (UDF) sú v Power Apps momentálne experimentálnou funkciou a peto ju musíme najskôr povoliť. Prejdeme do Nastavení a v záložke Podpora prepneme štandardnú verziu Power Apps štúdia na verziu 3.24013.14 (alebo novšiu)
Teraz v časti Nové funkcie v záložke Experimentálne zapneme Nový analytický stroj a následne aj Používateľom definované funkcie
Teraz, keď máme Power Apps štúdio pripravené na používanie používateľom definovaných funkcií, môžeme si na prázdnu obrazovku pridať dve textové polia s názvom txtCislo1 a txtCislo2, ktorým vlastnosť Default nastavíme na ľubovolné čísla (napr. 1 a 2) a vlastnosť Format (TextFormat) nastavíme na číslo
Vlastné funkcie definujeme v objekte App a jeho vlastnosti Formulas. Syntax pre používateľom definovanú funkciu je:
FunctionName(Parameter1:DataType1;Parameter2:DataType2):OutputDataType=Vzorec
FunctionName – vlastné pomenovanie funkcie, používa sa na zavolanie funkcie
Parameter – názov vstupu, je povolený jeden alebo viac vstupov
DataType – argument odovzdaný do funkcie sa musí zhodovať s týmto typom údajov
OutputDataType – výstup funkcie bude v tomto dátovom type
Vzorec – výsledok vzorca je výstup funkcie
Viacero vlastných funkcií oddeľujeme od seba dvomi bodkočiarkami (v závislosti od nastaveného prostredia).
Príklad vlastnej funkcie pre sčítanie našich dvoch polí je nasledovný:
MojeScitanie(Cislo1:Number;Cislo2:Number):Number=Cislo1+Cislo2
Na záver už iba vložíme Označenie textu (popisok) ktorému vlastnosť Text nastavíme - zavoláme našu vlastnú funkciu MojeScitanie(), kde doplníme Parametre Cislo1 a Cislo2 - naše textové polia...
"Sčítanie dvoch polí: " & MojeScitanie(Value(txtCislo1.Text);Value(txtCislo2.Text))
... samozrejme, aj vo vlastných definovaných funkciách sa môže vyskytnúť chyba, preto doporučujem celú funkciu "zabaliť" do funkcie IfError().
Ak sa vám článok páčil, ohodnoťte ho v úvodnej (hornej) časti. Ak máte nejaké otázky k používateľom definovaným vlastným funkciám v Power Apps, napíšte nám.