Predmet »App« v rešitvi Power Apps
Zagotavlja informacije o trenutno delujoči aplikaciji in upravljanju delovanja aplikacije.
Opis
Podobno kot kontrolnik tudi predmet App ponuja lastnosti, ki določajo, kateri zaslon se prikazuje, in uporabnika pozivajo, da shrani spremembe, da se ne izgubijo. Vsaka aplikacija ima predmet App.
Za nekatere lastnosti predmeta App lahko zapišete formule. Na vrhu podokna Drevesni pogled izberite predmet App, kot bi izbrali kateri koli drug kontrolnik ali zaslon. Oglejte si eno od lastnosti predmeta in jo uredite tako, da jo izberete na spustnem seznamu na levi strani vnosne vrstice.

Lastnost ActiveScreen
Lastnost ActiveScreen prepozna zaslon, ki je prikazan.
Ta lastnost vrne predmet zaslona, ki ga lahko uporabite za sklicevanje na lastnosti zaslona ali primerjavo z drugim zaslonom, da določite, kateri zaslon se prikazuje. Ime zaslona, ki se prikazuje, lahko tudi prikličete z izrazom App.ActiveScreen.Name.
S funkcijo Back ali Navigate spremenite prikazani zaslon.
Lastnosti ConfirmExit
Nihče ne želi izgubiti neshranjenih sprememb. S lastnostma ConfirmExit in ConfirmExitMessage opozorite uporabnika, preden zapre vašo aplikacijo.
Opomba
- ConfirmExit ne deluje v aplikacijah, ki so vgrajene, npr. Power BI in SharePoint.
- Trenutno se lahko te lastnosti sklicujejo na kontrolnike samo na prvem zaslonu, če je omogočena funkcija predogleda Delayed load (kar je privzeto za nove aplikacije). V primeru sklicev Power Apps Studio ne prikaže napake, vendar se končna objavljena aplikacija ne odpre v storitvi Power Apps za mobilne naprave ali brskalniku. Aktivno si prizadevamo za odpravo te omejitve. Medtem lahko izklopite Zakasnjena obremenitev v Nastavitve > Prihajajoče funkcije (Spodaj Predogled).
ConfirmExit
ConfirmExit je lastnost logičnega elementa, ki odpre potrditveno pogovorno okno, preden se aplikacija zapre, ko je njena vrednost nastavljena na true. Privzeto je ta lastnost nastavljena na false in se ne pojavi nobeno pogovorno okno.
S to lastnostjo prikažite potrditveno pogovorno okno, če je uporabnik ustvaril spremembe, vendar jih ni shranil. Uporabite formulo, s katero lahko preverite spremenljivke in lastnosti kontrolnikov (npr. lastnost Unsaved pri kontrolniku Edit form).
Potrditveno pogovorno okno se prikaže v vsakem primeru, ko se podatki lahko izgubijo, npr. v naslednjih primerih:
- Izvajanje funkcije Exit.
- Če se aplikacija izvaja v brskalniku:
- Zapiranje brskalnika ali zavihka brskalnika, v katerem se aplikacija izvaja.
- Izbira gumba »Nazaj« v brskalniku.
- Izvedba funkcije Launch z argumentom LaunchTarget možnosti Self.
- Če se aplikacija izvaja v storitvi Power Apps za mobilne naprave (iOS ali Android):
- Podrsanje za preklop na drugo aplikacijo v storitvi Power Apps za mobilne naprave.
- Izbira gumba »Nazaj« v napravi Android.
- Izvedba funkcije Launch za zagon druge aplikacije delovnega območja.
Natančen videz potrditvenega pogovornega okna se lahko razlikuje glede na napravo in različico storitve Power Apps.
Potrditveno pogovorno okno se ne prikaže v storitvi Power Apps Studio.
ConfirmExitMessage
Privzeto se v potrditvenem pogovornem oknu prikaže splošno sporočilo, npr. »Morda imate neshranjene spremembe.« v uporabnikovem jeziku.
Z možnostjo ConfirmExitMessage zagotovite sporočilo po meri v potrditvenem pogovornem oknu. Če je ta lastnost prazna, se uporabi privzeta vrednost. Sporočila po meri so prirezana, kolikor je potrebno, da se prilegajo potrditvenemu pogovornemu oknu, zato naj bo sporočilo dolgo največ nekaj vrstic.
V brskalniku se lahko prikaže potrditveno pogovorno okno s splošnim sporočilom brskalnika.
Opomba
Predmet aplikacije ima še dve dodatni lastnosti OnMessage in BackEnabled, ki sta eksperimentalni lastnosti in bosta v prihodnosti odmaknjeni od predmeta aplikacije. Priporočamo, da teh lastnosti ne uporabljate v svojem produkcijskem okolju.
Primer
Ustvarite aplikacijo, ki vsebuje dva kontrolnika za obrazce, AccountForm in ContactForm.
Nastavite lastnost ConfirmExit za predmet Aplikacija na ta izraz:
AccountForm.Unsaved Or ContactForm.UnsavedTo pogovorno okno se prikaže, če uporabnik spremeni podatke v katerem koli obrazcu in nato poskusi zapreti aplikacijo, ne da bi te spremembe shranil.

Nastavite lastnost ConfirmExitMessage za predmet Aplikacija na to formulo:
If( AccountsForm.Unsaved, "Accounts form has unsaved changes.", "Contacts form has unsaved changes." )To pogovorno okno se prikaže, če uporabnik spremeni podatke v obrazcu kupca in nato poskusi zapreti aplikacijo, ne da bi te spremembe shranil.

Lastnost OnError
Opomba
- OnError je del eksperimentalne funkcije in se lahko spremeni. Več informacij: Razumevanje preskusnih funkcij, funkcij predogleda in zastarelih funkcij v storitvi Power Apps.
- Obnašanje, ki ga opisuje ta članek, je na voljo samo, če je Upravljanje napak na ravni formule eksperimentalna funkcija v Nastavitve > Prihajajoče funkcije > Poskusno je vklopljen (privzeto izklopljen).
- Vaše povratne informacije so za nas zelo dragocene – pošljite nam svoje mnenje v forumih skupnosti za Power Apps.
Uporaba OneError ukrepati, ko je bila zaznana napaka. Zagotavlja globalno priložnost za prestrezanje pasice o napaki, preden se prikaže končnemu uporabniku. Uporablja se lahko tudi za beleženje napake z Sled funkcijo ali pišite v bazo podatkov ali spletno storitev.
Rezultat vsakega vrednotenja formule se preveri za napako. Če je napaka, OneError bo ocenjeno z istim Prva napaka in Vse napake spremenljivke obsega, ki bi bile prisotne, če bi bila celotna formula zavita v IfError funkcijo.
Če OneError je prazen, privzeta pasica napake je prikazana z FirstError.Message napake. Definiranje an OneError formula preglasi to vedenje in omogoča izdelovalcu, da obravnava poročanje o napakah, kot se mu zdi primerno. Privzeto vedenje lahko zahtevate v OneError tako, da vrneš napako z Napaka funkcijo. To je uporabno, če je treba nekatere napake filtrirati ali obravnavati na drugačen način, druge pa posredovati.
OneError ne more nadomestiti napake v izračunih tako IfError lahko. V točki, da OneError je priklicana, se je napaka že zgodila in je bila že obdelana z izračuni formule. *OneError* nadzoruje samo poročanje o napakah.
OneError formule se ocenjujejo sočasno in možno je, da se njihovo vrednotenje prekriva z obdelavo drugih napak. Na primer, če nastavite globalno spremenljivko na vrhu datoteke OneError in jo pozneje preberite v isti formuli, se je vrednost morda spremenila. Uporabi Z funkcijo da ustvarite poimenovano vrednost, ki je lokalna za formulo.
Čeprav vsako napako obdela posamezno OneError, privzeta pasica napake morda ne bo prikazana za vsako napako posebej. Da ne bi imeli hkrati prikazanih preveč pasic napak, ista napaka ne bo sprožila nove pasice napake, če je bila nedavno prikazana.
Primer
Razmislite o a Oznaka nadzor in Drsnik kontrole, ki so povezane s formulo:
Label1.Text = 1/Slider1.Value
Drsnik je privzeto nastavljen na 50. Če je drsnik premaknjen na 0, Oznaka 1 ne prikaže nobene vrednosti in prikaže se pasica o napaki:
Poglejmo si, kaj se je zgodilo v podrobnosti:
- Uporabnik je premaknil diapozitiv v levo in Slide1.Value lastnost spremenjena na 0.
- Oznaka1.Besedilo je bil samodejno ponovno ovrednoten. Prišlo je do delitve z ničlo, kar je povzročilo napako.
- Ne obstaja IfError v tej formuli. Deljenje z nič napako vrne ocena formule.
- Oznaka1.Besedilo ne more prikazati ničesar za to napako, zato prikaže stanje prazno.
- OneError se prikliče. Ker ni upravljalnika, je standardna pasica napak prikazana z informacijami o napaki.
Po potrebi lahko formulo spremenimo tudi v Label1.Text = IfError( 1/Slider1.Value, 0 ). To ne bi povzročilo napake ali pasice napak. Ne moremo spremeniti vrednosti napake iz OneError ker se je takrat napaka že zgodila, je samo vprašanje, kako bo o njej poročana.
Če dodamo še OneError obdelovalca, pred 5. korakom ne bo vplivalo, lahko pa vpliva na način poročanja o napaki:
Trace( $"Error {FirstError.Message} in {FirstError.Source}" )
Če je to na mestu, z vidika uporabnika aplikacije ne bo nobene napake. Toda napaka bo dodana v sled Monitorja, skupaj z virom informacij o napaki Prva napaka:
Če želimo imeti poleg sledi prikazano tudi isto privzeto pasico napake, lahko napako znova vrnemo z Napaka funkcija po Sled pokličite tako kot je storil, če Sled ni bilo tam:
Trace( $"Error {FirstError.Message} in {FirstError.Source}" );
Error( FirstError )
Lastnost OnStart
Opomba
Uporaba lastnosti OnStart lahko povzroči težave z zmogljivostjo pri nalaganju aplikacije. Smo v procesu ustvarjanja nadomestnih možnosti za glavna dva razloga za uporabo predpomnjenja podatkov lastnosti in nastavitev globalnih spremenljivk. Ustvarili smo že alternativo za določanje prvega zaslona, ki bo prikazan s funkcijo Navigate. Odvisno od vašega konteksta je lahko ta lastnost privzeto onemogočena. Če ga ne vidite in ga morate uporabiti, preverite napredne nastavitve aplikacije za stikalo, da ga omogočite. Uporabite lahko tudi lastnost zaslona OnVisible.
Lastnost OnStart se izvede, ko uporabnik zažene aplikacijo. Ta lastnost se pogosto uporablja za izvajanje naslednjih nalog:
- Pridobite podatke in jih predpomnite v zbirke s funkcijo Collect.
- S funkcijo Set nastavite globalne spremenljivke.
Ta formula se oceni, preden se pojavi prvi zaslon. Noben zaslon se ne naloži, zato ne morete nastaviti spremenljivk konteksta s funkcijo UpdateContext. Vendar lahko spremenljivke konteksta preskočite s funkcijo Navigate.
Ko spremenite lastnost OnStart, jo preizkusite tako, da pomaknete kazalec miške nad predmet Aplikacija v podoknu Drevesni pogled, izberite tri pike (...) in nato izberite Run OnStart. Za razliko od prvega nalaganja aplikacije bodo obstoječe zbirke in spremenljivke zdaj že nastavljene. Za začetek s praznimi zbirkami uporabite funkcijo ClearCollect namesto funkcije Collect.

Opomba
- Uporaba funkcije Navigate v lastnosti OnStart je opuščena. Obstoječe aplikacije bodo še naprej delovale. Za omejen čas ga lahko še vedno omogočite v nastavitvah aplikacije (na voljo pod Umaknjeno). Vendar pa lahko tovrstna uporaba možnosti Navigate povzroči zamude pri nalaganju aplikacije, saj prisili sistem, da dokonča oceno lastnosti OnStart pred prikazom prvega zaslona. Uporabite lastnost StartScreen za izračun prvega prikazanega zaslona.
- Stikalo Umaknjeno bo izklopljeno za aplikacije, ustvarjene pred marcem 2021, kamor ste dodali Navigate v OnStart od marca 2021 do danes. Ko urejate takšne aplikacije v Power Apps Studio, se vam bo morda prikazala napaka. Preklopite zgoraj omenjeno stikalo Umaknjeno, da počistite to napako.
Lastnost StartScreen
Opomba
StartScreen lastnost ne bo prikazana na seznamu lastnosti, ko je možnost upokojitve Izboljšana vrstica s formulo je vklopljen. Obrniti Izboljšana vrstica s formulo izklop, pojdi na Nastavitve > Prihajajoče funkcije > Upokojen > izklopite Izboljšana vrstica s formulo preklopite, ko želite uporabiti StartScreen lastnine.
Lastnost StartScreen določa, kateri zaslon bo prikazan prvi. Oceni se enkrat, in sicer ko se aplikacija naloži, in vrne predmet zaslona, ki bo prikazan. Privzeto bo ta lastnost prazna in prvi zaslon v drevesnem pogledu aplikacije Studio bo prikazan prvi.
StartScreen je lastnost toka podatkov, ki ne more vsebovati vedenjskih funkcij. Na voljo so vse funkcije toka podatkov, vendar te funkcije in signale uporabite predvsem za določitev, kateri zaslon naj se prikaže prvi:
- Funkcija Param za branje parametrov, uporabljenih za zagon aplikacije.
- Funkcija User za branje informacij o trenutnem uporabniku.
- LookUp, Filter, CountRows, Max in druge funkcije, ki berejo iz vira podatkov.
- Vsi klici API-ja prek povezovalnika, vendar bodite previdni, da se vrednost hitro vrne.
- Signali, kot so Connection, Compass in App.
Opomba
Globalne spremenljivke in zbirke, vključno s tistimi, ustvarjenimi v OnStart, niso na voljo v StartScreen. Obstajajo deklarativne alternative za to, ki so na poti. Za povratne informacije o tej omejitvi pojdite na forum skupnosti Power Apps.
Če StartScreen vrne napako, bo prvi zaslon v drevesnem pogledu aplikacije Studio prikazan, kot da lastnost StartScreen ni bila nastavljena. Uporabite funkcijo IfError, da ujamete morebitne napake in jih preusmerite na ustrezen zaslon z napakami.
Ko spremenite lastnost StartScreen v aplikaciji Studio, jo preizkusite tako, da pomaknete kazalec miške nad predmet Aplikacija v podoknu Drevesni pogled, izberete tri pike (...) in nato izberite Navigate to StartScreen. Zaslon se bo spremenil, kot da je bila aplikacija naložena.

Primeri
Screen9
Pomeni, da bi morala biti lastnost Screen9 prikazana prva po zagonu aplikacije.
If( Param( "admin-mode" ) = 1, HomeScreen, AdminScreen )
Preveri, ali je parameter »admin-mode« nastavil uporabnik, in ga uporabi za odločitev, ali naj se najprej prikaže HomeScreen ali AdminScreen.
If( LookUp( Attendees, User = User().Email ).Staff, StaffPortal, HomeScreen )
Preveri, ali je udeleženec konference član osebja, in ga ob zagonu usmeri na ustrezen zaslon.
IfError( If( CustomConnector.APICall() = "Forest",
ForestScreen,
OceanScreen
),
ErrorScreen
)
Usmeri aplikacijo na podlagi klica API-ja v ForestScreen ali OceanScreen. Če API iz kakršnega koli razloga ni uspešen, se uporabi ErrorScreen.
Opomba
Ali nam lahko poveste, kateri je vaš prednostni jezik za dokumentacijo? Izpolnite kratko anketo. (upoštevajte, da je v angleščini)
Z anketo boste porabili približno sedem minut. Ne zbiramo nobenih osebnih podatkov (izjava o zasebnosti).
Povratne informacije
Pošlji in prikaži povratne informacije za