Bemærk
Adgang til denne side kræver godkendelse. Du kan prøve at logge på eller ændre mapper.
Adgang til denne side kræver godkendelse. Du kan prøve at ændre mapper.
Gælder for: Lærredapps
Få oplysninger om den app, der kører i øjeblikket, og styr appens funktionsmåde.
Beskrivelse
På samme måde som et kontrolelement har App-objektet egenskaber, der identificerer, hvilket skærmbillede der vises, og beder dig om at gemme ændringerne, så du ikke mister dem. Alle apps har et objekt af typen App.
Skriv formler for nogle egenskaber for App-objektet . Vælg objektet App øverst i ruden Trævisning på samme måde som andre kontrolelementer eller skærmbilleder. Hvis du vil have vist eller redigere en af objektets egenskaber, skal du vælge det på rullelisten til venstre for formellinjen.
I denne artikel beskrives følgende egenskaber for App-objekter :
- ActiveScreen – den skærm, der vises i øjeblikket.
- BackEnabled – hvordan appen reagerer på enhedens tilbagebevægelse.
- ConfirmExit og ConfirmExitMessage – advar brugeren, før du lukker appen.
- Forbindelsesstreng – konfigurer Application Insights-logføring.
- Formler – definer navngivne formler, brugerdefinerede funktioner og brugerdefinerede typer.
- OnError – håndter fejl globalt.
- OnStart – kør logik, når appen starter.
- StartScreen – angiv den skærm, der vises først, når appen indlæses.
- StudioVersion – returnerer den Power Apps Studio-version, der har udgivet appen.
Egenskaben ActiveScreen
Egenskaben ActiveScreen identificerer det skærmbillede, der vises i øjeblikket.
Denne egenskab returnerer et skærmobjekt. Brug den til at referere til egenskaberne for det aktuelle skærmbillede, f.eks. navnet med formlen App.ActiveScreen.Name. Du kan også sammenligne denne egenskab med et andet skærmobjekt, f.eks. med sammenligningsformlen App.ActiveScreen = Screen2 for at kontrollere, om Screen2 er den aktuelle skærm.
Brug funktionen Back eller Navigate til at skifte den skærm, der vises.
BackEnabled egenskab
Egenskaben BackEnabled ændrer, hvordan appen reagerer på enhedens tilbagebevægelse (stryg eller brug knappen Tilbage for hardware på Android-enheder, eller stryg fra venstre på iOS-enheder), når den kører i Power Apps Mobile. Når indstillingen er aktiveret, går enheden tilbage til den skærm, der senest blev vist, hvilket svarer til formlen Tilbage . Når funktionen er deaktiveret, fører enheden tilbage brugeren til applisten.
Egenskaber for ConfirmExit
Ingen ønsker at miste ændringer, der ikke er gemt. Brug egenskaberne ConfirmExit og ConfirmExitMessage til at advare brugeren, før du lukker din app.
Notat
- ConfirmExit fungerer ikke i apps, der er integreret i f.eks. Power BI og SharePoint.
- ConfirmExit understøttes ikke på brugerdefinerede sider.
- Nu kan disse egenskaber kun referere til kontrolelementer på det første skærmbillede, hvis prøveversionsfunktionen Forsinket indlæsning er aktiveret (som det som standard er for nye apps). Hvis du refererer til andre skærme, viser Power Apps Studio ikke en fejl, men den publicerede app åbnes ikke i Power Apps Mobile eller i en browser. Microsoft arbejder på at ophæve denne begrænsning. I mellemtiden skal du slå Forsinket indlæsning fra i Indstillinger>Kommende funktioner (under Prøveversion).
ConfirmExit
ConfirmExit er en boolesk egenskab, der åbner en bekræftelsesdialogboks, når sand, før appen lukkes. Denne egenskab er som standard false, og der vises ingen dialogboks.
Når brugeren muligvis har ændringer, der ikke er gemt i appen, skal du bruge denne egenskab til at få vist en bekræftelsesdialogboks, før du afslutter appen. Brug en formel, der kontrollerer variabler og egenskaber for kontrolelementer (f.eks. egenskaben Unsaved for kontrolelementet Rediger formular ).
Bekræftelsesdialogboksen vises i enhver situation, hvor data kan gå tabt, f.eks.:
- Kør funktionen Exit .
- Hvis appen kører i en browser:
- Luk browseren eller den browserfane, hvor appen kører.
- Vælg knappen Tilbage i browseren.
- Kør funktionen Launch med LaunchTarget of Self.
- Hvis appen kører i Power Apps Mobile (iOS eller Android):
- Stryg for at skifte til en anden app i Power Apps Mobile.
- Vælg knappen Tilbage på en Android-enhed.
- Kør funktionen Launch for at starte en anden lærredsapp.
Det nøjagtige udseende af bekræftelsesdialogboksen kan variere på tværs af enheder og versioner af Power Apps.
Bekræftelsesdialogboksen vises ikke i Power Apps Studio.
ConfirmExitMessage
Som standard vises der en generisk meddelelse i bekræftelsesdialogboksen, f.eks. "Du har måske ændringer, der ikke er gemt" på brugerens sprog.
Brug ConfirmExitMessage til at oprette en brugerdefineret meddelelse i bekræftelsesdialogboksen. Hvis denne egenskab er tom, bruges standardværdien. Brugerdefinerede meddelelser afkortes efter behov, så de passer i bekræftelsesdialogboksen, så hold meddelelsen på nogle få linjer.
I en browser kan bekræftelsesdialogboksen vise en generisk meddelelse fra browseren.
Eksempel
Angiv egenskaben ConfirmExit for objektet App til dette udtryk:
AccountForm.Unsaved Or ContactForm.UnsavedDialogboksen vises, hvis brugeren ændrer data i en af formularerne og derefter forsøger at lukke appen uden at gemme disse ændringer.
Angiv egenskaben ConfirmExitMessage for objektet App til denne formel:
If( AccountForm.Unsaved, "Accounts form has unsaved changes.", "Contacts form has unsaved changes." )Dialogboksen viser en formularspecifik meddelelse, når brugeren ændrer data i en af formularerne og derefter forsøger at lukke appen uden at gemme disse ændringer.
Egenskab for forbindelsesstreng
Brug egenskaben Connection string til at eksportere systemoprettede programlogge til Application Insights.
Sådan angiver du forbindelsesstreng:
- Åbn din app til redigering i Power Apps Studio.
- Vælg App-objektet i trævisningen på venstre navigationspanel.
- Angiv forbindelsesstrengen i ruden Egenskaber.
Hvis der ikke sendes data til Application Insights, skal du kontakte din Power Platform-administrator og kontrollere, om Application Insights er deaktiveret på lejerniveau.
Egenskaben Formler
Brug egenskaben Formulas til at definere logik, der kan genbruges på tværs af din app. Egenskaben Formulas understøtter tre konstruktioner:
- Navngivne formler – tildel et navn til en formel, og genbrug værdien i hele appen.
- Brugerdefinerede funktioner – navngivne formler, der tager parametre og returnerer en værdi.
- Brugerdefinerede typer – navngivne typer, du kan genbruge i formler og funktionssignaturer.
Navngivne formler
Brug navngivne formler i egenskaben Formler til at definere en formel, som du kan genbruge i hele appen.
I Power Apps, bestemmer formler værdien af egenskaber for kontrolelementer. Hvis du f.eks. vil angive baggrundsfarven ensartet på tværs af en app, skal du angive egenskaben Fill for hvert kontrolelement til en fælles formel:
Label1.Fill: ColorValue( Param( "BackgroundColor" ) )
Label2.Fill: ColorValue( Param( "BackgroundColor" ) )
Label3.Fill: ColorValue( Param( "BackgroundColor" ) )
Med så mange steder, hvor denne formel vises, bliver det kedeligt, og fejl er tilbøjelig til at opdatere dem alle, hvis der er behov for en ændring. Opret i stedet en global variabel i OnStart for at angive farven én gang, og genbrug derefter værdien i hele appen:
App.OnStart: Set( BGColor, ColorValue( Param( "BackgroundColor" ) ) )
Label1.Fill: BGColor
Label2.Fill: BGColor
Label3.Fill: BGColor
Selvom denne metode er bedre, afhænger den også af, at OnStart køres, før værdien for BGColor er fastlagt. BGColor kan også ændres et sted i appen, som opretteren ikke er klar over – en ændring, der foretages af en anden, og som kan være svær at spore.
Navngivne formler tilbyder et alternativ. På samme måde som du ofte skriver control-property = expression, kan du i stedet skrive name = expression og derefter genbruge navnet i hele appen til at erstatte udtryk. Definer disse formler i egenskaben Formulas :
App.Formulas: BGColor = ColorValue( Param( "BackgroundColor" ) );
Label1.Fill: BGColor
Label2.Fill: BGColor
Label3.Fill: BGColor
Fordelene ved at bruge navngivne formler omfatter:
- Formlens værdi er altid tilgængelig. Der er ingen tidsafhængighed, ingen OnStart, der skal køre først, før værdien angives, ingen tid, hvor formlens værdi er forkert. Navngivne formler kan referere til hinanden i en hvilken som helst rækkefølge, så længe de ikke opretter en cirkulær reference. De kan beregnes parallelt.
- Formlens værdi er altid opdateret. Formlen kan udføre en beregning, der er afhængig af egenskaber for kontrolelementer eller databaseposter, og efterhånden som de ændres, opdateres formlens værdi automatisk. Du behøver ikke at opdatere værdien manuelt på samme måde som med en variabel. Og formler genberegnes kun efter behov.
- Formlens definition kan ikke ændres. Definitionen i Formler er fast, og værdien kan ikke ændres andre steder i appen. Med variabler kan noget kode uventet ændre en værdi, men denne svære fejlfindingssituation er ikke mulig med navngivne formler.
- Formlens beregning kan udskydes. Da værdien er uforanderlig, kan den altid beregnes efter behov, hvilket betyder, at den først skal beregnes, når der er behov for det. Formelværdier, der ikke bruges, før screen2 i en app vises, behøver ikke at blive beregnet, før screen2 er synlig. Sletning af dette arbejde kan forbedre appens indlæsningstid. Navngivne formler er beskrivende og giver systemet mulighed for at optimere, hvordan og hvornår de beregnes.
- Navngivne formler er et Excel-begreb. Power Fx bruger Excel-begreber, hvor det er muligt, da så mange brugere kender Excel godt. Navngivne formler svarer til navngivne celler og navngivne formler i Excel, der administreres med Navnestyring. De genberegnes automatisk som celler på et regneark og egenskaberne for kontrolelementer.
Definer navngivne formler én efter én i egenskaben Formulas , der hver især slutter med et semikolon. Typen af formlen udledes af elementtyperne i formlen, og hvordan de bruges sammen. Disse navngivne formler kan f.eks. hente nyttige oplysninger om den aktuelle bruger fra 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' );
Hvis formlen for UserTitle skal opdateres, kan du nemt opdatere den på denne ene placering. Hvis der ikke er brug for UserPhone i appen, foretages disse kald til tabellen Brugere i Dataverse ikke. Der sker ikke noget, hvis der inkluderes en formeldefinition, der ikke bruges.
Visse begrænsninger for navngivne formler:
- De kan ikke bruge adfærdsmåder eller på anden måde medføre sideeffekter i appen.
- De kan ikke oprette en cirkulær reference. Det er ikke tilladt at have a = b; og b = a; i den samme app.
Brugerdefinerede funktioner
Power Fx indeholder en lang liste med indbyggede funktioner, f.eks. If, Text og Set. Ved hjælp af brugerdefinerede funktioner kan du skrive dine egne funktioner, der tager parametre og returnerer en værdi, på samme måde som de indbyggede funktioner. Tænk på brugerdefinerede funktioner som en udvidelse af navngivne formler, der tilføjer parametre og understøtter formler for funktionsmåde.
Du kan f.eks. definere en navngivet formel, der returnerer skønlitterære bøger fra et bibliotek:
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" );
Uden parametre skal du definere separate navngivne formler for hver genre. Men i stedet skal du parameterisere din navngivne formel:
LibraryType := Type( [ { Title: Text, Author: Text, Genre: Text } ] );
LibraryGenre( SelectedGenre: Text ): LibraryType = Filter( Library, Genre = SelectedGenre );
Nu kan du kalde LibraryGenre( "Fiction" ), LibraryGenre( "Reference" )eller filtrere efter andre genrer ved hjælp af en enkelt brugerdefineret funktion.
Syntaksen er:
FunctionName( [ ParameterName1: ParameterType1 [ , ParameterName2: ParameterType2 ... ] ] ) : ReturnType = Formula;
- FunctionName - påkrævet. Navnet på den brugerdefinerede funktion.
- Parameternavne – Valgfrit. Navnet på en funktionsparameter.
- ParameterType(s) – valgfri. Navnet på en type, enten et indbygget datatypenavn, et datakildenavn eller en type, der er defineret ved hjælp af funktionen Type .
- ReturnType – påkrævet. Typen af returværdi fra funktionen.
- Formel – påkrævet. Den formel, der beregner funktionens værdi baseret på parametrene.
Du skal skrive hver parameter og outputtet fra den brugerdefinerede funktion. I dette eksempel definerer den første parameter til den funktion, der skal være af typen Text, SelectedGenre: Text og SelectedGenre er navnet på den parameter, der bruges i brødteksten til filterhandlingen. Se Datatyper for de understøttede typenavne.
Funktionen Type bruges til at oprette en aggregeringstype for biblioteket, så du kan returnere en tabel med bøger fra funktionen .
Du definerer LibraryType som en flertalstabel med posttypen. Hvis du vil overføre en enkelt bog til en funktion, kan du udtrække posttypen for denne tabel ved hjælp af funktionen RecordOf:
BookType := Type( RecordOf( LibraryType ) );
IsGenre( Book: BookType, SelectedGenre: Text ): Boolean = (Book.Genre = SelectedGenre);
Postmatchningen for funktionsparametre er strammere end i andre dele af Power Fx. Felterne i en postværdi skal være et korrekt undersæt af typedefinitionen og må ikke indeholde ekstra felter. Resulterer f.eks IsGenre( { Title: "My Book", Published: 2001 }, "Fiction" ) . i en fejl.
Rekursion understøttes endnu ikke af brugerdefinerede funktioner.
Brugerdefinerede funktioner for adfærd
Navngivne formler og de fleste brugerdefinerede funktioner understøtter ikke funktionsmåder med sideeffekter, f.eks. Angiv eller Giv besked. Generelt skal du undgå at opdatere tilstanden, hvis du kan. I stedet kan du stole på funktionelle programmeringsmønstre og tillade Power Fx at genberegne formler efter behov automatisk. Men der er tilfælde, hvor det er uundgåeligt. Hvis du vil inkludere adfærdslogik i en brugerdefineret funktion, skal du pakke kroppen ind i krøllede parenteser:
Spend( Amount: Number ) : Void = {
If( Amount > Savings,
Error( $"{Amount} is more than available savings" ),
Set( Savings, Savings - Amount );
Set( Spent, Spent + Amount)
);
}
Nu kan du ringe Spend( 12 ) for at kontrollere, om du har 12 i din opsparing, og hvis det er tilfældet, debitere den med 12 og føje 12 til variablen Brugt. Returtypen for denne funktion er void, da den ikke returnerer en værdi.
Syntaksen for en brugerdefineret funktion for adfærd er:
FunctionName( [ ParameterName1: ParameterType1 [ , ParameterName2: ParameterType2 ... ] ] ] ) : ReturnType = { Formula1 [ ; Formel2 ... ] };
- FunctionName - påkrævet. Navnet på den brugerdefinerede funktion.
- Parameternavne – Valgfrit. Navnet på en funktionsparameter.
- ParameterType(s) – valgfri. Navnet på en type, enten et indbygget datatypenavn, et datakildenavn eller en type, der er defineret med Type-funktion.
- ReturnType – påkrævet. Typen af returværdi fra funktionen. Brug Void, hvis funktionen ikke returnerer en værdi.
- Formler – påkrævet. Den formel, der beregner funktionens værdi baseret på parametrene.
Som med alle Power Fx-formler slutter udførelsen ikke, når der opstår en fejl. Når funktionen Error kaldes, forhindrer funktionen If ændringerne i Besparelser og Brugt i at ske. Funktionen IfError kan også bruges til at forhindre yderligere udførelse efter en fejl. Selvom den returnerer Void, kan formlen stadig returnere en fejl, hvis der er et problem.
Brugerdefinerede typer
Brug navngivne formler med funktionen Type til at oprette brugerdefinerede typer. Brug := i stedet = til at definere en brugerdefineret type, f.eks. Book := Type( { Title: Text, Author: Text } ). Se Type-funktion for at få flere oplysninger og eksempler.
Egenskaben OnError
Brug OnError til at handle, når der opstår en fejl et vilkårligt sted i appen. Det giver en global mulighed for at opfange et fejlbanner, før det vises for slutbrugeren. Du kan også bruge den til at logføre en fejl ved hjælp af funktionen Trace eller skrive til en database eller webtjeneste.
I læredapps tjekkes resultatet af alle formelevalueringer for en fejl. Hvis der opstår en fejl, evalueres OnError med de samme områdevariabler FirstError og AllErrors, som appen bruger, hvis hele formlen er ombrudt i en IfError-funktion.
Hvis OnError er tom, viser et standardfejlbanner FirstError.Message for fejlen. Hvis du definerer en OnError-formel , tilsidesættes denne funktionsmåde, så opretteren kan håndtere fejlrapportering efter behov. Du kan anmode om standardfunktionsmåden i OnError ved at omstyrte fejlen ved hjælp af funktionen Error. Brug tilgangen til omfordeling, hvis du vil filtrere ud eller håndtere nogle fejl anderledes, men lade andre passere igennem.
OnError kan ikke erstatte en fejl i beregninger på samme måde, som IfError kan. Hvis OnError aktiveres, er fejlen allerede opstået og behandles allerede via formelberegninger, f.eks. IfError. OnError styrer kun fejlrapportering.
OnError-formler evalueres samtidigt, og det er muligt, at deres evaluering overlapper behandlingen af andre fejl. Hvis du f.eks. angiver en global variabel øverst i en OnError og læser den senere i den samme formel, kan værdien være ændret. Brug funktionen With til at oprette en navngivet værdi, der er lokal for formlen.
Selvom OnError behandler hver fejl individuelt, vises standardfejlbanneret muligvis ikke for hver fejl enkeltvist. Hvis du vil undgå at få vist for mange fejlbannere samtidigt, vises det samme fejlbanner ikke igen, hvis det blev vist for nylig.
Eksempel
Se på et Label-kontrolelement og Slider-kontrolelement, der er bundet sammen gennem formlen:
Label1.Text = 1/Slider1.Value
Slider har standarden 50. Hvis du flytter skyderen til 0, vises der ingen værdi i Label1 , og der vises et fejlbanner:
Lad os se nærmere på, hvad der sker:
- Du flytter skyderen til venstre, og egenskaben Slider1.Value ændres til 0.
- Label1.Text evaluerer automatisk igen. Division med nul opstår, hvilket genererer en fejl.
- Der findes ingen IfError i denne formel. Division med nul-fejlen returneres af formelevalueringen.
- Label1.Text kan ikke vise noget for denne fejl, så der vises en tom tilstand.
- OnError er kaldt. Da der ikke findes nogen handler, vises standardfejlbanneret med oplysninger om fejlen.
Hvis det er nødvendigt, kan du også ændre formlen til Label1.Text = IfError( 1/Slider1.Value, 0 ). Brug af IfError betyder, at der ikke er nogen fejl eller fejlbanner. Du kan ikke ændre værdien af en fejl fra OnError , fordi fejlen allerede er opstået – OnError styrer kun, hvordan den rapporteres.
Hvis du tilføjer en OnError-handler , påvirker det ikke trinnene før trin 5, men den ændrer den måde, fejlen rapporteres på:
Trace( $"Error {FirstError.Message} in {FirstError.Source}" )
Med denne OnError-handler kan appbrugeren ikke se nogen fejl. Men fejlen føjes til skærmens sporing, herunder kilden til fejloplysningerne fra FirstError:
Hvis du også vil have vist standardfejlbanneren sammen med sporingen, skal du gentrække fejlen ved hjælp af funktionen Error efter kaldet Trace , som om sporingen ikke var der:
Trace( $"Error {FirstError.Message} in {FirstError.Source}" );
Error( FirstError )
Egenskaben OnStart
Notat
Brug af egenskaben OnStart kan medføre problemer med ydeevnen, når du indlæser en app. Overvej disse alternativer, før du føjer logik til OnStart:
- Hvis du vil cachelagre data eller konfigurere globale variabler, skal du bruge en navngivet formel i egenskaben Formulas , hvor det er muligt.
- Hvis du vil angive, at det første skærmbillede skal vises, skal du bruge egenskaben StartScreen i stedet for Navigate.
- Hvis du vil køre logik, når en bestemt skærm vises, skal du bruge egenskaben OnVisible på skærmen.
Afhængigt af din kontekst er egenskaben OnStart muligvis deaktiveret som standard. Hvis du ikke kan se den og har brug for at bruge den, skal du kontrollere appens avancerede indstillinger for en switch for at aktivere den.
Når reglen om ikke-blokering af OnStart er aktiveret (standarden), kører OnStart samtidig med andre appregler. Som følge heraf:
- Variabler, der initialiseres i OnStart , er muligvis ikke helt initialiseret, når andre appregler læser dem.
- En skærm kan gengives og blive interaktiv, før App.OnStart eller Screen.OnVisible er færdig med at køre, især hvis disse funktioner tager lang tid.
Egenskaben OnStart køres, når brugeren starter appen. Brug denne egenskab til at:
- Hent og cachelagre data i samlinger ved hjælp af funktionen Collect .
- Konfigurere globale variabler ved hjælp af funktionen Set.
Denne formel kører, før det første skærmbillede vises. Der indlæses intet skærmbillede, så du kan ikke angive kontekstvariabler med funktionen UpdateContext. Men du kan overføre kontekstvariabler med funktionen Navigate .
Når du har ændret egenskaben OnStart , skal du teste den ved at holde markøren over appobjektet i ruden Trævisning , vælge ellipsen (...)og derefter vælge Kør vedStart. I modsætning til, når appen indlæses for første gang, er eksisterende samlinger og variabler allerede angivet. Hvis du vil starte med tomme samlinger, skal du bruge funktionen ClearCollect i stedet for funktionen Collect.
Notat
- Brug af funktionen Navigate i egenskaben OnStart udgår. Eksisterende apps fungerer stadig. I en begrænset periode kan du aktivere den i appindstillingerne (under Pensioneret). Men hvis du bruger Navigate på denne måde, kan det medføre forsinkelser i appens indlæsning, fordi det tvinger systemet til at køre OnStart , før det første skærmbillede vises. Brug i stedet egenskaben StartScreen til at angive det første skærmbillede, der vises.
- Den udgåede switch er slået fra for apps, der er oprettet før marts 2021, hvor du har føjet Navigate til OnStart mellem marts 2021 og nu. Når du redigerer disse apps i Power Apps Studio, får du vist en fejl. Aktiver den udfasede switch for at rydde denne fejl.
Egenskaben StartScreen
Egenskaben StartScreen angiver, hvilken skærm der vises først. Power Apps evaluerer denne egenskab én gang, når appen indlæser og returnerer det skærmobjekt, der skal vises. Denne egenskab er som standard tom, og det første skærmbillede i Studio Tree-visningen vises først.
StartScreen er en egenskab for dataflow, der ikke kan indeholde funktionsmådefunktioner. Alle dataflowfunktioner er tilgængelige. Brug disse funktioner og signaler til at beslutte, hvilken skærm der skal vises først:
- Param fungerer til at læse de parametre, der bruges til at starte appen.
- User fungerer til at læse oplysninger om den aktuelle bruger.
- LookUp, Filter, CountRows, Max og andre funktioner, der læser fra en datakilde.
- API-kald via en connector. Sørg for, at opkaldet vender tilbage hurtigt.
- Signaler, som f.eks. Forbindelse, Compass og App.
Notat
Globale variabler og samlinger, herunder dem, der er oprettet i OnStart, er ikke tilgængelige i StartScreen. Navngivne formler er tilgængelige og er ofte et bedre alternativ til genbrug af formler i hele appen.
Hvis StartScreen returnerer en fejl, vises det første skærmbillede i Studio Tree-visningen, som om StartScreen ikke er angivet. Brug funktionen IfError til at registrere eventuelle fejl og omdirigere til en fejlskærm.
Når du har ændret StartScreen i Studio, kan du teste den ved at holde markøren over App-objektet i ruden Trævisning , vælge ellipsen (...)og derefter vælge Naviger til StartSkærm. Skærmen ændres, som om appen lige er indlæst.
Eksempler
Screen9
Screen9 vises først, når appen starter.
If( Param( "admin-mode" ) = 1, HomeScreen, AdminScreen )
Kontrollerer, om Param "admin-mode" er angivet og bruger den til at bestemme, om HomeScreen eller AdminScreen vises først.
If( LookUp( Attendees, User = User().Email ).Staff, StaffPortal, HomeScreen )
Kontrollerer, om en deltager er medarbejder, og sender vedkommende til den korrekte skærm ved start.
IfError( If( CustomConnector.APICall() = "Forest",
ForestScreen,
OceanScreen
),
ErrorScreen
)
Dirigerer appen baseret på et API-opkald til enten ForestScreen eller OceanScreen. Hvis API'en mislykkes, bruger ErrorScreen appen i stedet.
Egenskab for StudioVersion
Brug egenskaben StudioVersion til at få vist eller logføre den version af Power Apps Studio, der bruges til at publicere en app. Denne egenskab hjælper, når du foretager fejlfinding og kontrollerer, at din app publiceres igen med en nylig version af Power Apps Studio.
StudioVersion returnerer tekst. Formatet af denne tekst kan ændres over tid, så behandl den som en helhed og udtræk ikke enkelte dele.