Poznámka
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete sa skúsiť prihlásiť alebo zmeniť adresáre.
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete skúsiť zmeniť adresáre.
Platí pre: aplikácie Canvas
Získajte informácie o aktuálne spustenej aplikácii a ovládajte správanie aplikácie.
Popis
Rovnako ako ovládací prvok, aj objekt aplikácie má vlastnosti, ktoré identifikujú obrazovku a zobrazujú vás výzvu na uloženie zmien, aby sa nestratili. Každá aplikácia má objekt aplikácie.
Písanie vzorcov pre niektoré vlastnosti objektu aplikácie . V hornej časti tably Stromová štruktúra zvoľte objekt aplikácie, ako by ste urobili pri akomkoľvek inom ovládacom prvku alebo obrazovke. Ak chcete zobraziť alebo upraviť niektorú z vlastností objektu, vyberte ju v rozbaľovacom zozname naľavo od riadka vzorcov.
Vlastnosť ActiveScreen
Vlastnosť ActiveScreen identifikuje práve zobrazenú obrazovku.
Táto vlastnosť vracia objekt obrazovky. Používa sa na odkazovanie na vlastnosti aktuálnej obrazovky, napríklad na názov v App.ActiveScreen.Name vzorca. Môžete tiež porovnať túto vlastnosť s iným objektom obrazovky, napríklad pomocou vzorca porovnania App.ActiveScreen = Screen2 a skontrolovať, či screen2 predstavuje aktuálnu obrazovku.
Pomocou funkcie Back alebo Navigate môžete prepínať zobrazenú obrazovku.
Vlastnosť BackEnabled
Vlastnosť BackEnabled mení spôsob, akým aplikácia reaguje na gesto späť v zariadení (potiahnutím prstom alebo použitím tlačidla Späť na hardvér v zariadeniach s Androidom alebo potiahnutím prstom zľava v zariadeniach so systémom iOS) pri spustení v mobilnej aplikácii Power Apps. Po zapnutí sa gesto späť zariadenia vráti na obrazovku, ktorá bola naposledy zobrazená, čo je podobné vzorcu Back . Keď je zariadenie vypnuté, gesto späť presunie používateľa do zoznamu aplikácií.
Vlastnosti ConfirmExit
Nikto nechce prísť o neuložené zmeny. Pomocou vlastností ConfirmExit a ConfirmExitMessage upozornite používateľa pred zatvorením aplikácie.
Poznámka
- Potvrdiť, že funkciaExit nefunguje v aplikáciách vložených napríklad do služby Power BI a SharePointu.
- Potvrdenieexit nie je podporované na vlastných stránkach.
- Teraz môžu tieto vlastnosti odkazovať na ovládacie prvky iba na prvej obrazovke, ak je povolená funkcia Oneskorené načítanie ukážky (ktorá je predvolene pre nové aplikácie). Ak odkazujete na iné obrazovky, Power Apps Studio chybu nezobrazí, ale publikovaná aplikácia sa neotvorí v aplikácii Power Apps Mobile ani prehliadači. Pracujeme na odstránení tohto obmedzenia. Medzičasom vypnite možnosť Oneskorené načítanie v nastaveniach>Nadchádzajúcich funkcií (v časti Ukážka).
ConfirmExit
ConfirmExit je boolovská vlastnosť, ktorá v prípade hodnoty true otvorí dialógové okno s potvrdením ešte pred zavretím aplikácie. V predvolenom nastavení má táto vlastnosť príznak false a nezobrazí sa žiadne dialógové okno.
Ak používateľ môže mať neuložené zmeny v aplikácii, použite túto vlastnosť na zobrazenie potvrdzovacieho dialógového okna pred opustením aplikácie. Použite vzorec, ktorý kontroluje premenné a vlastnosti ovládacích prvkov (napríklad vlastnosť Unsaved ovládacieho prvku Formulár na úpravy ).
Dialógové okno potvrdenia sa zobrazí v každej situácii, v ktorej je možné stratiť údaje, napríklad:
- Spustite funkciu Exit .
- Ak je aplikácia spustená v prehliadači:
- Zatvorte prehliadač alebo kartu prehliadača, na ktorej je aplikácia spustená.
- Vyberte tlačidlo Späť v prehliadači.
- Spustite funkciu Launch s názvom Self LaunchTarget.
- Ak je aplikácia spustená v aplikácii Power Apps Mobile (iOS alebo Android):
- Potiahnutím prstom sa v službe Power Apps Mobile prepnete na inú aplikáciu.
- Vyberte tlačidlo Späť na zariadení s Androidom.
- Spustite funkciu Launch a spustite inú aplikáciu plátna.
Presný vzhľad potvrdzovacieho dialógového okna sa môže líšiť v rámci zariadení a verzií služby Power Apps.
Dialógové okno potvrdenia sa v aplikácii Power Apps Studio nezobrazuje.
ConfirmExitMessage
V predvolenom nastavení sa v dialógovom okne s potvrdením zobrazí všeobecná správa, napríklad „Možno ste neuložili zmeny.“ v jazyku používateľa.
Použitie ConfirmExitMessage a poskytnite vlastnú správu v dialógovom okne s potvrdením. Ak je táto vlastnosť prázdna, použije sa predvolená hodnota. Vlastné správy sa podľa potreby skrátia, aby sa zmestili do dialógového okna potvrdenia, preto správu udržte v niekoľkých riadkoch.
V prehliadači môže potvrdzujúcie dialógové okno zobraziť všeobecnú správu z prehliadača.
Poznámka
Objekt aplikácie má ďalšie dve vlastnosti OnMessage a BackEnabled, ktoré sú experimentálne. Tieto vlastnosti sa napokon z objektu aplikácie odstránia. Nepoužívajte tieto vlastnosti v produkčnom prostredí.
Príklad
Nastavte vlastnosť objektu AplikácieConfirmExit na tento výraz:
AccountForm.Unsaved Or ContactForm.UnsavedDialógové okno zobrazí, či používateľ zmení údaje v ľubovoľnom formulári a potom sa pokúsi zavrieť aplikáciu bez uloženia zmien. Používateľ zmení údaje v ľubovoľnom formulári a potom sa pokúsi zavrieť aplikáciu bez uloženia týchto zmien.
[!div clas1. Nastavte vlastnosť objektu AplikácieConfirmExitMessage na tento vzorec:
If( AccountsForm.Unsaved, "Accounts form has unsaved changes.", "Contacts form has unsaved changes." )V dialógovom okne sa zobrazí, či používateľ zmení údaje vo formulári Konto, a potom sa aplikáciu pokúsi zavrieť bez uloženia týchto zmien.
Nastavenie reťazca pripojenia pre Službu Application Insights
Ak chcete exportovať denníky aplikácií generované systémom do služby Application Insights, nastavte reťazec pripojenia pre plátnovú aplikáciu.
- Otvorte aplikáciu na úpravu v Power Apps Studio.
- Vyberte objekt Aplikácia v ľavom navigačnom strome.
- Na table Vlastnosti zadajte reťazec pripojenia .
Ak sa údaje neodošlú do služby Application Insights, obráťte sa na správcu Power Platformy a skontrolujte, či je funkcia App Insights na úrovni nájomníka zakázaná.
Vlastnosť vzorcov
Pomocou pomenovaných vzorcov vo vlastnosti Vzorce definujte vzorec, ktorý možno opakovane použiť v celej aplikácii.
V Power Apps vzorce určujú hodnotu vlastností ovládacieho prvku. Ak chcete napríklad konzistentne nastaviť farbu pozadia v celej aplikácii, môžete pre každú nastaviť vlastnosť Vyplniť na spoločný vzorec:
Label1.Fill: ColorValue( Param( "BackgroundColor" ) )
Label2.Fill: ColorValue( Param( "BackgroundColor" ) )
Label3.Fill: ColorValue( Param( "BackgroundColor" ) )
S toľkými miestami, kde sa tento vzorec môže objaviť, sa stáva náročným a náchylným na chyby pri aktualizácii všetkých, ak je potrebná zmena. Namiesto toho môžete vytvoriť globálnu premennú v OnStart na jednorazové nastavenie farby a potom znova použiť hodnotu v celej aplikácii:
App.OnStart: Set( BGColor, ColorValue( Param( "BackgroundColor" ) ) )
Label1.Fill: BGColor
Label2.Fill: BGColor
Label3.Fill: BGColor
Aj keď je táto metóda lepšia, závisí aj od spustenia OnStart predtým, ako sa stanoví hodnota pre BGColor. BGColor môže byť tiež zmanipulované v niektorom rohu aplikácie, o ktorom tvorca nevie, zmena vykonaná niekým iným, ktorú môže byť ťažké vystopovať.
Pomenované vzorce poskytujú alternatívu. Tak ako bežne píšeme control-property = expression, môžeme namiesto toho napísať name = expression a potom znova použiť name v celej našej aplikácii, čím sa nahradí expression. Definície týchto vzorcov sú vykonané vo vlastnosti Vzorce:
App.Formulas: BGColor = ColorValue( Param( "BackgroundColor" ) );
Label1.Fill: BGColor
Label2.Fill: BGColor
Label3.Fill: BGColor
Výhody používania pomenovaných vzorcov zahŕňajú:
- Hodnota vzorca je vždy k dispozícii. Neexistuje žiadna závislosť na časovaní, žiadne OnStart, ktoré sa musí spustiť ako prvé pred nastavením hodnoty, žiadny čas, v ktorom je hodnota vzorca nesprávna. Pomenované vzorce môžu na seba odkazovať v ľubovoľnom poradí, pokiaľ nevytvárajú zacyklený odkaz. Môžu byť vypočítané paralelne.
- Hodnota vzorca je vždy aktuálna. Vzorec môže vykonať výpočet, ktorý závisí od vlastností ovládacieho prvku alebo záznamov databázy, a keď sa zmenia, hodnota vzorca sa automaticky aktualizuje. Hodnotu nemusíte ručne aktualizovať ako pri premennej. A vzorce sa prepočítavajú len v prípade potreby.
- Definícia vzorca je nemenná. Definícia v časti Vzorce je jediným zdrojom pravdy a hodnotu nie je možné zmeniť niekde inde v aplikácii. Pri premenných je možné, že niektorý kód neočakávane zmení hodnotu, ale táto ťažko laditeľná situácia nie je možná s pomenovanými vzorcami.
- Výpočet vzorca môže byť odložený. Pretože jeho hodnota je nemenná, dá sa vždy vypočítať, keď je to potrebné, čo znamená, že sa nemusí počítať, kým to nie je potrebné. Hodnoty vzorcov, ktoré sa nepoužívajú, kým sa nezobrazí obrazovka2 aplikácie, sa nemusia vypočítať, kým sa nezobrazí obrazovka2. Odloženie tejto práce môže skrátiť čas načítania aplikácie. Pomenované vzorce sú deklaratívne a poskytujú systému príležitosti na optimalizáciu spôsobu a času ich výpočtu.
- Pomenované vzorce sú koncept programu Excel. Power Fx používa koncepty programu Excel, kde je to možné, keďže tak veľa ľudí dobre pozná Excel. Pomenované vzorce sú ekvivalentom pomenovaných buniek a pomenovaných vzorcov v Exceli a spravujú sa pomocou Správcu názvov. Prepočítavajú sa automaticky ako bunky tabuľky a ovládacie vlastnosti.
Pomenované vzorce sú definované jeden po druhom vo vlastnosti Vzorce, pričom každý končí bodkočiarkou. Typ vzorca sa odvodzuje z typov prvkov vo vzorci a zo spôsobu ich spoločného použitia. Napríklad tieto pomenované vzorce získavajú užitočné informácie o aktuálnom používateľovi 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' );
Ak je potrebné aktualizovať vzorec pre UserTitle, dá sa to jednoducho urobiť na tomto jednom mieste. Ak nie je v aplikácii potrebná vlastnosť UserPhone, potom sa nebudú uskutočňovať hovory na tabuľku Používatelia v Dataverse. Neexistuje žiadna penalizácia za zahrnutie definície vzorca, ktorá sa nepoužije.
Niektoré obmedzenia pomenovaných vzorcov:
- Nemôžu používať funkcie správania alebo inak spôsobovať vedľajšie účinky v rámci aplikácie.
- Nemôžu vytvoriť zacyklený odkaz. Využitie a = b; a b = a; v rovnakej aplikácii nie je povolené.
Používateľsky definované funkcie
Power Fx obsahuje dlhý zoznam vstavaných funkcií, ako napríklad If, Text a Nastaviť. Používateľom definované funkcie vám umožňujú písať svoje vlastné funkcie, ktoré preberajú parametre a vracajú hodnotu, rovnako ako vstavané funkcie. Používateľom definované funkcie si môžete predstaviť ako rozšírenie pomenovaných vzorcov, ktoré pridáva parametre a podporuje vzorce správania.
Môžete napríklad definovať pomenovaný vzorec, ktorý vráti beletristické knihy z knižnice:
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 parametrov by sme museli definovať samostatné pomenované vzorce pre každý žáner. Ale namiesto toho parametrizujme náš pomenovaný vzorec:
LibraryType := Type( [ { Title: Text, Author: Text, Genre: Text } ] );
LibraryGenre( SelectedGenre: Text ): LibraryType = Filter( Library, Genre = SelectedGenre );
Teraz môžeme volať LibraryGenre( "Fiction" ), LibraryGenre( "Reference" ) alebo filtrovať iné žánre pomocou jedinej funkcie definovanej používateľom.
Syntax je:
FunctionName( [ ParameterName1: ParameterType1 [, Názov parametra2: Typ parametra2 ... ] ] ) : Typ návratu = Vzorec;
- FunctionName – povinné. Názov funkcie definovanej používateľom.
- ParameterNames – Voliteľné. Názov parametra funkcie.
- ParameterTypes – voliteľné. Názov typu, buď vstavaný názov typu údajov, názov zdroj údajov alebo typ definovaný pomocou Typ funkcia.
- ReturnType – povinné. Typ návratovej hodnoty z funkcie.
- Vzorec – povinné. Vzorec, ktorý vypočíta hodnotu funkcie na základe parametrov.
Každý parameter a výstup z užívateľom definovanej funkcie musia byť napísané. V tomto príklade SelectedGenre: Text definuje prvý parameter našej funkcie ako typ Text a SelectedGenre je názov parameter, ktorý sa používa v tele pre operáciu Filter. Podporované názvy typov nájdete v časti Typy údajov . Funkcia Typ sa používa na vytvorenie agregovaného typu pre našu knižnicu, aby sme mohli vrátiť tabuľku kníh z našej funkcie.
Definovali sme LibraryType ako množné číslo tabuľky typu záznamov. Ak chceme funkcii odovzdať jednu knihu, môžeme extrahovať typ záznamu pre túto tabuľku pomocou funkcie RecordOf:
BookType := Type( RecordOf( LibraryType ) );
IsGenre( Book: BookType, SelectedGenre: Text ): Boolean = (Book.Genre = SelectedGenre);
Zhoda záznamov pre parametre funkcií je prísnejšia ako v iných častiach Power Fx. Polia hodnoty záznamu musia byť správnou podmnožinou definície typu a nemôžu obsahovať ďalšie polia. Napríklad IsGenre( { Title: "My Book", Published: 2001 }, "Fiction" ) povedie k chybe.
Všimnite si, že užívateľom definované funkcie zatiaľ nepodporujú rekurziu.
Správanie užívateľom definované funkcie
Pomenované vzorce a väčšina funkcií definovaných používateľom nepodporujú funkcie správania s vedľajšími účinkami, ako napríklad Nastaviť alebo Upozorniť. Vo všeobecnosti je najlepšie vyhnúť sa aktualizácii stavu, ak je to možné, namiesto toho sa spoliehať na funkčné programovacie vzory a umožniť Power Fx automaticky prepočítať vzorce podľa potreby. Sú však prípady, kedy sa tomu nedá vyhnúť. Ak chcete zahrnúť logiku správania do funkcie definovanej používateľom, Zabaliť telo v zložených zátvorkách:
Spend( Amount: Number ) : Void = {
If( Amount > Savings,
Error( $"{Amount} is more than available savings" ),
Set( Savings, Savings - Amount );
Set( Spent, Spent + Amount)
);
}
Teraz môžeme zavolať Spend( 12 ) , aby sme skontrolovali, či máme v úsporách 12, a ak áno, odpíšeme ich o 12 a pripočítame 12 do premennej Stráv. Návratový typ tejto funkcie je Void , pretože nevracia žiadnu hodnotu.
Syntax funkcie definovanej používateľom správania je:
FunctionName( [ ParameterName1: ParameterType1 [, ParameterName2: ParameterType2 ... ] ] ) : Typ návratu = { Vzorec1 [ ; Vzorec2 . .. ] };
- FunctionName – povinné. Názov funkcie definovanej používateľom.
- ParameterNames – Voliteľné. Názov parametra funkcie.
- ParameterTypes – voliteľné. Názov typu, buď vstavaný názov typu údajov, názov zdroj údajov alebo typ definovaný pomocou Typ funkcia.
- ReturnType – povinné. Typ návratovej hodnoty z funkcie. Ak funkcia nevracia hodnotu, použite Void .
- Vzorce – povinné. Vzorec, ktorý vypočíta hodnotu funkcie na základe parametrov.
Ako pri všetkých Power Fx vzorcoch, vykonávanie nekončí, keď sa vyskytne chyba. Po zavolaní funkcie Chyba sa funkcia Ak zabráni zmenám na Úspory a Minuté z happeningu. Funkciu IfError je možné použiť aj na zabránenie ďalšiemu vykonávaniu po chybe. Aj keď vzorec vráti Void, v prípade problému môže stále vrátiť chybu.
Typy definované používateľom
Dôležité
- Typy definované používateľom sú experimentálnou funkciou.
- Experimentálne funkcie nie sú určené na produkčné použitie a nemusia byť úplné. Tieto funkcie sú k dispozícii pred oficiálnym vydaním, takže môžete získať skorý prístup a poskytnúť spätnú väzbu. Ďalšie informácie: Vysvetlenie experimentálnych, ukážkových a vyradených funkcií v aplikácii plátna
- Správanie, ktoré popisuje tento článok, je k dispozícii iba v prípade, ak je experimentálna funkcia Typy definované používateľom v Nastavenia > Nadchádzajúce funkcie > Experimentálne je zapnuté (v predvolenom nastavení je vypnuté).
- Vaša spätná väzba je pre nás cenná. Dajte nám vedieť, čo si myslíte v Power Apps komunitnom fóre experimentálnych funkcií.
Pomenované vzorce možno použiť s funkciou Typ na vytvorenie typov definovaných používateľom. Použite := namiesto = na definovanie typu definovaného používateľom, napríklad Book := Type( { Title: Text, Author: Text } ). Ďalšie informácie a príklady nájdete vo funkcii Typ .
Vlastnosť OnError
Ak sa kdekoľvek v aplikácii vyskytne chyba, použite možnosť OnError . Poskytuje globálnu príležitosť zachytiť chybový banner predtým, ako sa zobrazí koncovému používateľovi. Dá sa použiť aj na zaprotokolovanie chyby pomocou funkcie Tracealebo zápisu do databázy alebo webovej služby.
V aplikáciách Canvas sa výsledok každého hodnotenia vzorca kontroluje, či neobsahuje chybu. Ak sa vyskytne chyba, OnError sa vyhodnotí s rovnakými hodnotami FirstError a AllErrors premenné rozsahu, ktoré by sa použili, ak by bol celý vzorec zabalený funkcia IfError.
Ak je onError prázdny, v banneri s predvolenou chybou sa zobrazí hlásenie chyby FirstError.Message . Definovanie vzorca OnError toto správanie prepíše, aby tvorca mohol podľa potreby spracovať hlásenie chýb. Predvolené správanie môžete v aplikácii OnError požiadať opätovným prehratím chyby pomocou funkcie Error. Prístup presunutia údajov použite, ak chcete odfiltrovať alebo spracovať niektoré chyby inak, ale nechajte ostatných prejsť.
OnError nedokáže nahradiť chybu vo výpočtoch tak, ako to dokáže IfError . Ak sa vyvolá OnError , chyba sa už vyskytla a už bola spracovaná pomocou výpočtov vzorca ako IfError; OnError ovláda iba hlásenie chýb.
Vzorce OnError sa vyhodnocujú súbežne a je možné, že ich hodnotenie sa môže prekrývať s spracovaním iných chýb. Ak napríklad nastavíte globálnu premennú v hornej časti OnError a prečítate ju neskôr v rovnakom vzorci, hodnota sa mohla zmeniť. Použite funkciu With vytvorte pomenovanú hodnotu, ktorá je pre vzorec lokálna.
Aj keď každá chyba je spracovaná samostatne pomocou OnError, pruh predvolenej chyby sa nemusí zobrazovať pre každú chybu samostatne. Aby sa predišlo tomu, že sa naraz zobrazí príliš veľa chybových bannerov, rovnaký chybový banner sa už nezobrazí, ak sa nedávno zobrazil.
Príklad
Zohľadnite ovládací prvok Štítok a Jazdec, ktoré sú spolu spojené pomocou vzorca:
Label1.Text = 1/Slider1.Value
Predvolená hodnota jazdca je 50. Ak sa jazdec presunie na 0, Štítok1 nezobrazí žiadnu hodnotu a zobrazí sa chybový pruh:
Pozrime sa podrobne na to, čo sa stalo:
- Používateľ posunul snímku doľava a vlastnosť Slider1.Value sa zmenila na 0.
- Label1.Text bol automaticky prehodnotený. Vyskytlo sa delenie nulou, čo spôsobilo chybu.
- V tomto vzorci nie je IfError. Delenie nulovou chybou vráti vyhodnotenie vzorca.
- Label1.Text nemôže pre túto chybu nič zobraziť, takže zobrazuje prázdny stav.
- Vyvolá sa OnError . Keďže neexistuje žiadny obslužný program, zobrazí sa štandardný chybový banner s informáciami o chybe.
V prípade potreby môžete vzorec zmeniť aj na Label1.Text = IfError( 1/Slider1.Value, 0 ). Použitie funkcie IfError znamená, že nedošlo k žiadnej chybe alebo chybovému banneru. Hodnotu chyby nie je možné zmeniť z funkcie OnError , pretože chyba sa už vyskytla – funkcia OnError len kontroluje, ako bola nahlásená.
Ak pridáte obslužný program OnError , nemá to vplyv na kroky pred krokom 5, ale mení spôsob hlásenia chyby:
Trace( $"Error {FirstError.Message} in {FirstError.Source}" )
V prípade tohto obslužného programu OnError sa používateľovi aplikácie nezobrazuje žiadna chyba. Chyba sa však pridá k sledovanie monitora, vrátane zdroja informácií o chybe z FirstError:
Ak chcete tiež zobraziť banner s predvolenou chybou spolu so sledovaním, opätovne prejdite na chybu pomocou funkcie Error po volaní sledovania , akoby sa tam nenachádzala položka Trace :
Trace( $"Error {FirstError.Message} in {FirstError.Source}" );
Error( FirstError )
Vlastnosť OnStart
Poznámka
Pri načítaní aplikácie môže dôjsť k problémom s výkonom pomocou vlastnosti OnStart . Vytvárame alternatívy z dvoch najlepších dôvodov na používanie tejto vlastnosti – ukladanie údajov do vyrovnávacej pamäte a nastavovanie globálnych premenných. V navigácii už existuje alternatíva na definovanie prvej obrazovky. V závislosti od kontextu môže byť táto vlastnosť predvolene zakázaná. Ak ju nevidíte a potrebujete ju použiť, prepínač, ktorý ju povolíte, nájdete v časti Rozšírené nastavenia aplikácie. Môžete tiež použiť vlastnosť OnVisible obrazovky. Keď je predvolene povolené pravidlo OnStart odblokovať, funkcia OnStart sa spustí v rovnakom čase ako ostatné pravidlá aplikácie. Ak sa teda premenné odkazované v iných pravidlách aplikácie inicializujú v rámci funkcie OnStart , nemusia sa ešte úplne inicializovať. Obrazovka sa tiež môže vykresliť a byť interaktívna ešte predtým, ako sa dokončia funkcie Screen.OnVisible alebo App.OnStart , najmä ak ich dokončenie trvá dlho.
Vlastnosť OnStart sa spustí, keď používateľ spustí aplikáciu. Táto vlastnosť sa často používa na:
- Načítajte a ukladajte údaje do vyrovnávacej pamäte v kolekciách pomocou funkcie Collect .
- Nastavte globálne premenné pomocou funkcie Set.
Tento vzorec sa spustí ešte pred zobrazením prvej obrazovky. Nie je načítaná žiadna obrazovka, takže nemôžete nastaviť kontextové premenné pomocou funkcie UpdateContext. Kontextové premenné však môžete odovzdať pomocou funkcie Navigate .
Po zmene vlastnosti OnStart ju otestujte tak, že ukážete na objekt aplikácie na table Stromové zobrazenie , vyberiete tri bodky (...) a potom položku Spustiť na začiatku. Na rozdiel od toho, kedy sa aplikácia načíta po prvýkrát, existujúce kolekcie a premenné sú už nastavené. Ak chcete začať s prázdnymi zbierkami, použite funkciu ClearCollect namiesto funkcie Collect.
Poznámka
- Funkcia Navigate vo vlastnosti OnStart sa vyradí. Existujúce aplikácie naďalej fungujú. Obmedzený čas môžete povoliť v nastaveniach aplikácie (v časti Vyradené). Použitie funkcie Navigate týmto spôsobom však môže spôsobiť oneskorenie načítania aplikácie, pretože systém pred zobrazením prvej obrazovky vynúti dokončenie spustenia vlastnosti OnStart . Na nastavenie prvej zobrazenej obrazovky použite vlastnosť StartScreen .
- Prepínač na dôchodku je vypnutý pre aplikácie vytvorené pred marcom 2021, kde ste pridali funkciu Navigate do služby OnStart od marca 2021 do súčasnosti. Pri úprave týchto aplikácií v aplikácii Power Apps Studio sa zobrazí chyba. Túto chybu vymažete zapnutím vyradeného prepínača.
Vlastnosť StartScreen
Vlastnosť StartScreen nastaví, ktorá obrazovka sa zobrazí ako prvá. Vyhodnotí sa raz, keď aplikácia načíta a vráti objekt obrazovky, ktorý sa má zobraziť. Predvolene je táto vlastnosť prázdna a ako prvá sa zobrazí prvá obrazovka v stromovom zobrazení aplikácie Studio.
StartScreen je vlastnosť toku údajov, ktorá nemôže obsahovať funkcie správania. K dispozícii sú všetky funkcie toku údajov. Na výber obrazovky, ktorá sa zobrazí ako prvá, použite tieto funkcie a signály:
- Funkcia Param na čítanie parametrov používaných na spustenie aplikácie.
- Funkcia User na čítanie informácií o aktuálnom používateľovi.
- LookUp, Filter, CountRows, Max a ďalšie funkcie, ktoré čítajú z zdroj údajov.
- Volania API prostredníctvom konektora. Skontrolujte, či sa volanie vráti rýchlo.
- Signály ako napr. Pripojenie, Kompas a App.
Poznámka
Globálne premenné a kolekcie vrátane tých, ktoré boli vytvorené v nástroji OnStart, nie sú na obrazovke StartScreen k dispozícii. Pomenované vzorce sú k dispozícii a sú často lepšou alternatívou na opätovné použitie vzorcov v celej aplikácii.
Ak obrazovka StartScreen vráti chybu, zobrazí sa prvá obrazovka v stromovom zobrazení aplikácie Studio, akoby obrazovka StartScreen nebola nastavená. Funkcia IfError sa používa na zachytenie prípadných chýb a presmerovanie na obrazovku s chybami.
Po zmene obrazovky StartScreen v aplikácii Studio ju otestujte tak, že ukážete na objekt aplikácie na table Stromové zobrazenie , vyberiete tri bodky (...) a potom vyberiete položku Prejsť na obrazovku StartScreen. Obrazovka sa zmení tak, ako keby sa aplikácia práve načítala.
Príklady
Screen9
Screen9 sa zobrazí ako prvá pri každom spustení aplikácie.
If( Param( "admin-mode" ) = 1, HomeScreen, AdminScreen )
Skontroluje, či je nastavenie param "admin-mode" nastavené, a používa ho na rozhodnutie, či sa obrazovka HomeScreen alebo AdminScreen zobrazí ako prvá.
If( LookUp( Attendees, User = User().Email ).Staff, StaffPortal, HomeScreen )
Skontroluje, či je účastník zamestnancom, a nasmeruje ich na správnu obrazovku pri spustení.
IfError( If( CustomConnector.APICall() = "Forest",
ForestScreen,
OceanScreen
),
ErrorScreen
)
Nasmeruje aplikáciu na základe volania API na buď na ForestScreen alebo OceanScreen. Ak rozhranie API zlyhá, aplikácia namiesto toho použije ErrorScreen .
Vlastnosť StudioVersion
Pomocou vlastnosti StudioVersion môžete zobraziť alebo zaznamenať verziu aplikácie Power Apps Studio použitú na publikovanie aplikácie. Táto vlastnosť pomáha pri ladení a kontrole opätovného publikovania aplikácie pomocou najnovšej verzie aplikácie Power Apps Studio.
StudioVersion vráti text. Formát tohto textu sa môže meniť v priebehu času, takže ho spracúvajte ako celok a neextrahujte jednotlivé časti.