Belešku
Pristup ovoj stranici zahteva autorizaciju. Možete pokušati da se prijavite ili da promenite direktorijume.
Pristup ovoj stranici zahteva autorizaciju. Možete pokušati da promenite direktorijume.
Odnosi se na: Canvas aplikacije
Pronađite informacije o trenutno pokrenutoj aplikaciji i kontrolišite ponašanje aplikacije.
Opis
Kao i kontrola, objekat aplikacije ima svojstva koja identifikuju koji ekran se prikazuje i traži od vas da sačuvate promene kako se one ne bi izgubile. Svaka aplikacija ima objekat App.
Napišite formule za neka svojstva objekta aplikacije . Na vrhu okna Prikaz stabla, izaberite objekat App kao što biste izabrali bilo koju drugu kontrolu ili ekran. Da biste prikazali ili uredili neko od svojstava objekta, izaberite ga sa padajuće liste sa leve strane polja za formulu.
Svojstvo ActiveScreen
Svojstvo ActiveScreen identifikuje ekran koji je trenutno prikazan.
Ova osobina vraća objekat ekrana. Koristite ga za upućivanje na svojstva trenutnog ekrana, kao što je ime sa formulom App.ActiveScreen.Name. Ovo svojstvo možete da uporedite i sa drugim objektom na ekranu, na primer sa formulom za poređenje App.ActiveScreen = Screen2 da biste proverili da li je Ekran2 trenutni ekran.
Koristite funkciju "Nazad" ili " Navigacija" da biste prebacili prikazani ekran.
BackEnabled osobina
Svojstvo BackEnabled menja način na koji aplikacija odgovara na pokret unazad uređaja (brzo prevucite ili koristite dugme nazad hardvera na Android uređajima ili brzo prevucite sa leve strane na iOS uređajima) kada koristite Power Apps mobile. Kada se omogući, pokret unazad uređaja vraća se na ekran koji je nedavno prikazan, što je slično formuli "Nazad ". Kada je onemogućen, pokret unazad uređaja vodi korisnika na listu aplikacija.
Svojstva ConfirmExit
Niko ne želi da izgubi nesačuvane promene. Koristite svojstva ConfirmExit i ConfirmExitMessage da biste upozorili korisnika pre nego što zatvorite aplikaciju.
Belešku
- ConfirmExit ne funkcioniše u aplikacijama ugrađenim u, na primer, Power BI i SharePoint.
- Svojstvo "ConfirmExit " nije podržano na prilagođenim stranicama.
- Ova svojstva sada mogu da upućuju na kontrole samo na prvom ekranu ako je omogućena funkcija pregleda odloženog učitavanja (što je podrazumevano za nove aplikacije). Ako upućuje na druge ekrane, Power Apps Studio ne prikazuje grešku, ali se objavljena aplikacija ne otvara u aplikaciji Power Apps Mobile ili pregledaču. Radimo na tome da ukinemo ovo ograničenje. U međuvremenu, isključite opciju Odloženo učitavanje u postavkama Predstojeće>funkcije (u okviru Pregled).
ConfirmExit
ConfirmExit je Bulovo svojstvo koje, kada je tačno, otvara dijalog za potvrdu pre nego što se aplikacija zatvori. Podrazumevana vrednost ovog svojstva je netačno i ne prikazuje se nijedan dijalog.
Kada korisnik možda ima nesačuvane promene u aplikaciji, koristite ovo svojstvo da biste prikazali dijalog za potvrdu pre nego što izađete iz aplikacije. Koristite formulu koja proverava promenljive i svojstva kontrole (na primer, nesačuvano svojstvo kontrole uređivanja obrasca).
Dijalog za potvrdu se pojavljuje u bilo kojoj situaciji u kojoj se podaci mogu izgubiti, na primer:
- Pokrenite funkciju Exit .
- Ako se aplikacija pokreće u pregledaču:
- Zatvorite pregledač ili karticu pregledača gde se aplikacija pokreće.
- Kliknite na dugme "Nazad" u pregledaču.
- Pokrenite funkciju Launch koristeći LaunchTargetsamog.
- Ako se aplikacija pokreće u aplikaciji Power Apps Mobile (iOS ili Android):
- Brzo prevucite da biste se prebacili na drugu aplikaciju u aplikaciji Power Apps Mobile.
- Kliknite na dugme "Nazad" na Android uređaju.
- Pokrenite funkciju Launch da biste pokrenuli drugu aplikaciju podloge za crtanje.
Tačan izgled dijaloga za potvrdu može da se razlikuje u različitim uređajima i verzijama Power Apps.
Dijalog za potvrdu se ne prikazuje u programskom dodatku Power Apps Studio.
ConfirmExitMessage
Podrazumevano, dijalog za potvrdu prikazuje generičku poruku, kao što je „Možda imate nesačuvane promene.“ na jeziku korisnika.
Koristite ConfirmExitMessage da u dijalogu za potvrdu navedete prilagođenu poruku. Ako je ovo svojstvo prazno, koristi se podrazumevana vrednost. Prilagođene poruke su skraćene po potrebi da bi se uklopilo u dijalog za potvrdu, stoga je zadržite na nekoliko redova.
U pregledaču, dijalog za potvrdu može da prikaže generičke poruke iz pregledača.
Belešku
Objekat Aplikacije ima još dva svojstva OnMessageBackEnabledkoja su eksperimentalna. Ova svojstva se na kraju uklanjaju iz objekta aplikacije. Nemojte koristiti ova svojstva u okruženju proizvodnje.
Primer
Podesite svojstvo ConfirmExit objekta App na ovaj izraz:
AccountForm.Unsaved Or ContactForm.UnsavedDijalog prikazuje da li korisnik menja podatke u oba obrasca, a zatim pokušava da zatvori aplikaciju bez čuvanja tih promena.Korisnik menja podatke u oba obrasca, a zatim pokušava da zatvori aplikaciju bez čuvanja tih promena.
[!div clas1. Podesite svojstvo ConfirmExitMessage objekta App prema ovoj formuli:
If( AccountsForm.Unsaved, "Accounts form has unsaved changes.", "Contacts form has unsaved changes." )Dijalog prikazuje da li korisnik menja podatke u obrascu naloga, a zatim pokušava da zatvori aplikaciju bez čuvanja tih promena.
Podešavanje niske veze za uvide aplikacije
Da biste izvezli sistemski generisane evidencije aplikacija u uvide aplikacije, podesite nisku veze za aplikaciju podloge za crtanje.
- Otvorite aplikaciju za uređivanje Power Apps Studio.
- Izaberite objekat aplikacije u levom prikazu stabla navigacije.
- Unesite nisku veze u okno sa svojstvima.
Ako se podaci ne šalju u Uvidi aplikacije, obratite se administratoru Power Platform platforme i proverite da li su Uvidi aplikacije onemogućeni na nivou zakupca.
Svojstvo „Formulas“
Koristite imenovane formule u svojstvu Formulas da biste definisali formulu koja se može ponovo koristiti u celoj aplikaciji.
U Power Apps, formule određuju vrednost kontrolnih svojstava. Na primer, da biste dosledno podesili boju pozadine u aplikaciji, svojstvo Fill za svaku možete da postavite na uobičajenu formulu:
Label1.Fill: ColorValue( Param( "BackgroundColor" ) )
Label2.Fill: ColorValue( Param( "BackgroundColor" ) )
Label3.Fill: ColorValue( Param( "BackgroundColor" ) )
Sa toliko mesta na kojima se ova formula može pojaviti, postaje zamorno i podložno greškama da ih sve ažurira ako je potrebna promena. Umesto toga, možete da kreirate globalnu promenljivu u OnStart da biste jednom podesili boju, a zatim ponovo koristili vrednost u celoj aplikaciji:
App.OnStart: Set( BGColor, ColorValue( Param( "BackgroundColor" ) ) )
Label1.Fill: BGColor
Label2.Fill: BGColor
Label3.Fill: BGColor
Iako je ova metoda bolja, ona zavisi i od pokretanja OnStart pre nego što se utvrdi vrednost za BGColor. BGColor takođe može biti manipulisan u nekom uglu aplikacije za koju proizvođač nije svestan, promena koju je napravio neko drugi, a to može biti teško pronaći.
Imenovane formule pružaju alternativu. Kao što obično pišemo svojstvo-kontrole = izraz, tako možemo da napišemo i ime = izraz, a zatim da ponovo koristimo ime u celoj aplikaciji da bismo zamenili izraz. Definicije ovih formula se rade u svojstvu Formulas:
App.Formulas: BGColor = ColorValue( Param( "BackgroundColor" ) );
Label1.Fill: BGColor
Label2.Fill: BGColor
Label3.Fill: BGColor
Prednosti korišćenja imenovanih formula uključuju:
- Vrednost formule je uvek dostupna. Ne postoji zavisnost od vremenskog rasporeda, ne postoji OnStart koji mora da se pokrene prvi pre nego što se vrednost postavi, nema vremena u kojem je vrednost formule netačna. Imenovane formule mogu da se odnose jedna na drugu bilo kojim redosledom, sve dok ne kreiraju kružnu referencu. Mogu se izračunavati paralelno.
- Vrednost formule je uvek ažurna. Formula može da izvrši izračunavanje koje zavisi od svojstava kontrole ili zapisa baze podataka, a kako se menjaju, vrednost formule se automatski ažurira. Nije potrebno da ručno ažurirate vrednost kao što to radite sa promenljivom. A formule se ponovo izračunavaju samo kada je to potrebno.
- Definicija formule je nepromenljiva. Definicija u svojstvu Formulas je jedan izvor istine i vrednost se ne može promeniti negde drugde u aplikaciji. Sa promenljivim, moguće je da neki kod neočekivano menja vrednost, ali ova situacija koja je teška za otklanjanje grešaka nije moguća sa imenovanim formulama.
- Izračunavanje formule se može odložiti. Pošto je njegova vrednost nepromenljiva, uvek se može izračunati kada je to potrebno, što znači da ne mora da se izračunava dok nije potrebna. Vrednosti formule koje se ne koriste dok se ne prikaže screen2 aplikacije ne moraju biti izračunate dok screen2 ne bude vidljiv. Odlaganje ovog posla može poboljšati vreme učitavanja aplikacije. Imenovane formule su deklarativne i pružaju mogućnosti sistemu da optimizuje način i kada će biti izračunat.
- Imenovane formule su Excel koncept. Power Fx koristi Excel koncepte tamo gde je to moguće pošto toliko ljudi dobro poznaje Excel. Imenovane formule su ekvivalent imenovanih ćelija i imenovanih formula u programu Excel, kojima se upravlja pomoću upravljača imenom. Oni se automatski preračunavaju kao ćelije tabele i kontrolne osobine.
Imenovane formule se definišu, jedna za drugom u svojstvu Formulas, a svaka se završava tačkom i zarezom. Tip formule se zaključuje iz tipova elemenata unutar formule i kako se koriste zajedno. Na primer, ove imenovane formule preuzimaju korisne informacije o trenutnom korisniku iz usluge 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' );
Ako je potrebno ažurirati formulu za UserTitle, to se može lako uraditi na ovoj jednoj lokaciji. Ako UserPhone nije potreban u aplikaciji, onda ovi pozivi u tabeli Korisnici u usluzi Dataverse nisu upućeni. Ne postoji kazna za uključivanje definicije formule koja se ne koristi.
Neka ograničenja imenovanih formula:
- Oni ne mogu da koriste funkcije ponašanja ili da na neki drugi način izazovu bočne efekte unutar aplikacije.
- Ne mogu da kreiraju kružnu referencu. Imati a = b; i b = a; u istoj aplikaciji nije dozvoljeno.
Korisnički definisane funkcije
Power Fx uključuje dugu listu ugrađenih funkcija, kao što su Ako, Tekst i Set. Korisnički definisane funkcije omogućavaju vam da napišete sopstvene funkcije koje uzimaju parametre i vraćaju vrednost, baš kao što to rade ugrađene funkcije. Korisnički definisane funkcije možete zamisliti kao proširenje imenovanih formula koje dodaju parametre i podržavaju formule ponašanja.
Na primer, možete definisati imenovanu formulu koja vraća beletristiku iz biblioteke:
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 parametara, morali bismo da definišemo odvojene imenovane formule za svaki žanr. Ali umesto toga, hajde da parametriziramo našu imenovanu formulu:
LibraryType := Type( [ { Title: Text, Author: Text, Genre: Text } ] );
LibraryGenre( SelectedGenre: Text ): LibraryType = Filter( Library, Genre = SelectedGenre );
Sada možemo pozvati LibraryGenre( "Fiction" ), LibraryGenre( "Reference" ), ili filtrirati na drugim žanrovima sa jednom korisnički definisanom funkcijom.
Sintaksa je:
FunctionName( [ ParameterName1: ParameterTipe1 [, ParameterName2: ParameterTipe2 ... ] ]): ReturnTipe = Formula;
- FunctionName – Obavezno. Ime funkcije definisane od strane korisnika.
- ParameterNames – Opciono. Ime parametra funkcije.
- ParameterTypes – Opciono. Ime tipa, bilo ugrađenog imena tipa podataka, imena izvora podataka ili tipa definisanog funkcijom Tipe .
- ReturnType – Obavezno. Tip povratne vrednosti iz funkcije.
- Formula - Obavezno. Formula koja izračunava vrednost funkcije na osnovu parametara.
Svaki parametar i izlaz iz funkcije definisanja korisnika moraju biti otkucani. U ovom primeru, SelectedGenre: Text definiše prvi parametar za našu funkciju da bude tipa Tekst i predstavlja ime parametra SelectedGenre koji se koristi u telu za operaciju Filter. Pogledajte Tipovi podataka za podržana imena tipova. Funkcija Type se koristi za kreiranje agregatnog tipa za našu biblioteku, tako da možemo vratiti tabelu knjiga iz naše funkcije.
Definisali LibraryType smo kao množinu tabele zapisa tipa. Ako želimo da prenesemo jednu knjigu funkciji, možemo izvući tip zapisa za ovu tabelu pomoću funkcije RecordOf:
BookType := Type( RecordOf( LibraryType ) );
IsGenre( Book: BookType, SelectedGenre: Text ): Boolean = (Book.Genre = SelectedGenre);
Usklađivanje zapisa za parametre funkcije je čvršće nego što je u drugim delovima Power Fx. Polja vrednosti zapisa moraju biti odgovarajući podskup definicije tipa i ne mogu uključivati dodatna polja. Na primer, IsGenre( { Title: "My Book", Published: 2001 }, "Fiction" ) će dovesti do greške.
Napomena, rekurzija još nije podržana od strane korisnički definisanih funkcija.
Ponašanje korisnički definisanih funkcija
Imenovane formule i većina korisnički definisanih funkcija ne podržavaju funkcije ponašanja sa neželjenim efektima, kao što su Set ili Notifi. Generalno, najbolje je da izbegnete ažuriranje stanja ako možete, umesto da se oslanjate na funkcionalne programske obrasce i omogućavate Power Fx automatsko preračunavanje formula po potrebi. Ali, postoje slučajevi u kojima je to neizbežno. Da biste uključili logiku ponašanja u korisnički definisanu funkciju, Umotavanje tela u kovrčave zagrade:
Spend( Amount: Number ) : Void = {
If( Amount > Savings,
Error( $"{Amount} is more than available savings" ),
Set( Savings, Savings - Amount );
Set( Spent, Spent + Amount)
);
}
Sada možemo da pozovemo Spend( 12 ) da proverimo da li imamo 12 u našoj štednji, i ako je tako, da ga zadužimo za 12 i dodamo 12 u promenljivu Spent Tip povratka ove funkcije je Void jer ne vraća vrednost.
Sintaksa funkcije ponašanja koju je korisnik definisao je:
FunctionName( [ ParameterName1: ParameterTipe1 [, ParameterName2:ParameterTipe2 ... ] ] : ReturnTipe = { Formula1[ ; Formula2 ... ] };
- FunctionName – Obavezno. Ime funkcije definisane od strane korisnika.
- ParameterNames – Opciono. Ime parametra funkcije.
- ParameterTypes – Opciono. Ime tipa, bilo ugrađenog imena tipa podataka, imena izvora podataka ili tipa definisanog funkcijom Tipe.
- ReturnType – Obavezno. Tip povratne vrednosti iz funkcije. Koristite Void ako funkcija ne vraća vrednost.
- Formule – Obavezno. Formula koja izračunava vrednost funkcije na osnovu parametara.
Kao i kod svih Power Fx formula, izvršenje se ne završava kada se naiđe na grešku. Nakon što je pozvana funkcija Greška , funkcija Ako sprečava promene u štednji i potrošenom da se desi. Funkcija IfError se takođe može koristiti da spreči dalje izvršenje nakon greške. Iako vraća Void, formula i dalje može da vrati grešku ako postoji problem.
Korisnički definisani tipovi
Važno
- Korisnički definisani tipovi su eksperimentalna karakteristika.
- Eksperimentalne karakteristike nisu namenjene za upotrebu u proizvodnji i možda nisu potpune. Ove funkcije su dostupne pre zvaničnog izdanja, tako da možete dobiti rani pristup i pružiti povratne informacije. Još informacija: Objašnjenje eksperimentalnih, preliminarnih i povučenih funkcija aplikacijama sa podlogom
- Ponašanje koje ovaj članak opisuje je dostupno samo kada je uključena eksperimentalna funkcija Korisnički definisani tipovi u Podešavanjima > Predstojeće funkcije > Eksperimentalno (podrazumevano je isključena).
- Vaše povratne informacije su nam dragocene. Javite nam šta mislite na forumu Power Apps zajednice eksperimentalnih funkcija.
Imenovane formule mogu se koristiti sa funkcijom Type za kreiranje korisnički definisanih tipova. Koristite := umesto da = definišete korisnički definisani tip, na primer Book := Type( { Title: Text, Author: Text } ). Pogledajte funkciju Type za više informacija i primera.
Svojstvo „OnError“
Koristite OnError da preduzmete akciju kada se greška dogodi bilo gde u aplikaciji. Pruža globalnu priliku da presretne baner greške pre nego što se prikaže krajnjem korisniku. Takođe se može koristiti za evidentiranje greške pomoću funkcije Trace ili za pisanje u bazu podataka ili veb-uslugu.
U aplikacijama Canvas, rezultat svake evaluacije formule se proverava za grešku. Ako se naiđe na grešku, OnError se procenjuje sa istim FirstError i AllErrors promenljivim opsega koje bi se koristile ako je cela formula bila umotana u funkciju IfError.
Ako je OnError prazan, podrazumevani natpis greške prikazuje FirstError.Message greške. Definisanje formule OnError poništava ovo ponašanje, tako da trač može da rukuje izveštavanjem o greškama po potrebi. Možete da zahtevate podrazumevano ponašanje u funkciji OnError tako što ćete ponovo prikazati grešku sa funkcijom Error. Koristite pristup preobražaja ako želite da filtrirate ili drugačije rukujete nekim greškama, ali dozvolite drugima da prolaze.
OnError ne može da zameni grešku u proračunima na način na koji IfError može. Ako se pozove OnError , greška se već dogodila i već je obrađena kroz proračune formule kao što je IfError; OnError kontroliše samo izveštavanje o greškama.
OnError formule se procenjuju u međuvremenu i moguće je da se njihova procena preklapa sa obradom drugih grešaka. Na primer, ako postavite globalnu promenljivu na vrhu funkcije OnError i kasnije je pročitate u istoj formuli, vrednost se možda promenila. Koristite funkciju With da biste kreirali imenovanu vrednost koja je lokalna za formulu.
Iako onError pojedinačno obrađuje svaku grešku, podrazumevani reklamni natpis greške se možda neće pojaviti za svaku grešku pojedinačno. Da bi se izbeglo previše banera grešaka prikazanih u isto vreme, isti baner greške neće biti ponovo prikazan ako je nedavno prikazan.
Primer
Razmotrite kontrolu Label i kontrolu Slider koje su povezane formulom:
Label1.Text = 1/Slider1.Value
Podrazumevana vrednost klizača je 50. Ako se klizač pomeri na 0, Label1 neće pokazati vrednost, a prikazuje se i baner sa greškom:
Pogledajmo detaljno šta se desilo:
- Korisnik je pomerio klizač nalevo, a svojstvo Slide1.Value je promenjeno u 0.
- LabelKSNUMKS.Tekt je automatski preispitan. Došlo je do deljenja nulom, što je izazvalo grešku.
- Ne postoji IfError u ovoj formuli. Izračunavanje formule vraća grešku deljenja nulom.
- Label1.Text ne može da prikaže ništa za ovu grešku, tako da prikazuje prazno stanje.
- OnError se poziva. Pošto nema rukovaoca, prikazuje se standardni baner greške sa informacijama o grešci.
Ako je potrebno, možete i da promenite formulu u Label1.Text = IfError( 1/Slider1.Value, 0 ). Korišćenje programa IfError znači da ne postoji reklamni natpis greške ili greška. Ne možete da promenite vrednost greške iz funkcije OnError zato što se greška već dogodila – OnError kontroliše samo način na koji se ona prijavlja.
Ako dodate rukovalac onErrorom , on ne utiče na korake pre 5. koraka, ali menja način na koji se greška prijavlja:
Trace( $"Error {FirstError.Message} in {FirstError.Source}" )
Pomoću ovog Rukovaoca onErrorom , korisnik aplikacije ne vidi grešku. Međutim, greška se dodaje praćenju monitora, uključujući izvor informacija o grešci iz funkcije FirstError:
Ako želite da prikažete i podrazumevani reklamni natpis greške zajedno sa praćenjem, ponovo povratite grešku sa funkcijom Error posle poziva Praćenje, kao da nije bilo praćenja:
Trace( $"Error {FirstError.Message} in {FirstError.Source}" );
Error( FirstError )
Svojstvo OnStart
Belešku
Korišćenje svojstva OnStart može dovesti do problema sa performansama prilikom učitavanja aplikacije. Kreiramo alternative iz dva najvažnija razloga za korišćenje ovog svojstva – keširanje podataka i podešavanje globalnih promenljivih. Već postoji alternativa za definisanje prvog ekrana za prikazivanje pomoću opcije Navigacija. U zavisnosti od konteksta, ovo svojstvo se podrazumevano može onemogućiti. Ako je ne vidite, a treba da je koristite, proverite da li u postavkama aplikacije postoji prekidač da biste je omogućili. Takođe možete da koristite svojstvo OnVisible ekrana. Kada je pravilo za neblokiranje onStart omogućeno, ono podrazumevano omogućava da se funkcija OnStart pokrene u isto vreme kad i druga pravila aplikacije. Dakle, ako se promenljive na koje se upućuje u drugim pravilima aplikacije pokrenute u okviru funkcije OnStart , one možda još uvek nisu potpuno pokrenute. Takođe, ekran može da prikaže i postane interaktivan pre nego što funkcije Screen.OnVisible ili App.OnStart završe sa radom, naročito ako im je potrebno mnogo vremena da se završe.
Svojstvo OnStart se pokreće kada korisnik pokrene aplikaciju. Ovo svojstvo se često koristi za:
- Preuzmite i keširajte podatke u kolekcijama pomoću funkcije "Prikupljanje ".
- Podesite globalne promenljive koristeći funkciju Set.
Ova formula se pokreće pre nego što se pojavi prvi ekran. Ne učitava se nijedan ekran, tako da ne možete postaviti kontekstne promenljive funkcijom UpdateContext. Ali možete da dodate promenljive konteksta pomoću funkcije Navigate .
Kada promenite svojstvo OnStart, testirajte ga tako što ćete postaviti pokazivač miša iznad objekta Aplikacije u oknu prikaz stabla, izabrati tri tačke (...), a zatim izabrati stavku Pokreni onStart. Za razliku od prvog učitavanja aplikacije, postojeće kolekcije i promenljive su već postavljene. Da biste započeli sa praznim kolekcijama, koristite funkciju ClearCollect umesto funkcije Collect.
Belešku
- Korišćenje funkcije Navigate u svojstvu OnStart je povučeno. Postojeće aplikacije i dalje rade. Na ograničeno vreme možete da je omogućite u postavkama aplikacije (u okviru Povučeno). Međutim, korišćenje navigacije na ovaj način može dovesti do kašnjenja u učitavanju aplikacije zato što primora sistem da završi sa pokretanjem na početnom ekranu pre prikazivanja prvog ekrana. Umesto toga koristite svojstvo StartScreen da biste podesili prvi prikazani ekran.
- Povlačenje prekidača je isključeno za aplikacije kreirane pre marta 2021. u koje ste dodali navigaciju u "OnStart" između marta 2021. i sada. Kada uređujete ove aplikacije u programu Power Apps Studio, možete da vidite grešku. Uključite penzionisani prekidač da biste izbrisali ovu grešku.
Svojstvo StartScreen
Svojstvo StartScreen postavlja ekran koji se prvo prikazuje. Procenjuje se jednom kada se aplikacija učita i vrati objekat na ekranu koji će se prikazati. Ovo svojstvo je podrazumevano prazno, a prvi ekran u prikazu stabla studija prikazuje se prvi.
StartScreen je svojstvo protoka podataka koje ne može da sadrži funkcije ponašanja. Dostupne su sve funkcije toka podataka. Koristite ove funkcije i signale da biste odlučili koji ekran da prvo prikažete:
- Param funkcija za čitanje parametara koji se koriste za pokretanje aplikacije.
- Korisnička funkcija za čitanje informacija o trenutnom korisniku.
- LookUp, Filter, CountRovs, Mak i druge funkcije koje čitaju iz izvora podataka.
- API poziva preko konektora. Uverite se da se poziv brzo vraća.
- Signali kao što su Connection, Compass i App.
Belešku
Globalne promenljive i kolekcije, uključujući one kreirane u programu OnStart, nisu dostupne u početnom ekranu. Imenovane formule su dostupne i često su bolja alternativa za ponovnu upotrebu formule u aplikaciji.
Ako StartScreen vraća grešku, prvi ekran u prikazu stabla studija prikazuje se kao da početni ekran nije podešen. Koristite funkciju IfError da biste uhvatili greške i preusmerili se na ekran greške.
Kada promenite StartScreen u programu Studio, testirajte ga tako što ćete zateći pokazivač miša iznad objekta Aplikacije u oknu prikaz stabla, izabrati tri tačke (...), a zatim izabrati stavku Idi na StartScreen. Ekran se menja kao da je aplikacija upravo učitana.
Primeri
Screen9
Screen9 prikazuje prvo svaki put kada se aplikacija pokrene.
If( Param( "admin-mode" ) = 1, HomeScreen, AdminScreen )
Proverava da li je param "administratorski režim" podešen i koristi ga da bi prvo odlučio da li se na ekranu HomeScreen ili AdminScreen prikazuje.
If( LookUp( Attendees, User = User().Email ).Staff, StaffPortal, HomeScreen )
Proverava da li je učesnik član osoblja i upućuje ga na ispravan ekran pri pokretanju.
IfError( If( CustomConnector.APICall() = "Forest",
ForestScreen,
OceanScreen
),
ErrorScreen
)
Usmerava aplikaciju zasnovanu na API pozivu ForestScreen ili OceanScreen. Ako API ne uspe, aplikacija koristi ErrorScreen umesto toga.
StudioVersion imovina
Koristite svojstvo StudioVersion za prikazivanje ili evidenciju verzije programa Power Apps Studio koja se koristi za objavljivanje aplikacije. Ovo svojstvo pomaže kada otklanjate greške i proveravate da li je aplikacija ponovo objavljena pomoću nedavne verzije programa Power Apps Studio.
StudioVersion daje tekst. Format ovog teksta može da se promeni tokom vremena, pa ga tretirajte kao celinu i ne izdvajate pojedinačne delove.