Sdílet prostřednictvím


Objekt App v Power Apps

Platí pro: aplikace Canvas

Získejte informace o aktuálně spuštěné aplikaci a určete chování aplikace.

Popis

Podobně jako ovládací prvek má objekt aplikace vlastnosti, které identifikují, která obrazovka se zobrazuje, a vyzve vás k uložení změn, aby se neztratily. Každá aplikace má objekt Aplikace.

Napište vzorce pro některé vlastnosti objektu aplikace . V horní části podokna Stromové zobrazení vyberte objekt Aplikace, jako byste měli jakýkoli jiný ovládací prvek nebo obrazovku. Pokud chcete zobrazit nebo upravit některou z vlastností objektu, vyberte ji v rozevíracím seznamu vlevo od řádku vzorců.

Snímek obrazovky s objektem aplikace vybraným v podokně Stromové zobrazení Podokno vlastností je viditelné.

Vlastnost ActiveScreen

Vlastnost ActiveScreen identifikuje aktuálně zobrazenou obrazovku.

Tato vlastnost vrací objekt obrazovky. Slouží k odkazování na vlastnosti aktuální obrazovky, jako je název se vzorcem App.ActiveScreen.Name. Tuto vlastnost můžete také porovnat s jiným objektem obrazovky, například s srovnávacím vzorcem App.ActiveScreen = Screen2 a zkontrolovat, jestli je obrazovka 2 aktuální.

Pomocí funkce Zpět nebo Navigate můžete přepnout zobrazenou obrazovku.

Vlastnost BackEnabled

Vlastnost BackEnabled změní způsob reakce aplikace na gesto zpět zařízení (potáhněte prstem nebo použijte tlačítko zpět hardwaru na zařízeních s Androidem nebo potáhněte prstem zleva na zařízeních s iOSem) při spuštění v Power Apps mobile. Pokud je toto gesto zapnuté, vrátí se zpět na obrazovku, která byla naposledy zobrazena, což se podobá vzorci Zpět . Když je zakázané, gesto pro vrácení zařízení uživatele přejde do seznamu aplikací.

Vlatnosti ConfirmExit

Nikdo nechce přijít o neuložené změny. Před zavřením aplikace použijte vlastnosti ConfirmExit a ConfirmExitMessage .

Poznámka:

  • ConfirmExit nefunguje v aplikacích vložených například v Power BI a SharePointu.
  • Funkce ConfirmExit není na vlastních stránkách podporovaná.
  • Tyto vlastnosti teď můžou odkazovat jenom na první obrazovku, pokud je povolená funkce Náhled zpožděného načtení (což je ve výchozím nastavení pro nové aplikace). Pokud odkazujete na jiné obrazovky, Power Apps Studio nezobrazuje chybu, ale publikovaná aplikace se neotevře v Power Apps Mobile ani v prohlížeči. Pracujeme na tom, abychom toto omezení zrušili. Do té doby vypněte zpožděné načítání vnadcházejících funkcích> (v části Preview).

ConfirmExit

ConfirmExit je logická vlastnost, která při true otevře potvrzovací dialogové okno před zavření aplikace. Ve výchozím nastavení je tato vlastnost false a nezobrazí se žádné dialogové okno.

Když uživatel může mít neuložené změny v aplikaci, použijte tuto vlastnost k zobrazení potvrzovacího dialogového okna před ukončením aplikace. Použijte vzorec, který kontroluje proměnné a vlastnosti ovládacího prvku (například neuložené vlastnosti ovládacího prvku Formulář pro úpravy ).

Potvrzovací dialogové okno se zobrazí v jakékoli situaci, kdy mohou být ztracena data, například:

  • Spusťte funkci Exit .
  • Pokud aplikace běží v prohlížeči:
    • Zavřete prohlížeč nebo kartu prohlížeče, kde aplikace běží.
    • Vyberte tlačítko Zpět prohlížeče.
    • Spusťte funkci Launch s funkcí LaunchTargetsebe sama.
  • Pokud aplikace běží v Power Apps Mobile (iOS nebo Android):
    • Potáhnutím prstem přepněte do jiné aplikace v Power Apps Mobile.
    • Na zařízení s Androidem vyberte tlačítko Zpět.
    • Spuštěním funkce Launch spusťte jinou aplikaci plátna.

Přesný vzhled potvrzovacího dialogového okna se může lišit v různých zařízeních a verzích Power Apps.

Potvrzovací dialogové okno se v Power Apps Studiu nezobrazuje.

ConfirmExitMessage

Ve výchozím nastavení se v potvrzovacím dialogovém okně zobrazuje obecná zpráva, například „Možná jste neuložili změny.“ v jazyce uživatele.

Použijte ConfirmExitMessage pro zobrazení vlastní zprávy v dialogovém okně pro potvrzení. Pokud je tato vlastnost prázdná, použije se výchozí hodnota. Vlastní zprávy se podle potřeby zkracují tak, aby se vešly do potvrzovacího dialogového okna, takže nechte zprávu maximálně na několik řádků.

V prohlížeči může potvrzovací dialogové okno zobrazit obecnou zprávu z prohlížeče.

Poznámka:

Objekt aplikace má dvě další vlastnosti OnMessage a BackEnabled, které jsou experimentální. Tyto vlastnosti se z objektu aplikace nakonec odeberou. Nepoužívejte tyto vlastnosti v produkčním prostředí.

Příklad

  1. Nastavte vlastnost objektu AplikaceConfirmExit na tento výraz:

    AccountForm.Unsaved Or ContactForm.Unsaved
    

    V dialogovém okně se zobrazí, jestli uživatel změní data v některém formuláři a pokusí se aplikaci zavřít bez uložení těchto změn. Uživatel změní data v obou formulářích a pokusí se aplikaci zavřít bez uložení těchto změn.

    [!div clas1. Nastavte vlastnost objektu AplikaceConfirmExitMessage na tento vzorec:

    If( AccountsForm.Unsaved,
        "Accounts form has unsaved changes.",
        "Contacts form has unsaved changes."
    )
    

    V dialogovém okně se zobrazí, jestli uživatel změní data ve formuláři Účet a pokusí se aplikaci zavřít bez uložení těchto změn.

    Dialogové okno pro potvrzení dle konkrétního formuláře.

Nastavení připojovacího řetězce pro Application Insights

Pokud chcete exportovat systémové protokoly aplikací do Application Insights, nastavte připojovací řetězec pro aplikaci plátna.

  1. Otevřete aplikaci pro úpravy v aplikaci Power Apps Studio.
  2. Vyberte objekt Aplikace ve stromovém zobrazení v levé navigaci.
  3. Do podokna vlastností zadejte připojovací řetězec .

Pokud se data neodesílají do Application Insights, obraťte se na správce Power Platform a zkontrolujte, jestli je Služba App Insights na úrovni tenanta zakázaná.

Vlastnost Formulas

Pojmenované vzorce použijte ve vlastnosti Formulas, abyste mohli definovat vzorec, který lze znovu použít v celé aplikaci.

Vzorce v Power Apps určují hodnotu vlastností ovládacího prvku. Chcete-li například konzistentně nastavit barvu pozadí v celé aplikaci, můžete nastavit vlastnost Fill každého ovládacího prvku na společný vzorec:

Label1.Fill: ColorValue( Param( "BackgroundColor" ) )
Label2.Fill: ColorValue( Param( "BackgroundColor" ) )
Label3.Fill: ColorValue( Param( "BackgroundColor" ) )

S tolika místy, kde lze tento vzorec použít, je zdlouhavé a náchylné k chybám je všechny aktualizovat, pokud je potřeba změna. Místo toho můžete vytvořit globální proměnnou ve vlastnosti OnStart, kterou jednou nastavíte barvu a poté ji znovu použijete v celé aplikaci:

App.OnStart: Set( BGColor, ColorValue( Param( "BackgroundColor" ) ) )
Label1.Fill: BGColor
Label2.Fill: BGColor
Label3.Fill: BGColor

I když je tato metoda lepší, záleží také na spuštění vlastnosti OnStart před zavedením hodnoty BGColor. Hodnota BGColor může být také zmanipulována v některé části aplikace, o které tvůrce neví, kterou provede někdo jiný a kterou může být těžké vystopovat.

Alternativu poskytují pojmenované vzorce. Stejně jako běžně píšeme control-property = expression, můžeme místo toho napsat name = expression a poté znovu použít name (název) v celé naší aplikaci, aby nahradil expression. Definice těchto vzorců jsou zadány ve vlastnosti Formulas:

App.Formulas: BGColor = ColorValue( Param( "BackgroundColor" ) );
Label1.Fill: BGColor
Label2.Fill: BGColor
Label3.Fill: BGColor

Mezi výhody použití pojmenovaných vzorců patří:

  • Hodnota vzorce je vždy k dispozici. Neexistuje žádná závislost na čase, není třeba, aby vlastnost OnStart byla spuštěna dříve, než je nastavena hodnota, nestane se, že by kdy byla hodnota vzorce nesprávná. Pojmenované vzorce na sebe mohou odkazovat v libovolném pořadí, pokud nevytvářejí cyklický odkaz. Lze je počítat paralelně.
  • Hodnota vzorce je vždy aktuální. Vzorec může provést výpočet, který je závislý na vlastnostech ovládacího prvku nebo záznamech databáze, a když se tyto mění, hodnota vzorce se automaticky aktualizuje. Hodnotu není třeba ručně aktualizovat jako u proměnné. Mimo to se vzorce přepočítávají pouze v případě potřeby.
  • Definice vzorce je neměnná. Definice ve vlastnosti Formulas je jediný správný zdroj a hodnotu lze v celé aplikaci změnit jen zde. U proměnných je možné, že některý kód neočekávaně změní hodnotu, ale tato obtížně laditelná situace není možná s pojmenovanými vzorci.
  • Výpočet vzorce lze odložit. Protože je jeho hodnota neměnná, lze ji vždy vypočítat, když je potřeba, což znamená, že se nemusí počítat, dokud není potřeba. Hodnoty vzorce, které nejsou použity do chvíle zobrazení obrazovky2 aplikace, se nemusí počítat, dokud je obrazovka2 viditelná. Odložení této práce může zlepšit dobu načítání aplikace. Pojmenované vzorce jsou deklarativní a umožňují systému optimalizovat způsob a čas jejich výpočtu.
  • Pojmenované vzorce jsou konceptem aplikace Excel. Power Fx používá koncepty aplikace Excel, kde je to možné, protože mnoho lidí Excel dobře zná. Pojmenované vzorce jsou ekvivalentem pojmenovaných buněk a pojmenovaných vzorců v aplikaci Excel, spravované pomocí Správce názvů. Přepočítávají se automaticky stejně jako buňky v tabulkovém procesoru a vlastnosti ovládacích prvků.

Pojmenované vzorce jsou definovány jeden po druhém ve vlastnosti Formulas, každá končí středníkem. Typ vzorce je odvozen z typů prvků ve vzorci a ze způsobu jejich společného použití. Tyto pojmenované vzorce například načítají užitečné informace o aktuálním uživateli z Dataverse:

UserEmail = User().Email;
UserInfo = LookUp( Users, 'Primary Email' = User().Email );
UserTitle = UserInfo.Title;
UserPhone = Switch( UserInfo.'Preferred Phone', 
                    'Preferred Phone (Users)'.'Mobile Phone', UserInfo.'Mobile Phone',
                    UserInfo.'Main Phone' );

Pokud vzorec pro UserTitle vyžaduje aktualizaci, lze to snadno provést v tomto jediném místě. Pokud aplikace nevyžaduje UserPhone, pak se tato volání neprovedou pro tabulku Users v Dataverse. Za zahrnutí definice vzorce, který se nepoužije, není žádná penalizace.

Některá omezení pojmenovaných vzorců:

  • Nemohou používat funkce chování nebo jinak způsobovat vedlejší účinky v rámci aplikace.
  • Nemohou vytvořit cyklický odkaz. Není povoleno, aby aplikace obsahovala jak a = b;, tak b = a;.

Uživatelsky definované funkce

Power Fx zahrnuje dlouhý seznam předdefinovaných funkcí jako If, Text a Set. Uživatelem definované funkce umožňují psát vlastní funkce, které přebírají parametry a vracejí hodnotu, stejně jako předdefinované funkce. Uživatelem definované funkce si můžete představit jako rozšíření pojmenovaných vzorců, které přidává parametry a podporuje vzorce chování.

Můžete například definovat pojmenovaný vzorec, který vrací beletristické knihy z knihovny:

Library = [ { Title: "The Hobbit", Author: "J. R. R. Tolkien", Genre: "Fiction" },
            { Title: "Oxford English Dictionary", Author: "Oxford University", Genre: "Reference" } ];

LibraryFiction = Filter( Library, Genre = "Fiction" );

Bez parametrů bychom museli definovat samostatné pojmenované vzorce pro každý žánr. Místo toho ale parametrizujme náš pojmenovaný vzorec:

LibraryType := Type( [ { Title: Text, Author: Text, Genre: Text } ] );

LibraryGenre( SelectedGenre: Text ): LibraryType = Filter( Library, Genre = SelectedGenre );

Nyní můžeme volat LibraryGenre( "Fiction" ), LibraryGenre( "Reference" ) nebo filtrovat jiné žánry pomocí jediné uživatelem definované funkce.

Syntaxe je následující:

NázevFunkce( [ NázevParametru1: TypParametru1 [ , NázevParametru2: TypParametru2 ... ] ] ) : NávratovýTyp = Vzorec;

  • NázevFunkce – povinné. Název uživatelem definované funkce.
  • NázvyParametrů – volitelné. Název parametru funkce.
  • TypyParametrů – volitelné. Název typu, buď vestavěný název datového typu, název zdroje dat nebo typ definovaný funkcí Type.
  • NávratovýTyp – povinné. Typ návratové hodnoty z funkce.
  • Vzorec – povinné. Vzorec, který vypočítá hodnotu funkce na základě parametrů.

Každý parametr a výstup z uživatelem definované funkce musí být typován. V tomto příkladu SelectedGenre: Text definuje první parametr naší funkce jako typ Text a SelectedGenre je název parametru, který se používá v těle operace Filter. Podporované názvy typů najdete v tématu Datové typy. Funkce Type se používá k vytvoření agregovaného typu pro naši knihovnu, abychom mohli vrátit tabulku knih z naší funkce.

Definovali jsme LibraryType jako typ množného čísla tabulky záznamů. Pokud chceme funkci předat jednu knihu, můžeme extrahovat typ záznamu pro tuto tabulku pomocí funkce RecordOf:

BookType := Type( RecordOf( LibraryType ) );

IsGenre( Book: BookType, SelectedGenre: Text ): Boolean = (Book.Genre = SelectedGenre);

Porovnávání záznamů pro parametry funkce je přísnější než v jiných částech Power Fx. Pole hodnoty záznamu musí být správnou podmnožinou definice typu a nesmí obsahovat další pole. Například IsGenre( { Title: "My Book", Published: 2001 }, "Fiction" ) bude mít za následek chybu.

Všimněte si, že rekurze zatím není podporována uživatelem definovanými funkcemi.

Chování uživatelem definované funkce

Pojmenované vzorce a většina uživatelem definovaných funkcí nepodporují funkce chování s vedlejšími účinky, například Set nebo Notify. Obecně platí, že pokud je to možné, je nejlepší vyhnout se aktualizaci stavu, místo toho se spolehnout na funkční programovací vzory a umožnit Power Fx automatické přepočítávání vzorců podle potřeby. Existují však případy, kdy je to nevyhnutelné. Chcete-li zahrnout logiku chování do uživatelem definované funkce, zabalte tělo do složených závorek:

Spend( Amount: Number ) : Void = {
    If( Amount > Savings, 
        Error( $"{Amount} is more than available savings" ),
        Set( Savings, Savings - Amount );
        Set( Spent, Spent + Amount) 
    );
}

Nyní můžeme zavolat Spend( 12 ), abychom zkontrolovali, zda máme hodnotu 12 v našich Úsporách, a pokud ano, odečíst 12 a přičíst 12 k proměnné Utraceno. Návratový typ této funkce je Prázdné, protože nevrací hodnotu.

Syntaxe uživatelem definované funkce chování je:

NázevFunkce( [ NázevParametru1: TypParametru1 [ , NázevParametru2: TypParametru2 ... ] ] ) : NávratovýTyp = { Vzorec1 [ ; Vzorec2 ... ] };

  • NázevFunkce – povinné. Název uživatelem definované funkce.
  • NázvyParametrů – volitelné. Název parametru funkce.
  • TypyParametrů – volitelné. Název typu, buď vestavěný název datového typu, název zdroje dat nebo typ definovaný funkcí Type.
  • NávratovýTyp – povinné. Typ návratové hodnoty z funkce. Použijte Prázdné, pokud funkce nevrací hodnotu.
  • Vzorec – povinné. Vzorec, který vypočítá hodnotu funkce na základě parametrů.

Stejně jako u všech vzorců Power Fx provádění nekončí, když dojde k chybě. Po volání funkce Error zabrání funkce If změnám hodnot Úspory a Výdaje. FunkciIfError lze také použít k zastavení dalšího provádění po chybě. I když vrátí Prázdné, vzorec může stále vrátit chybu, pokud se vyskytne problém.

Uživatelsky definované typy

Důležité

Pojmenované vzorce lze použít s funkcí Type k vytvoření uživatelem definovaných typů. Použijte := místo = k definování uživatelem definovaného typu, například Book := Type( { Title: Text, Author: Text } ). Další informace a příklady viz funkce Type.

Vlastnost OnError

Pomocí vlastnosti OnError můžete provést akci, když dojde k chybě kdekoli v aplikaci. Poskytuje globální příležitost zachytit nápis s chybou, ještě než se zobrazí koncovému uživateli. Může být také použit k zapsání chyby do protokolu pomocí funkce Trace nebo zapisovat do databáze či webové služby.

V aplikacích plátna je výsledek každého vyhodnocení vzorce kontrolován, zda v něm není chyba. Pokud dojde k chybě, OnError je vyhodnoceno se stejnými proměnnými rozsahu FirstError a AllErrors, které by byly použity, kdyby byl celý vzorec zabalen do funkce IfError.

Pokud je Chyba prázdná, zobrazí se výchozí chybová zpráva FirstError.Message chyby. Definování vzorce OnError toto chování přepíše, takže tvůrce může podle potřeby zpracovat hlášení chyb. Výchozí chování v OnError můžete požadovat tak, že chybu znovu zřetězíte pomocí funkce Error. Pokud chcete vyfiltrovat nebo zpracovat některé chyby jinak, použijte přístup k převětvování, ale nechte ostatní projít.

OnError neumí tímto způsobem nahradit chybu ve výpočtech tak, jako IfError. Pokud je vyvolána vlastnost OnError, chyba již nastala a byla zpracována pomocí výpočtů vzorce jako IfError; OnError se stará pouze o hlášení chyb.

Vzorce OnError se vyhodnocují souběžně a je možné, že se jejich vyhodnocení může překrývat se zpracováním jiných chyb. Pokud například nastavíte globální proměnnou v horní části chyby OnError a později ji přečtete ve stejném vzorci, může se hodnota změnit. K vytvoření pojmenované hodnoty, která platí jen v rámci vzorce, použijte funkci With .

I když se každá chyba zpracovává jednotlivě pomocí funkce OnError, nemusí se výchozí chybová zpráva zobrazovat pro každou chybu jednotlivě. Aby nedocházelo k zobrazení příliš mnoha nápisů s chybou současně, nápis s chybou se znovu nezobrazí, pokud již byl nedávno zobrazen.

Příklad

Dejme tomu, že máme ovládací prvky Label a Slider, které jsou svázány dohromady prostřednictvím vzorce:

Label1.Text = 1/Slider1.Value

Ovládací prvek Label a Slider svázané prostřednictvím vzorce Label1.Text = 1/Slider1.Value.

Výchozí hodnota ovládacího prvku Slider je 50. Pokud je posuvník posunut na 0, Label1 nezobrazí žádnou hodnotu a zobrazí se nápis s chybou:

Ovládací prvek Slider se přesunul na 0, což vedlo k chybě dělení nulou a zobrazení nápisu s chybou.

Podívejme se podrobně na to, co se stalo:

  1. Uživatel posunul Slider doleva a vlastnost Slider1.Value se změnila na 0.
  2. Vlastnost Label1.Text byla automaticky přepočítána. Došlo k dělení nulou a generovala se chyba.
  3. V tomto vzorci není žádná funkce IfError. Vyhodnocení vzorce vrátí chybu dělení nulou.
  4. Vlastnost Label1.Text pro tuto chybu nemůže nic zobrazit, takže ukazuje a prázdný stav.
  5. Je vyvolána vlastnost OnError. Protože neexistuje žádná obslužná rutina, zobrazí se standardní nápis s informacemi o chybě.

V případě potřeby můžete také změnit vzorec na Label1.Text = IfError( 1/Slider1.Value, 0 ). Použití chyby IfError znamená, že se nezobrazí žádná chybová zpráva nebo banner s chybou. Nelze změnit hodnotu chyby z chyby OnError , protože k chybě už došlo – OnError řídí pouze způsob nahlášení.

Pokud přidáte obslužnou rutinu OnError , nebude mít vliv na kroky před krokem 5, ale změní způsob hlášení chyby:

Trace( $"Error {FirstError.Message} in {FirstError.Source}" )

Vzorec App.OnError nastaven pro generování trasování.

U této obslužné rutiny OnError se uživateli aplikace nezobrazí žádná chyba. Tato chyba se ale přidá do trasování monitorování, včetně zdroje informací o chybě z FirstError:

Ovládací prvek Slider se přesunul na 0, což vedlo k chybě dělení nulou, ale nezobrazil se žádný nápis s chybou.

Pokud chcete kromě trasování zobrazit také výchozí banner s chybou, znovu načte chybu pomocí funkce Error po volání trasování , jako by tam trasování nebylo:

Trace( $"Error {FirstError.Message} in {FirstError.Source}" );
Error( FirstError )

Vlastnost OnStart

Poznámka:

Použití vlastnosti OnStart může způsobit problémy s výkonem při načítání aplikace. Pro použití této vlastnosti vytváříme alternativy – ukládání dat do mezipaměti a nastavení globálních proměnných. Existuje už alternativa k definování první obrazovky, která se má zobrazit pomocí navigace. V závislosti na kontextu může být tato vlastnost ve výchozím nastavení zakázaná. Pokud ho nevidíte a potřebujete ho použít, zkontrolujte upřesňující nastavení aplikace, abyste ho povolili. Můžete také použít vlastnost OnVisible obrazovky. Pokud je ve výchozím nastavení povolené neblokující pravidlo OnStart , umožňuje funkci OnStart běžet ve stejnou dobu jako ostatní pravidla aplikace. Takže pokud jsou proměnné odkazované v jiných pravidlech aplikace inicializovány v rámci funkce OnStart , nemusí být ještě plně inicializovány. Obrazovka se také může vykreslit a stát se interaktivním před dokončením spuštěných funkcí Screen.OnVisible nebo App.OnStart , zejména pokud dokončení trvá dlouho.

Vlastnost OnStart se spustí, když uživatel spustí aplikaci. Tato vlastnost se často používá k:

  • Načtení a ukládání dat do mezipaměti v kolekcích pomocí funkce Collect
  • Nastavit globální proměnné pomocí funkce Set.

Tento vzorec se spustí před zobrazením první obrazovky. Žádná obrazovka není načtena, takže nemůžete nastavit kontextové proměnné pomocí funkce UpdateContext. Kontextové proměnné ale můžete předat pomocí funkce Navigate .

Po změně vlastnosti OnStart ji otestujte tak, že najedete myší na objekt aplikace v podokně stromového zobrazení , vyberete tři tečky (...) a pak vyberete Spustit při spuštění. Na rozdíl od prvního načtení aplikace jsou už existující kolekce a proměnné nastavené. Chcete-li začít s prázdnými kolekcemi, použijte funkci ClearCollect namísto funkce Collect.

Zástupce položky aplikace pro Run OnStart

Poznámka:

  • Použití funkce Navigate ve vlastnosti OnStart je vyřazeno. Stávající aplikace stále fungují. Po omezenou dobu ji můžete povolit v nastavení aplikace (v části Vyřazeno). Použití funkce Navigate tímto způsobem ale může způsobit zpoždění při načítání aplikace, protože systém před zobrazením první obrazovky vynutí dokončení spuštění onStartu . Místo toho použijte vlastnost StartScreen k nastavení první zobrazené obrazovky.
  • Vyřazený přepínač je vypnutý pro aplikace vytvořené před březnem 2021, kde jste přidali přechod na OnStart mezi březnem 2021 a teď. Když tyto aplikace upravíte v Power Apps Studiu, zobrazí se chyba. Zapněte přepínač Vyřazeno pro odstranění této chyby.

Vlastnost StartScreen

Vlastnost StartScreen nastaví, která obrazovka se zobrazí jako první. Vyhodnotí se jednou, když se aplikace načte a vrátí objekt obrazovky, který se má zobrazit. Ve výchozím nastavení je tato vlastnost prázdná a první obrazovka ve stromovém zobrazení studia se zobrazí jako první.

StartScreen je vlastnost toku dat, která nemůže obsahovat funkce chování. K dispozici jsou všechny funkce toku dat. Pomocí těchto funkcí a signálů se můžete rozhodnout, která obrazovka se má zobrazit jako první:

  • Funkce Param pro čtení parametrů používaných ke spuštění aplikace.
  • Funkce User pro čtení informací o aktuálním uživateli.
  • LookUp, Filter, CountRows, Max a další funkce, které čtou ze zdroje dat.
  • Volání rozhraní API prostřednictvím konektoru Ujistěte se, že volání vrací rychle.
  • Signály jako např. Spojení, Kompas a Aplikace.

Poznámka:

Globální proměnné a kolekce, včetně těch vytvořených v OnStartu, nejsou na obrazovce Start k dispozici. K dispozici jsou pojmenované vzorce, které jsou často lepší alternativou pro opakované použití vzorců v celé aplikaci.

Pokud úvodní obrazovka vrátí chybu, zobrazí se první obrazovka ve stromovém zobrazení studia, jako by úvodní obrazovka nebyla nastavena. Pomocí funkce IfError můžete zachytit případné chyby a přesměrovat na obrazovku s chybou.

Po změně úvodní obrazovky v sadě Studio ji otestujte tak, že najedete myší na objekt aplikace v podokně stromového zobrazení , vyberete tři tečky (...) a pak vyberete Přejít na úvodní obrazovku. Obrazovka se změní, jako kdyby se aplikace právě načetla.

Přechod na StartScreen

Příklady

Screen9

Screen9 zobrazí se jako první při spuštění aplikace.

If( Param( "admin-mode" ) = 1, HomeScreen, AdminScreen )

Zkontroluje, jestli je nastavený parametr "admin-mode" a použije ho k rozhodnutí, jestli se jako první zobrazí domovská obrazovka nebo obrazovka AdminScreen.

If( LookUp( Attendees, User = User().Email ).Staff, StaffPortal, HomeScreen )

Zkontroluje, jestli je účastník zaměstnancem a nasměruje ho na správnou obrazovku při spuštění.

IfError( If( CustomConnector.APICall() = "Forest", 
             ForestScreen, 
             OceanScreen 
         ), 
         ErrorScreen 
)

Přesměruje aplikaci na základě volání API na ForestScreen nebo OceanScreen. Pokud se rozhraní API nezdaří, aplikace místo toho použije ErrorScreen .

Vlastnost StudioVersion

Pomocí vlastnosti StudioVersion zobrazte nebo zapíšete verzi Power Apps Studia používanou k publikování aplikace. Tato vlastnost vám pomůže při ladění a kontrole opětovného publikování aplikace pomocí nejnovější verze Power Apps Studia.

StudioVersion vrátí text. Formát tohoto textu se může v průběhu času měnit, takže s ním zachází jako s celku a neextrahujte jednotlivé části.