Muistiinpano
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää kirjautua sisään tai vaihtaa hakemistoa.
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää vaihtaa hakemistoa.
Koskee seuraavia: pohjaan perustuvat sovellukset
Hanki tietoja käynnissä olevasta sovelluksesta ja hallitse sovelluksen toimintaa.
Kuvaus
Kuten ohjausobjektillakin, sovellusobjektilla on ominaisuuksia, jotka määrittävät, mikä näyttö näytetään, ja sinua kehotetaan tallentamaan muutokset, jotta et menetä niitä. Jokaisella sovelluksella on Sovellus-objekti.
Kirjoita kaavoja joillekin Sovellus-objektin ominaisuuksille. Valitse Puunäkymä-ruudun yläosassa Sovellus-objekti niin kuin valitsisit minkä tahansa muun ohjausobjektin tai näytön. Voit tarkastella tai muokata jotakin objektin ominaisuuksista valitsemalla sen kaavarivin vasemmalla puolella olevasta avattavasta luettelosta.
Tässä artikkelissa käsitellään seuraavat sovellusobjektin ominaisuudet:
- ActiveScreen – tällä hetkellä näkyvissä oleva näyttö.
- BackEnabled – miten sovellus reagoi laitteen takaisin-eleeseen.
- ConfirmExit ja ConfirmExitMessage – varoita käyttäjää ennen sovelluksen sulkemista.
- Yhteysmerkkijono – määritä Application Insightsin kirjaaminen.
- Kaavat – määrittävät nimettyjä kaavoja, käyttäjän määrittämiä funktioita ja käyttäjän määrittämiä tyyppejä.
- OnError – käsittelee virheitä yleisesti.
- OnStart – suorita logiikka, kun sovellus käynnistyy.
- StartScreen – määritä näytettävä näyttö ensin, kun sovellus latautuu.
- StudioVersion – palauta sovelluksen julkaissut Power Apps Studio -versio.
ActiveScreen-ominaisuus
ActiveScreen-ominaisuus tunnistaa parhaillaan näytettävän näytön.
Tämä ominaisuus palauttaa näytön ohjausobjektin. Sen avulla voit viitata nykyisen näytön ominaisuuksiin, kuten nimeen ja kaavaan App.ActiveScreen.Name. Voit myös verrata tätä ominaisuutta toiseen näyttöobjektiin, kuten vertailukaavan App.ActiveScreen = Screen2 kanssa, tarkistaaksesi, onko Screen2-näyttö nykyinen näyttö.
Vaihda näytettävä näyttö Back - tai Navigate-funktiolla .
BackEnabled-ominaisuus
BackEnabled-ominaisuus muuttaa sitä, miten sovellus reagoi laitteen takaisin-eleeseen (pyyhkäise tai käytä Android-laitteiden laitteiston Takaisin-painiketta tai sipaise vasemmalta iOS-laitteissa), kun se suoritetaan Power Apps -mobiilisovelluksessa. Kun laite on otettu käyttöön, laitteen takaisin-ele palaa viimeksi näytettyun näyttöön, joka muistuttaa Back-kaavaa. Käytöstä poistetun laitteen takaisin-ele vie käyttäjän sovellusluetteloon.
ConfirmExit-ominaisuudet
Kukaan ei halua menettää tallentamattomia muutoksia. Käytä ConfirmExit- ja ConfirmExitMessage-ominaisuuksia varoittaaksesi käyttäjää ennen sovelluksen sulkemista.
Note
- ConfirmExit ei toimi sovelluksissa, jotka on upotettu esimerkiksi Power BI:hin ja SharePointiin.
- ConfirmExit-tuki ei ole tuettu mukautetuilla sivuilla.
- Nyt nämä ominaisuudet voivat viitata ohjausobjekteihin vain ensimmäisellä näytöllä, jos Viivästetty latauksen esikatselu -ominaisuus on käytössä (mikä on oletusarvoisesti uusissa sovelluksissa). Jos viittaat muihin näyttöihin, Power Apps Studio ei näytä virhettä, mutta julkaistu sovellus ei avaudu Power Apps Mobilessa tai selaimessa. Microsoft pyrkii poistamaan tämän rajoituksen. Poista sillä välin viivästetty kuormitus käytöstä tulevissa asetuksissa> (esikatseluvaiheessa).
ConfirmExit
ConfirmExit on totuusarvo-ominaisuus, joka avaa vahvistusvalintaikkunan, kun se on tosi, ennen kuin sovellus sulkeutuu. Oletusarvoisesti tämä ominaisuus on epätosi, eikä näkyviin tule valintaikkunaa.
Jos käyttäjällä saattaa olla tallentamattomia muutoksia sovelluksessa, näytä tämän ominaisuuden avulla vahvistusvalintaikkuna ennen sovelluksen poistumista. Käytä kaavaa, joka tarkistaa muuttujia ja ohjausobjektien ominaisuuksia (esimerkiksi Muokkaa lomaketta -ohjausobjektin Tallentamaton-ominaisuutta).
Vahvistusvalintaikkuna tulee näkyviin kaikissa tilanteissa, joissa tietoja voi kadota, kuten:
- Suorita Exit-funktio .
- Jos sovellus suoritetaan selaimessa:
- Sulje selain tai selaimen välilehti, jossa sovellus suoritetaan.
- Valitse selaimen Takaisin-painike.
- Suorita Launch-funktioLaunchTarget-funktiollaSelf.
- Jos sovellus suoritetaan Power Apps Mobilessa (iOS tai Android):
- Siirry toiseen sovellukseen Power Apps Mobilessa pyyhkäisemällä.
- Valitse Android-laitteen Takaisin-painike.
- Käynnistä toinen pohjaan perustuva sovellus suorittamalla Launch-funktio .
Vahvistusvalintaikkunan tarkka ulkoasu voi vaihdella Power Appsin eri laitteissa ja versioissa.
Vahvistusvalintaikkuna ei näy Power Apps Studiossa.
ConfirmExitMessage
Oletuksena vahvistusvalintaikkunassa näkyy yleinen viesti, kuten käyttäjän kielinen Sinulla saattaa olla tallentamattomia muutoksia.
ConfirmExitMessage-ominaisuudella voit mukauttaa vahvistusvalintaikkunan viestiä. Jos tämä ominaisuus on tyhjä, käytetään oletusarvoa. Mukautetut sanomat katkaistaan tarpeen mukaan, jotta ne mahtuvat vahvistusvalintaikkunaan, joten säilytä viesti enintään muutamalla rivillä.
Selaimessa vahvistusvalintaikkuna voi näyttää yleisviestin selaimesta.
Esimerkki
Määritä Sovellus-objektin ConfirmExit-ominaisuudeksi tämä lauseke:
AccountForm.Unsaved Or ContactForm.UnsavedValintaikkuna tulee näkyviin, jos käyttäjä muuttaa tietoja jommassakummassa lomakkeessa ja yrittää sitten sulkea sovelluksen tallentamatta näitä muutoksia.
Määritä Sovellus-objektin ConfirmExitMessage-ominaisuudeksi tämä kaava:
If( AccountForm.Unsaved, "Accounts form has unsaved changes.", "Contacts form has unsaved changes." )Valintaikkunassa näkyy lomakekohtainen sanoma, kun käyttäjä muuttaa tietoja jommassakummassa lomakkeessa ja yrittää sitten sulkea sovelluksen tallentamatta näitä muutoksia.
Yhteysmerkkijono-ominaisuus
Käytä Yhteysmerkkijono-ominaisuutta järjestelmän luomien sovelluslokien viemiseen Application Insightsiin.
Määritä yhteysmerkkijono seuraavasti:
- Avaa sovellus muokkausta varten Power Apps Studiossa.
- Valitse Sovellus-objekti vasemmassa siirtymisnäkymässä.
- Anna Yhteysmerkkijono Ominaisuudet-ruudussa.
Jos tietoja ei lähetetä Application Insightsiin, ota yhteyttä Power Platform -järjestelmänvalvojaan ja tarkista, onko Application Insights poistettu käytöstä vuokraajatasolla.
Kaavat-ominaisuus
Määritä uudelleenkäytettävä logiikka koko sovelluksessa Kaavat-ominaisuuden avulla. Kaavat-ominaisuus tukee kolmea rakennetta:
- Nimetyt kaavat – määritä kaavalle nimi ja käytä arvoa uudelleen koko sovelluksessa.
- Käyttäjän määrittämät funktiot – nimetyt kaavat, jotka ottavat parametreja ja palauttavat arvon.
- Käyttäjän määrittämät tyypit eli nimetyt tyypit, joita voit käyttää uudelleen kaavoissa ja funktion allekirjoituksista.
Nimetyt kaavat
Käytä nimettyjä kaavoja Kaavat-ominaisuudessa määrittääksesi kaavan, jota voit käyttää uudelleen kaikkialla sovelluksessasi.
Power Apps -kaavat määrittävät ohjausobjektin ominaisuuksien arvon. Voit esimerkiksi määrittää taustavärin johdonmukaisesti koko sovelluksessa määrittämällä kunkin ohjausobjektin Fill-ominaisuudeksi yleisen kaavan:
Label1.Fill: ColorValue( Param( "BackgroundColor" ) )
Label2.Fill: ColorValue( Param( "BackgroundColor" ) )
Label3.Fill: ColorValue( Param( "BackgroundColor" ) )
Kun kaava esiintyy niin monissa paikoissa, se on vaivalloista ja virhe on altis päivittämään ne kaikki tarvittaessa. Luo sen sijaan OnStartissa yleinen muuttuja, jotta väri voidaan määrittää kerran, ja käytä sitten arvoa uudelleen koko sovelluksessa:
App.OnStart: Set( BGColor, ColorValue( Param( "BackgroundColor" ) ) )
Label1.Fill: BGColor
Label2.Fill: BGColor
Label3.Fill: BGColor
Vaikka tämä menetelmä on parempi, se riippuu myös siitä, onko OnStart käytössä, ennen kuin BGColor-arvo on määritetty. BGColor -arvoa voidaan myös muuttaa jossain sovelluksen kolkasta, josta tekijä ei ole tietoinen, jonkun muun tekemässä muutoksessa, ja sitä voi olla hankala jäljittää.
Nimetyt kaavat tarjoavat vaihtoehtoisen vaihtoehdon. Samoin kuin yleensä kirjoitat control-property = expression, voit sen sijaan kirjoittaa nimen = lauseke ja käyttää sitten nimeä uudelleen kaikkialla sovelluksessa lausekkeen korvaamiseksi. Määritä seuraavat kaavat Kaavat-ominaisuudessa :
App.Formulas: BGColor = ColorValue( Param( "BackgroundColor" ) );
Label1.Fill: BGColor
Label2.Fill: BGColor
Label3.Fill: BGColor
Nimettyjen kaavojen käytön etuja ovat seuraavat:
- Kaavan arvo on aina käytettävissä. Ajoitusriippuvuutta ei ole, ei OnStart-arvoa, joka täytyy suorittaa ennen arvon määrittämistä, eikä aikaa, jolloin kaavan arvo on virheellinen. Nimetyt kaavat voivat viitata toisiinsa missä tahansa järjestyksessä, kunhan niissä ei luoda kehäviittauksia. Ne voidaan laskea rinnakkain.
- Kaavan arvo on aina ajan tasalla. Kaava voi suorittaa ohjausobjektin ominaisuuksista tai tietokantatietueista riippuvaisen laskutoimituksen. Kun ne muuttuvat, kaavan arvo päivittyy automaattisesti. Arvoa ei tarvitse päivittää manuaalisesti kuten muuttujia. Kaavat lasketaan uudelleen vain tarvittaessa.
- Kaavan määritys on muuttumaton. Kaavat-määritys on yksi totuuslähde, eikä arvoa voi muuttaa muualla sovelluksessa. Muuttujilla jokin koodi voi odottamattomasti muuttaa arvoa, mutta vaikeasti korjaava tilanne ei ole mahdollinen nimetyillä kaavoilla.
- Kaavan laskentaa voidaan lykätä. Koska sen arvo on muuttumaton, se voidaan aina laskea tarvittaessa. Sen voi siis laskea vasta tarvittaessa. Kaavan arvoja, joita ei käytetä, ennen kuin sovelluksen näyttö2 on näkyvissä, ei tarvitse laskea, ennen kuin näyttö2 on näkyvissä. Tämän työn lykkääminen voi parantaa sovelluksen latausaikaa. Nimetyt kaavat ovat määrityksellisiä, ja niiden avulla järjestelmä voi optimoida laskennan tavan ja ajankohdan.
- Nimetyt kaavat ovat Excel-käsite. Power Fx käyttää Excelin käsitteitä mahdollisuuksien mukaan, koska niin monet ihmiset tuntevat Excelin hyvin. Nimetyt kaavat vastaavat nimettyjä soluja ja nimettyjä kaavoja Excelissä, ja niitä hallitaan nimien hallinnassa. Ne laskevat automaattisesti uudelleen, kuten laskentataulukon solut ja ohjausobjektin ominaisuudet tekevät.
Määritä nimetyt kaavat yksi toisensa jälkeen Kaavat-ominaisuudessa , joista kukin päättyy puolipisteisiin. Kaavan tyyppi päätellään kaavan elementtien tyypeistä ja siitä, miten niitä käytetään yhdessä. Esimerkiksi nämä nimetyt kaavat hakevat hyödyllisiä tietoja nykyisestä käyttäjästä Dataversestä:
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' );
Jos UserTitle-kaava on päivitettävä, voit päivittää sen helposti tässä yhdessä sijainnissa. Jos UserPhonea ei tarvita sovelluksessa, näitä kutsuja Käyttäjät-taulukkoon Dataversessä ei tehdä. Käyttämättömän kaavamäärityksen lisäämisestä ei sakoteta.
Joitakin nimettyjen kaavojen rajoituksia:
- Ne eivät voi käyttää käyttäytymistoimintoja tai muutoin aiheuttaa sovelluksen sisällä sivuvaikutuksia.
- Ne eivät voi luoda kehäviittausta. Seuraavat eivät ole sallittuja samassa sovelluksessa: a = b; and b = a;.
Käyttäjän määrittämät toiminnot
Power Fx sisältää pitkän luettelon sisäänrakennettuja funktioita, kuten If, Text ja Set. Käyttämällä käyttäjän määrittämiä funktioita voit kirjoittaa omia funktioita, jotka ottavat parametreja ja palauttavat arvon, aivan kuten sisäiset funktiotkin. Ajattele käyttäjän määrittämiä funktioita, jotka laajentavat nimettyjä kaavoja ja lisäävät parametreja ja tukevat toimintakaavoja.
Voit esimerkiksi määrittää nimetyn kaavan, joka palauttaa kaunokirjat kirjastosta:
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" );
Ilman parametreja sinun on määritettävä erilliset nimetyt kaavat kullekin tyylilajille. Parametrisoi sen sijaan nimetty kaava:
LibraryType := Type( [ { Title: Text, Author: Text, Genre: Text } ] );
LibraryGenre( SelectedGenre: Text ): LibraryType = Filter( Library, Genre = SelectedGenre );
Nyt voit kutsua LibraryGenre( "Fiction" )- LibraryGenre( "Reference" )tai -suodattimia muissa tyylilajeissa käyttämällä yhden käyttäjän määrittämää funktiota.
Syntaksi on seuraava:
FunctionName( [ ParameterName1: ParameterType1 [ , ParameterName2: ParameterType2 ... ] ) ): ReturnType = Formula;
- FunctionName – pakollinen. Käyttäjän määrittämän funktion nimi.
- ParameterNames– Valinnainen. Funktioparametrin nimi.
- ParameterType(s) – Valinnaisia. Tyypin nimi, joko sisäinen tietotyypin nimi, tietolähteen nimi tai tyyppi, joka on määritetty käyttämällä Type-funktiota .
- ReturnType – pakollinen. Funktion palautusarvon tyyppi.
- Kaava – Pakollinen. Kaava, joka laskee funktion arvon parametrien perusteella.
Sinun on kirjoitettava jokainen parametri ja tuloste käyttäjän määrittämästä funktiosta. Tässä esimerkissä määritetään funktion ensimmäinen parametri, jonka tyyppi on Text, SelectedGenre: Text ja SelectedGenre on sen parametrin nimi, jota käytetään leipätekstissä Suodatin-toiminnon yhteydessä. Katso tuettujen tyyppien nimet kohdasta Tietotyypit.
Type-funktiolla luodaan kirjastolle koostetyyppi, jotta voit palauttaa kirjataulukon -funktiosta.
LibraryType Määrität tietuetyypin monikkotaulukoksi. Jos haluat välittää yhden kirjan funktiolle, voit poimia tämän taulukon tietueen tyypin käyttämällä RecordOf-funktiota:
BookType := Type( RecordOf( LibraryType ) );
IsGenre( Book: BookType, SelectedGenre: Text ): Boolean = (Book.Genre = SelectedGenre);
Funktion parametrien tietueiden täsmäytys on tiukempi kuin muissa Power Fx:n osissa. Tietuearvon kenttien on oltava tyypin määrityksen oikea alijoukko, eivätkä ne saa sisältää ylimääräisiä kenttiä. Tuloksena IsGenre( { Title: "My Book", Published: 2001 }, "Fiction" ) on esimerkiksi virhe.
Käyttäjän määrittämät funktiot eivät vielä tue rekursiota.
Käyttäjän määrittämät käyttäytymisfunktiot
Nimetyt kaavat ja useimmat käyttäjän määrittämät funktiot eivät tue funktioita, joilla on sivuvaikutuksia, kuten Set tai Notify. Yleensä vältä tilan päivittämistä, jos voit. Luota sen sijaan funktionaalisiin ohjelmointimalleihin ja salli Power Fx:n laskea kaavat uudelleen automaattisesti tarpeen mukaan. Mutta on tapauksia, joissa se on väistämätöntä. Jos haluat sisällyttää käyttäytymislogiikan käyttäjän määrittämään funktioon, paketoi sisältö aaltosulkeisiin:
Spend( Amount: Number ) : Void = {
If( Amount > Savings,
Error( $"{Amount} is more than available savings" ),
Set( Savings, Savings - Amount );
Set( Spent, Spent + Amount)
);
}
Nyt voit kutsua Spend( 12 ) tarkistaaksesi, onko säästöissäsi 12, ja jos on, veloittaa sen 12:lla ja lisätä 12 Käytetty-muuttujaan. Tämän funktion palautustyyppi on Void, koska se ei palauta arvoa.
Käyttäjän määrittämän funktion syntaksi on seuraava:
FunctionName( [ ParameterName1: ParameterType1 [ , ParameterName2: ParameterType2 ... ] ] ) : ReturnType = { Formula1 [ ; Kaava2 ... ] };
- FunctionName – pakollinen. Käyttäjän määrittämän funktion nimi.
- ParameterNames– Valinnainen. Funktioparametrin nimi.
- ParameterType(s) – Valinnaisia. Tyypin nimi, joko sisäinen tietotyypin nimi, tietolähteen nimi tai Type-funktiolla määritetty tyyppi.
- ReturnType – pakollinen. Funktion palautusarvon tyyppi. Käytä Void-tyyppiä, jos funktio ei palauta arvoa.
- Kaavat – Pakollinen. Kaava, joka laskee funktion arvon parametrien perusteella.
Kuten kaikkien Power Fx -kaavojen kohdalla, suoritus ei pääty virheen ilmetessä. Kun Error-funktio on kutsuttu, If-funktio estää muutoksia säästöihin ja kuluihin. IfError-funktiota voidaan käyttää myös estämään jatkosuoritus virheen jälkeen. Vaikka kaava palauttaa arvon Void, se voi silti palauttaa virheen ongelman ilmetessä.
Käyttäjän määrittämät tyypit
Luo käyttäjän määrittämät tyypit käyttämällä nimettyjä kaavoja Type-funktion kanssa. Käytä määritystä := määrityksen = sijaan, jos haluat määrittää käyttäjän määrittämän tyypin, esimerkiksi Book := Type( { Title: Text, Author: Text } ). Katso lisätietoja ja esimerkkejä Type-funktiosta.
OnError-ominaisuus
OnError-tapahtuman avulla voit ryhtyä toimiin, kun virhe tapahtuu missä tahansa sovelluksen osassa. Se tarjoaa yleisen mahdollisuuden siepata virhepalkki, ennen kuin se näytetään käyttäjälle. Sen avulla voit myös kirjata virheen käyttämällä Trace-funktiota tai kirjoittaa tietokantaan tai verkkopalveluun.
Kaaviosovelluksissa jokaisen kaavan tulos tarkistetaan virheiden varalta. Jos virhe ilmenee, OnError arvioidaan samoilla FirstError- ja AllErrors-vaikutusalueen muuttujilla, joita sovellus käyttää, jos koko kaava on rivitelty IfError-funktioon.
Jos OnError on tyhjä, virhe näkyy oletusarvoisesti FirstError.Message-ilmoituspalkissa . OnError-kaavan määrittäminen ohittaa tämän toiminnon, jotta tekijä voi käsitellä virheraportoinnin tarpeen mukaan. Voit pyytää onError-oletustoimintaa luomalla virheen uudelleen Error-funktiolla. Käytä tätä menetelmää, jos haluat suodattaa pois tai käsitellä joitakin virheitä eri tavalla, mutta antaa muiden mennä läpi.
OnError ei voi korvata virhettä laskelmissa samalla tavalla kuin IfError. Jos OnError käynnistetään, virhe on jo tapahtunut ja se käsitellään jo IfErrorin kaltaisten kaavojen laskutoimitusten kautta. OnError hallitsee vain virheraportointia.
OnError-kaavat arvioidaan samanaikaisesti, ja on mahdollista, että niiden arviointi on päällekkäinen muiden virheiden käsittelyn kanssa. Jos esimerkiksi määrität yleisen muuttujan OnError-ohjausobjektin yläreunaan ja luet sen myöhemmin samassa kaavassa, arvo on saattanut muuttua. With-funktiolla voit luoda nimitetyn arvon, joka on kaavalle paikallinen.
Vaikka OnError käsittelee jokaisen virheen yksitellen, oletusvirhepalkkia ei välttämättä näytetä jokaiselle virheelle erikseen. Jos haluat välttää sen, että liian monta virhepalkkia olisi näkyvissä samanaikaisesti, samaa virhepalkkia ei näytetä uudelleen, jos se näytetään äskettäin.
Esimerkki
Tässä Label-ohjausobjekti ja Slider-ohjausobjekti on sidottu toisiinsa kaavalla
Label1.Text = 1/Slider1.Value
Liukusäätimen oletusarvo on 50. Jos siirrät liukusäätimen arvoon 0, Label1 ei näytä arvoa ja näkyviin tulee virhepalkki:
Katsotaan yksityiskohtaisesti, mitä tapahtuu:
- Siirrät liukusäätimen vasemmalle ja Slider1.Value-ominaisuus muuttuu arvoon 0.
- Label1.Text arvioi uudelleen automaattisesti. Jako nollalla tapahtuu, mikä aiheuttaa virheen.
- Tässä kaavassa ei ole IfError-funktiota. Nollalla jakamisen virheen palauttaa kaavan arviointi.
- Label1.Text ei voi näyttää mitään tämän virheen osalta, joten se näyttää tyhjän tilan.
- OnError käynnistyy. Koska käsittelijää ei ole, näkyviin tulee vakiomuotoinen vihrepalkki virhetietoineen.
Tarvittaessa voit myös muuttaa kaavan arvoksi Label1.Text = IfError( 1/Slider1.Value, 0 ).
IfError-funktion käyttäminen tarkoittaa, ettei virhettä tai virhepalkkia ole. Et voi muuttaa virheen arvoa OnError-funktiosta , koska virhe on jo tapahtunut – OnError ohjaa vain sitä, miten se raportoidaan.
Jos lisäät OnError-käsittelijän , se ei vaikuta vaiheisiin ennen vaihetta 5, mutta se muuttaa tapaa, jolla virhe raportoidaan:
Trace( $"Error {FirstError.Message} in {FirstError.Source}" )
Tämän OnError-käsittelijän ansiosta sovelluksen käyttäjä ei näe mitään virhettä. Virhe lisätään kuitenkin Monitorin jäljitykseen, mukaan lukien FirstError-funktion virhetietojen lähde:
Jos haluat näyttää myös oletusvirhepalkin ja jäljityksen, luo virhe uudelleen käyttämällä Error-funktiotaJäljitys-kutsun jälkeen ikään kuin Jäljitys-toimintoa ei olisi:
Trace( $"Error {FirstError.Message} in {FirstError.Source}" );
Error( FirstError )
OnStart-ominaisuus
Note
OnStart-ominaisuuden käyttö voi aiheuttaa suorituskykyongelmia sovelluksen lataamisessa. Harkitse näitä vaihtoehtoja ennen logiikan lisäämistä OnStartiin:
- Voit tallentaa tietoja välimuistiin tai määrittää yleisiä muuttujia käyttämällä nimettyä kaavaaKaavat-ominaisuudessa , jos mahdollista.
- Voit määrittää ensimmäisen näytön näkymään Käyttämällä StartScreen-ominaisuuttaNavigate-ominaisuuden sijaan.
- Voit suorittaa logiikan, kun tietty näyttö tulee näkyviin, käyttämällä näytön OnVisible-ominaisuutta .
Kontekstista riippuen OnStart-ominaisuus saattaa olla oletusarvoisesti poissa käytöstä. Jos et näe sitä ja sinun on käytettävä sitä, tarkista sovelluksen Lisäasetukset valitsinta varten, jotta voit ottaa sen käyttöön.
Kun estoa poistava OnStart-sääntö on käytössä (oletus), OnStart suoritetaan samaan aikaan kuin muut sovelluksen säännöt. Tulos:
- OnStartissa alustavia muuttujia ei ehkä alusteta täysin, kun muut sovellussäännöt lukevat ne.
- Näyttö voi hahmontaa ja muuttua vuorovaikutteisiksi, ennen kuin App.OnStart tai Screen.OnVisible lopettaa toiminnan, etenkin jos näiden funktioiden suorittaminen kestää kauan.
OnStart-ominaisuus käynnistyy, kun käyttäjä käynnistää sovelluksen. Käytä tätä ominaisuutta seuraavasti:
- Nouda ja tallenna välimuistiin kokoelmien tietoja käyttämällä Collect-funktiota.
- Määritä yleisiä muuttujia käyttämällä Set-funktiota.
Tämä kaava suoritetaan ennen ensimmäisen näytön julkaisua. Näyttöä ei ole ladattu, joten et voi määrittää kontekstimuuttujia UpdateContext-funktiolla. Voit kuitenkin välittää kontekstimuuttujia Navigate-funktiolla .
Kun olet muuttanut OnStart-ominaisuutta, testaa sitä viemällä hiiren osoitin Puunäkymä-ruudunSovellus-objektin päälle, valitsemalla kolme pistettä (...) ja valitsemalla sitten Suorita OnStart. Toisin kuin silloin, kun sovellus latautuu ensimmäistä kertaa, olemassa olevat kokoelmat ja muuttujat on jo määritetty. Jos haluat aloittaa tyhjillä kokoelmilla, käytä ClearCollect-funktiota Collect-funktion sijaan.
Note
- OnStart-ominaisuudenNavigate-funktion käyttö poistetaan käytöstä. Olemassa olevat sovellukset toimivat edelleen. Rajoitetun ajan voit ottaa sen käyttöön sovelluksen asetuksissa (kohdassa Poistettu käytöstä). Siirtyminen tällä tavalla voi kuitenkin aiheuttaa sovelluksen kuormituksen viiveitä, koska se pakottaa järjestelmän lopettamaan OnStart-toiminnon suorittamisen ennen ensimmäisen näytön näyttämista. Aseta ensimmäinen näytettävä näyttö StartScreen-ominaisuuden sijaan.
- Poistettu käytöstä on poistettu käytöstä sovelluksissa, jotka on luotu ennen maaliskuuta 2021, jossa lisäsit Siirry OnStartiin maaliskuun 2021 ja tämän jälkeen välillä. Kun muokkaat näitä sovelluksia Power Apps Studiossa, näet virheen. Ota Poistettu-valitsin käyttöön tyhjentääksesi tämän virheen.
StartScreen-ominaisuus
StartScreen-ominaisuus määrittää, mikä näyttö näkyy ensimmäisenä. Power Apps arvioi tämän ominaisuuden kerran, kun sovellus latautuu, ja palauttaa näytön objektin näytettäväksi. Tämä ominaisuus on oletusarvoisesti tyhjä ja studiopuu-näkymän ensimmäinen näyttö näkyy ensimmäisenä.
StartScreen on tietovuo-ominaisuus, joka ei voi sisältää toimintafunktioita. Kaikki tietovuon funktiot ovat käytettävissä. Päätä näiden funktioiden ja signaalien avulla, mikä näyttö näytetään ensin:
- Param-funktio, joka lukee sovelluksen käynnistämisessä käytettävät parametrit.
- User-funktio, joka lukee nykyisen käyttäjän tiedot.
- LookUp, Filter, CountRows, Max ja muut funktiot, jotka lukevat tietolähteestä.
- API-kutsut liittimen kautta. Varmista, että kutsu palautuu nopeasti.
- Signaalit kuten Connection, Compass ja App.
Note
Yleiset muuttujat ja kokoelmat, mukaan lukien OnStartissa luodut, eivät ole käytettävissä StartScreen-näytössä. Nimettyjä kaavoja on saatavana, ja ne ovat usein parempi vaihtoehto kaavojen uudelleenkäytölle koko sovelluksessa.
Jos StartScreen palauttaa virheen, Studio Tree -näkymän ensimmäinen näyttö näkyy ikään kuin StartScreen-näyttöä ei olisi määritetty. Havaitse virheet IfError-funktiolla ja ohjaa virhenäyttöön.
Kun olet muuttanut StartScreen-näyttöä Studiossa, testaa sitä viemällä hiiren osoitin Puunäkymä-ruudunsovellusobjektin päälle, valitsemalla kolme pistettä (...) ja valitsemalla sitten Siirry StartScreen-näyttöön. Näyttö muuttuu ikään kuin sovellus olisi juuri ladattu.
Esimerkkejä
Screen9
Screen9 näkyy ensimmäisenä aina, kun sovellus käynnistyy.
If( Param( "admin-mode" ) = 1, HomeScreen, AdminScreen )
Tarkistaa, onko Param"admin-mode" määritetty, ja määrittää sen avulla, näytetäänkö HomeScreen vai AdminScreen ensin.
If( LookUp( Attendees, User = User().Email ).Staff, StaffPortal, HomeScreen )
Tarkistaa, onko osallistuja henkilökunnan jäsen, ja ohjaa hänet oikeaan näyttöön käynnistyksen yhteydessä.
IfError( If( CustomConnector.APICall() = "Forest",
ForestScreen,
OceanScreen
),
ErrorScreen
)
Ohjaa sovelluksen näyttöön ForestScreen tai OceanScreen ohjelmointirajapintakutsun perusteella. Jos ohjelmointirajapinta epäonnistuu, sovellus käyttää ErrorScreen sitä.
StudioVersion-ominaisuus
StudioVersion-ominaisuuden avulla voit näyttää tai kirjata lokiin sovelluksen julkaisemiseen käytetyn Power Apps Studio -version. Tämä ominaisuus auttaa virheenkorjauksessa ja sen tarkistamisessa, että sovelluksesi julkaistaan uudelleen Power Apps Studion uusimmalla versiolla.
StudioVersion palauttaa tekstin. Tämän tekstin muoto voi muuttua ajan kuluessa, joten käsittele sitä kokonaisena, eikä poimi yksittäisiä osia.