Partekatu bidez


Aplikazioaren objektua Power Apps-en

Honi dagokio: Canvas aplikazioei

Eskuratu une honetan exekutatzen ari den aplikazioari buruzko informazioa eta kontrolatu aplikazioaren portaera.

Deskribapenak

Kontrol baten antzera, App objektuak propietateak ditu, zein pantaila erakusten den identifikatzen dutenak eta aldaketak gordetzeko eskatzen dutenak, galdu ez daitezen. Aplikazio guztiek dute aplikazioaren objektua.

Idatzi App objektuaren propietate batzuen formulak. Zuhaitz ikuspegia panelaren goialdean, hautatu aplikazioaren objektua, beste edozein kontrol edo pantailarekin egingo zenukeen moduan. Objektuaren propietateetako bat ikusteko edo editatzeko, hautatu formula-barraren ezkerreko goitibeherako zerrendan.

Zuhaitz-ikuspegiaren panelean hautatutako aplikazio-objektuaren pantaila-argazkia. Propietateen panela ikusgai.

ActiveScreen propietatea

ActiveScreen propietateak unean bistaratzen den pantaila identifikatzen du.

Propietate honek pantailako objektu bat itzultzen du. Erabili uneko pantailaren propietateak erreferentzia egiteko, hala nola App.ActiveScreen.Name formula duen izena. Propietate hau beste pantaila-objektu batekin ere alderatu dezakezu, App.ActiveScreen = Screen2 konparazio-formularekin bezala, Screen2 uneko pantaila den egiaztatzeko.

Erabili Atzera edo Nabigatu funtzioa bistaratuko den pantaila aldatzeko.

BackEnabled propietatea

BackEnabled propietateak aplikazioak gailuaren atzerako keinuari nola erantzuten dion aldatzen du (irristatu edo erabili hardware atzera botoia Android gailuetan, edo irristatu ezkerretik iOS gailuetan) Power Apps mugikorrean exekutatzen denean. Gaituta dagoenean, gailuaren atzera keinua berriki erakutsitako pantailara itzultzen da, atzera formularen antzekoa. Desgaituta dagoenean, gailuaren atzera keinuak erabiltzailea aplikazioen zerrendara eramaten du.

ConfirmExit propietateak

Inork ez du gorde gabeko aldaketarik galdu nahi. Erabili ConfirmExit eta ConfirmExitMessage propietateak erabiltzaileari ohartarazteko aplikazioa itxi aurretik.

Oharra

  • ConfirmExit ez du funtzionatzen Power BI eta SharePoint-en txertatutako aplikazioetan, adibidez.
  • Berretsi-irteera ez da onartzen orrialde pertsonalizatuetan.
  • Orain, propietate horiek kontrolak lehen pantailan soilik erreferentzia ditzakete Atzeratutako karga aurrebistaren eginbidea gaituta badago (aplikazio berrietarako lehenespenez). Beste pantaila batzuei erreferentzia egiten badiezu, Power Apps Studio-k ez du errorerik erakutsiko, baina argitaratutako aplikazioa ez da irekiko Power Apps Mobile-n edo arakatzaile batean. Muga hori kentzeko lanean ari gara. Bitartean, desaktibatu Karga atzeratuaEzarpenak>Datozen ezaugarrietan ( Aurrebista azpian).

ConfirmExit

ConfirmExit propietate boolearra da, eta egia denean, berrespen-koadro bat irekitzen du aplikazioa itxi aurretik. Berez, propietate hori faltsua gisa ezarrita dago eta ez da elkarrizketa-koadroa agertzen.

Erabiltzaileak aplikazioan gorde gabeko aldaketak izan ditzakeenean, erabili propietate hau berrespen-elkarrizketa-koadro bat erakusteko aplikaziotik irten aurretik. Erabili aldagaiak eta kontrol-propietateak egiaztatzen dituen formula (adibidez, Editatu inprimakiaren kontrolaren Gorde gabeko propietatea).

Berrespen-elkarrizketa-koadroa datuak galdu daitezkeen edozein egoeratan agertzen da, adibidez:

  • Exekutatu Irteera funtzioa.
  • Aplikazioa nabigatzaile batean exekutatzen bada:
    • Itxi aplikazioa exekutatzen den arakatzailea edo arakatzailearen fitxa.
    • Hautatu nabigatzailearen atzera botoia.
    • Exekutatu Launch funtzioa LaunchTarget batekin.
  • Aplikazioa Power Apps Mobile-n (iOS edo Android) exekutatzen bada:
    • Egin irristatu Power Apps Mobile-n beste aplikazio batera aldatzeko.
    • Hautatu atzera botoia Android gailu batean.
    • Exekutatu Abiarazi funtzioa beste oihal-aplikazio bat abiarazteko.

Berrespen-koadroaren itxura zehatza Power Apps-en gailu eta bertsioen arabera alda daiteke.

Berrespen-elkarrizketa-koadroa ez da Power Apps Studio-n bistaratzen.

ConfirmExitMessage

Berez, berresteko elkarrizketa-koadroak mezu generiko bat erakusten du, adibidez "Gorde gabeko aldaketak izan ditzakezu." erabiltzailearen hizkuntzan.

Erabili ConfirmExitMessage mezu pertsonalizatua emateko berresteko elkarrizketa-koadroan. Propietatea hutsik badago, balio lehenetsia erabiltzen da. Mezu pertsonalizatuak behar bezala laburtzen dira berrespen-elkarrizketa-koadroan sartzeko; beraz, mantendu mezua gehienez lerro batzuetan.

Arakatzaile batean, berrespen-elkarrizketa-koadroak arakatzailearen mezu generiko bat erakutsi dezake.

Oharra

App objektuak beste bi propietate ditu, OnMessage eta BackEnabled, esperimentalak direnak. Propietate hauek aplikazioaren objektutik kentzen dira azkenean. Ez erabili propietate horiek zure ekoizpen-ingurunean.

Adibidez

  1. Ezar ezazu aplikazioaren objektuaren ConfirmExit propietatea adierazpen honetan:

    AccountForm.Unsaved Or ContactForm.Unsaved
    

    Elkarrizketa-koadroak erakusten du erabiltzaileak datuak inprimaki batean aldatzen dituen eta aplikazioa ixten saiatzen den aldaketa horiek gorde gabe. Erabiltzaileak datuak aldatzen ditu bi inprimakietan, eta, ondoren, aplikazioa ixten saiatzen da aldaketa horiek gorde gabe.

    [!div clas1. Ezar ezazu aplikazioaren objektuaren ConfirmExitMessage propietatea formula honetan:

    If( AccountsForm.Unsaved,
        "Accounts form has unsaved changes.",
        "Contacts form has unsaved changes."
    )
    

    Elkarrizketa-koadroak erakusten du erabiltzaileak datuak aldatzen dituen Kontua inprimakian eta aplikazioa ixten saiatzen den aldaketa horiek gorde gabe.

    Inprimakiaren berariazko berrespen-elkarrizketa-koadroa.

Konfiguratu konexio-katea Application Insights-en

Sistemak sortutako aplikazioen egunkariak Application Insights-era esportatzeko, konfiguratu Konexio-katea zure oihal-aplikazioarentzat.

  1. Ireki zure aplikazioa editatzeko Power Apps Studion.
  2. Hautatu Aplikazioa objektua ezkerreko nabigazio-zuhaitzaren ikuspegian.
  3. Idatzi Konexio-katea propietate-panelean.

Datuak Application Insights-era bidaltzen ez badira, jarri harremanetan Power Platform-eko administratzailearekin eta egiaztatu App Insights maizter mailan desgaituta dagoen.

Formulen propietatea

Erabili izendun formulak, Formulak propietatean, zure aplikazioan berrerabil daitekeen formula bat definitzeko.

Power Appsn, formulek kontrol-propietateen balioa zehazten dute. Adibidez, aplikazio batean atzeko planoaren kolorea modu koherentean ezartzeko, bakoitzaren Bete propietatea formula komun batean ezar dezakezu:

Label1.Fill: ColorValue( Param( "BackgroundColor" ) )
Label2.Fill: ColorValue( Param( "BackgroundColor" ) )
Label3.Fill: ColorValue( Param( "BackgroundColor" ) )

Formula hau ager daitekeen hainbeste leku egonda, neketsua eta akatsa izaten da horiek guztiak eguneratzea aldaketaren bat behar izanez gero. Horren ordez, aldagai global bat sor dezakezu OnStart kolorea behin ezartzeko eta, ondoren, balioa berrerabili aplikazioan zehar:

App.OnStart: Set( BGColor, ColorValue( Param( "BackgroundColor" ) ) )
Label1.Fill: BGColor
Label2.Fill: BGColor
Label3.Fill: BGColor

Metodo hau hobea den arren, OnStart exekutatzen denaren araberakoa da BGColor balioa ezarri aurretik. Baliteke BGColor egileak ezagutzen ez dituen aplikazioaren txokoren batean manipulatzea, beste norbaitek egindako aldaketa bat, eta zaila izan daiteke horren jarraipena egitea.

Izendatutako formulek alternatiba eskaintzen dute. Normalean idazten dugu propietatearen kontrola = adierazpena, horren ordez idatz dezakegu izena = adierazpena eta gero berriro erabili izena gure aplikazioan ordezteko adierazpena. Formula hauen definizioak eginak daude Formulak propietatean:

App.Formulas: BGColor = ColorValue( Param( "BackgroundColor" ) );
Label1.Fill: BGColor
Label2.Fill: BGColor
Label3.Fill: BGColor

Formula izendatuak erabiltzearen abantailak honako hauek dira:

  • Formularen balioa beti dago eskuragarri. Ez dago denboraren menpekotasunik, ez OnStart exekuta daitekeena balioa ezarri aurretik, ez dago denborarik formularen balioa okerra da. Izendatutako formulek elkarri erreferentzia egin dezakete edozein ordenatan, betiere erreferentzia zirkularrik sortzen ez badute. Paraleloan kalkula daitezke.
  • Formularen balioa beti dago eguneratuta. Formulak kontrol-propietateen edo datu-base-erregistroen menpe dagoen kalkulu bat egin dezake, eta aldatzen diren heinean, formularen balioa automatikoki eguneratzen da. Ez duzu balioa eskuz eguneratu behar aldagai batekin egiten duzun bezala. Eta formulak behar denean bakarrik kalkulatzen dira.
  • Formularen definizioa aldaezina da. Definizioa Formulak egiazko iturri bakarra da eta balioa ezin da aldatu beste nonbait aplikazioan. Aldagaiekin, baliteke kode batzuk ustekabean balio bat aldatzea, baina arazketa zaila den egoera hori ez da posible izendun formulekin.
  • Formularen kalkulua atzeratu daiteke. Bere balioa aldaezina denez, behar denean beti kalkula daiteke, hau da, behar den arte ez da kalkulatu behar. Formularen balioak ez dira erabiltzen ahalik eta screen2 aplikazio batena bistaratzen den ez da kalkulatu behar screen2 ikusgai egon arte. Lan hau atzeratuz gero, aplikazioa kargatzeko denbora hobetu daiteke. Izendatutako formulak deklaratiboak dira eta sistemari nola eta noiz kalkulatzen diren optimizatzeko aukerak ematen dizkiote.
  • Izendatutako formulak Excel kontzeptua da. Power Fx erabiltzen da Excel kontzeptuak non posible den jende askok ezagutzen baitu Excel. Izendatutako formulak Excel-en izendatutako gelaxken eta izendun formulen baliokideak dira, izenen kudeatzailearekin kudeatzen direnak. Automatikoki berriro kalkulatzen dira kalkulu-orri bateko gelaxkak eta kontrol-propietateak egiten duten bezala.

Izendatutako formulak definituta, bat bestearen ostean Formulak propietatea, amaiera bakoitza puntu eta komarekin. Formularen mota formulako elementu motetatik eta elkarrekin nola erabiltzen diren ondorioztatzen da. Adibidez, izendun formula hauek uneko erabiltzaileari buruzko informazio erabilgarria berreskuratzen dute 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' );

Formulan UserTitle eguneratu egin behar da, egin daiteke erraz kokapen bakarrean. Bada UserPhone ez bada behar aplikazioan, dei horiek Erabiltzaileak taula Dataverse ez dira egingo. Ez dago zigorrik erabiltzen ez den formula definizioa sartzeagatik.

Izendatutako formulen muga batzuk:

  • Ezin dituzte portaera-funtzioak erabili edo bestela aplikazioan albo-ondorioak eragin.
  • Ezin dute erreferentzia zirkularrik sortu. Izan a = b; eta b = a; aplikazio berean ez da baimentzen.

Erabiltzaileak definitutako funtzioak

Power Fx integratutako funtzioen zerrenda luze bat biltzen du, hala nola If, Testua eta . a6> Ezarri. Erabiltzaileak definitutako funtzioek parametroak hartzen dituzten eta balio bat itzultzen duten zure funtzioak idazteko aukera ematen dizute, integratutako funtzioek egiten duten bezala. Erabiltzaileak definitutako funtzioak parametroak gehitzen dituen eta portaera formulak onartzen dituen formulu izendunen luzapen gisa pentsa ditzakezu.

Adibidez, liburutegi batetik fikziozko liburuak itzultzen dituen formula izendun bat defini dezakezu:

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" );

Parametrorik gabe, genero bakoitzerako izendun formula bereiziak definitu beharko genituzke. Baina, horren ordez, parametriza dezagun gure izenaren formula:

LibraryType := Type( [ { Title: Text, Author: Text, Genre: Text } ] );

LibraryGenre( SelectedGenre: Text ): LibraryType = Filter( Library, Genre = SelectedGenre );

Orain LibraryGenre( "Fiction" ), LibraryGenre( "Reference" ) dei diezaiokegu edo beste genero batzuei iragazkia erabiltzaile bakarrean definitutako funtzio batekin.

Sintaxia hau da:

FunctionName( [ ParameterName1: ParameterType1 [, ParameterName2: ParameterType2 ... ] ] ) : ReturnType = Formula;

  • FunctionName – Beharrezkoa. Erabiltzaileak definitutako funtzioaren izena.
  • ParameterNames – Aukerakoa. Funtzio-parametro baten izena.
  • ParameterTypes – Aukerakoa. Mota baten izena, barne- datu motaren izena, datu-iturburu izena edo Mota funtzioa.
  • ReturnType – Beharrezkoa. Funtzioaren itzulera-balioaren mota.
  • Formula – Beharrezkoa. Parametroetan oinarrituta funtzioaren balioa kalkulatzen duen formula.

Parametro bakoitza eta erabiltzaileak definitzen duen funtzioaren irteera idatzi behar dira. Adibide honetan, SelectedGenre: Text gure funtzioaren lehen parametroa Testua motakoa dela definitzen du eta SelectedGenre deituraren izena da. Iragazkia eragiketa gorputzean erabiltzen den parametroa. Ikus Datu motak onartutako mota-izenetarako. Type funtzioa gure liburutegirako agregazio-mota bat sortzeko erabiltzen da, gure funtziotik liburuen taula bat itzuli ahal izateko.

Erregistro motako taula plural gisa definitu dugu LibraryType . Liburu bakar bat funtzio bati pasatu nahi badiogu, taula honetako erregistro mota atera dezakegu RecordOf funtzioa:

BookType := Type( RecordOf( LibraryType ) );

IsGenre( Book: BookType, SelectedGenre: Text ): Boolean = (Book.Genre = SelectedGenre);

Funtzio-parametroen erregistro-parekatzea estuagoa da Power Fx-ren beste zati batzuetan baino. Erregistro-balio baten eremuek mota definizioaren azpimultzo egokia izan behar dute eta ezin dute eremu gehigarririk sartu. Adibidez, IsGenre( { Title: "My Book", Published: 2001 }, "Fiction" ) k errore bat eragingo du.

Kontuan izan, errekurtsioa oraindik ez dute onartzen erabiltzaileak definitutako funtzioek.

Portaera erabiltzaileak definitutako funtzioak

Izendatutako formulek eta erabiltzaileek definitutako funtzio gehienek ez dituzte albo-ondorioak dituzten portaera-funtzioak onartzen, hala nola Ezarri edo Jakinarazpena. . Orokorrean, hobe da egoera eguneratzea saihestea ahal baduzu, programazio-eredu funtzionaletan oinarritzea eta Power Fx formulak automatikoki behar den moduan berriro kalkulatzea ahalbidetzea. Baina, badaude kasuak non saihestezina den. Erabiltzaileak definitutako funtzio batean portaera-logika sartzeko, Doitu gorputza giltza kizkur artean:

Spend( Amount: Number ) : Void = {
    If( Amount > Savings, 
        Error( $"{Amount} is more than available savings" ),
        Set( Savings, Savings - Amount );
        Set( Spent, Spent + Amount) 
    );
}

Orain Spend( 12 ) dei dezakegu gure Aurrezkietan 12 ote dugun egiaztatzeko, eta hala bada, 12z zorduntzeko eta Gastu aldagaiari 12 gehitzeko. Funtzio honen itzulera mota Void da, ez baitu baliorik itzultzen.

Erabiltzaileak definitutako portaera funtzio baten sintaxia hau da:

FuntzioIzena( [ ParameterName1: ParameterType1 [, ParameterName2: ParameterType2 ... ] ] ) : ReturnType = { Formula1 [ ; Formula2 . .. ] };

  • FunctionName – Beharrezkoa. Erabiltzaileak definitutako funtzioaren izena.
  • ParameterNames – Aukerakoa. Funtzio-parametro baten izena.
  • ParameterTypes – Aukerakoa. Mota baten izena, barnean dagoen datu motaren izena, datu-iturburuaren izena edo Mota funtzioa.
  • ReturnType – Beharrezkoa. Funtzioaren itzulera-balioaren mota. Erabili Void funtzioak baliorik itzultzen ez badu.
  • Formulak – Beharrezkoa. Parametroetan oinarrituta funtzioaren balioa kalkulatzen duen formula.

Power Fx formula guztietan bezala, exekuzioa ez da amaitzen errore bat aurkitzen denean. Errorea funtzioa deitu ondoren, If funtzioa aldaketak eragozten ditu gertatzeko aurreztea eta gastua . IfError funtzioa errore baten ondoren exekuzio gehiago saihesteko ere erabil daiteke. Void itzultzen badu ere, formulak errore bat itzul dezake arazoren bat izanez gero.

Erabiltzaileak definitutako motak

Garrantzitsua da

Izendatutako formulak Mota funtzioarekin erabil daitezke erabiltzaileak definitutako motak sortzeko. Erabili :== en ordez, erabiltzaileak definitutako mota bat definitzeko, adibidez Book := Type( { Title: Text, Author: Text } ). Ikus Mota funtzioa informazio eta adibide gehiago lortzeko.

OnError propietatea

Erabili OnError aplikazioko edozein tokitan errore bat gertatzen denean neurriak hartzeko. Azken erabiltzaileari erakutsi aurretik errore-banda bat atzemateko aukera globala eskaintzen du. Horretaz gain, erabil daiteke erregistratzeko errore bat Segimendua funtzioa edo idatzi datu-base edo web-zerbitzura.

Canvas aplikazioetan, formula ebaluazio bakoitzaren emaitza akatsik dagoen egiaztatzen da. Errore bat aurkitzen bada, OnErrorFirstError eta AllError berdinekin ebaluatzen da. Formula osoa bildu izan balitz erabiliko liratekeen esparru-aldagaiak an IfError funtzioa.

OnError hutsik badago, errore-banner lehenetsi batek errorearen FirstError.Message erakutsiko du. OnError formula bat definitzeak portaera hori gainidazten du, beraz, sortzaileak erroreen berri behar bezala kudeatu ahal izango du. OnError-en portaera lehenetsia eska dezakezu errorea berriro bota Errore funtzioarekin. Erabili birjaurtitzeko ikuspegia errore batzuk modu desberdinean iragazi edo kudeatu nahi badituzu, baina utzi beste batzuk pasatzen.

OnError ek ezin du ordezkatu kalkuluetako errore bat IfError k egin dezakeen moduan. OnError deitzen bada, errorea dagoeneko gertatu da eta dagoeneko prozesatu da formula-kalkuluen bidez, adibidez, IfError; OnError k erroreen berri ematea soilik kontrolatzen du.

OnError formulak aldi berean ebaluatzen dira eta litekeena da haien ebaluazioa beste errore batzuen prozesamenduarekin gainjartzea. Adibidez, aldagai global bat OnError baten goialdean ezartzen baduzu eta geroago formula berean irakurtzen baduzu, balioa aldatu egin daiteke. Erabili Hurrengoarekin funtzioa formularen tokikoa den balio izenduna sortzeko.

Errore bakoitza OnError-ek banan-banan prozesatzen duen arren, baliteke errore-banner lehenetsia ez agertzea errore bakoitzarentzat banan-banan. Errore-pancarta gehiegi aldi berean bistaratzea saihesteko, errore-pancarta bera ez da berriro bistaratuko duela gutxi erakutsi bada.

Adibidez

Demagun formularen bidez elkarrekin lotzen diren Etiketa kontrola eta Irrastatzailea kontrola:

Label1.Text = 1/Slider1.Value

Etiketa eta graduatzaileen kontrola Label1.Text = 1/Slider1.Value formularen bidez lotua.

Irristatzailea lehenetsita da 50. Graduatzailea 0ra mugitzen bada, Label1 ez du baliorik erakutsiko eta errore-banda bat agertuko da:

Graduatzaileen kontrola 0ra eraman da, eta ondorioz, zero errorearen zatiketa eta errore-banda bat sortu dira.

Ikus dezagun zer gertatu den zehatz-mehatz:

  1. Erabiltzaileak diapositiba ezkerrera eraman du eta Slide1.Value propietatea 0-ra aldatu da.
  2. Label1.Text automatikoki berriro ebaluatu da. Zero bidezko zatiketa gertatu da, errore bat sortuz.
  3. Formula honetan ez dago IfError. Zero errorearen zatiketa formula ebaluazioak itzultzen du.
  4. Label1.Text ek ezin du ezer erakutsi errore honengatik, beraz, hutsik egoera erakusten du.
  5. OnError deitzen da. Kudeatzailerik ez dagoenez, erroreen pankarta estandarra akatsen informazioarekin bistaratzen da.

Behar izanez gero, formula Label1.Text = IfError( 1/Slider1.Value, 0 )ere alda dezakezu. IfError erabiltzeak esan nahi du ez dagoela errorerik edo errore-bannerrik. Ezin duzu OnError-etik errore baten balioa aldatu, errorea jadanik gertatu delako.

OnError kudeatzaile bat gehitzen baduzu, ez du eraginik izango 5. urratsaren aurreko urratsetan, baina errorearen berri emateko modua aldatzen du:

Trace( $"Error {FirstError.Message} in {FirstError.Source}" )

App.OnError formula ezarri da Traza bat sortzeko.

OnError kudeatzaile honekin, aplikazioaren erabiltzaileak ez du errorerik ikusten. Baina errorea monitorearen aztarnari gehitzen zaio, FirstError-eko errore-informazioaren iturburua barne:

Graduatzaileen kontrola 0ra eraman da, eta ondorioz, zero errorearen zatiketa izan da, baina errore-bandarik ez.

Errore-banner lehenetsia ere erakutsi nahi baduzu aztarnarekin batera, bota errorea Errore funtzioarekin Trace deiaren ondoren, Trace ez balego bezala:

Trace( $"Error {FirstError.Message} in {FirstError.Source}" );
Error( FirstError )

OnStart propietatea

Oharra

OnStart propietatea erabiltzeak errendimendu arazoak sor ditzake aplikazio bat kargatzerakoan. Propietate hau erabiltzeko bi arrazoi nagusiengatik alternatibak sortzen ari gara: datuak cachean gordetzea eta aldagai globalak konfiguratzea. Dagoeneko badago alternatiba bat Navigate-rekin erakutsi beharreko lehen pantaila definitzeko. Testuinguruaren arabera, propietate hau lehenespenez desgaitu daiteke. Ikusten ez baduzu eta erabili behar baduzu, egiaztatu aplikazioaren ezarpen aurreratuak gaitzeko etengailu bat lortzeko. Pantaila baten OnVisible propietatea ere erabil dezakezu. Lehenespenez, blokeatu gabeko OnStart araua gaituta dagoenean, OnStart funtzioa beste aplikazio arauekin batera exekutatzen uzten du. Beraz, beste aplikazio arau batzuetan aipatzen diren aldagaiak OnStart funtzioaren barruan hasieratzen badira, baliteke oraindik ez izatea guztiz hasieratuta. Gainera, pantaila bat errendatu eta interaktiboa bihur daiteke Screen.OnVisible edo App.OnStart funtzioak exekutatu aurretik, batez ere denbora asko behar badute amaitzeko.

OnStart propietatea erabiltzaileak aplikazioa abian jartzen duenean exekutatzen da. Propietate hau askotan erabiltzen da:

  • Bildumetako datuak berreskuratu eta cachean cachean gordetzen ditu Bildu funtzioa erabiliz.
  • Konfiguratu aldagai orokorrak ezarri funtzio erabiliz.

Formula hau lehenengo pantaila agertu aurretik exekutatzen da. Ez da pantailarik kargatu, beraz ezin dituzu testuinguruko aldagaiak ezarri UpdateContext funtzioa erabiliz. Testuinguru-aldagaiak pasa ditzakezu Nabigatu funtzioarekin.

OnStart propietatea aldatu ondoren, probatu Aplikazio objektuaren gainean pasatuz Zuhaitz-ikuspegiaren panelean, elipsi (...) hautatu, eta hautatu Exekutatu Abiaraztean. Aplikazioa lehen aldiz kargatzen denean ez bezala, lehendik dauden bildumak eta aldagaiak dagoeneko ezarrita daude. Bilduma hutsak erabiltzen hasteko erabili ClearCollect funtzioa, Collect funtzioaren ordez.

Aplikazio-elementuen lasterbide-menua exekutatu OnStart-erako

Oharra

  • OnStart propietatearen Nabigazio funtzioa erabiltzea erretiratu egiten da. Lehendik dauden aplikazioek funtzionatzen jarraitzen dute. Denbora mugatu baterako, aplikazioaren ezarpenetan gaitu dezakezu ( Erretiratuta). Baina Navigate modu honetan erabiltzeak aplikazioaren karga atzerapenak eragin ditzake, sistema OnStart exekutatzera behartzen baitu lehen pantaila erakutsi aurretik. Erabili StartScreen propietatea bistaratuko den lehenengo pantaila ezartzeko.
  • Erretiratutako etengailua desaktibatuta 2021eko martxoa baino lehen sortutako aplikazioetarako, non NabigatuOnStart-era gehitu zenuen 2021eko martxotik orain arte. Aplikazio hauek Power Apps Studio-n editatzen dituzunean, errore bat ikus dezakezu. Aktibatu erretiratutako etengailua errore hau garbitzeko.

StartScreen propietatea

StartScreen propietateak zein pantaila erakutsiko duen ezartzen du lehenengo. Behin ebaluatzen da aplikazioa kargatzen denean eta pantailako objektua erakusteko itzultzen du. Lehenespenez, propietate hau hutsik, eta Estudioko zuhaitz-ikuspegiko lehenengo pantaila agertzen da lehenengo.

StartScreen portaera-funtziorik eduki ezin duen datu-fluxuaren propietate bat da. Datu-fluxuaren funtzio guztiak erabilgarri daude. Erabili funtzio eta seinale hauek zein pantaila erakutsi behar den lehenengo erabakitzeko:

  • Param funtzioa aplikazioa abiarazteko erabiltzen diren parametroak irakurtzeko.
  • Erabiltzailea funtzioa uneko erabiltzaileari buruzko informazioa irakurtzeko.
  • Bilatu, Iragazkia, CountRows, Max, eta datu-iturburu batetik irakurtzen duten beste funtzio batzuk.
  • API deiak konektore baten bidez. Ziurtatu deia azkar itzultzen dela.
  • Bezalako seinaleak Konexioa, Iparrorratza, eta Aplikazioa.

Oharra

Aldagai orokorrak eta bildumak, OnStart-en sortutakoak barne, ez daude erabilgarri StartScreen-en. Izendatutako formulak eskuragarri daude eta askotan formulak aplikazioan berrerabiltzeko alternatiba hobeak dira.

StartScreen-ek errore bat itzultzen badu, Estudioko zuhaitz-ikuspegiko lehen pantaila StartScreen ezarrita ez balego bezala agertuko da. Erabili IfError funtzioa akatsak harrapatzeko eta errore-pantaila batera birbideratzeko.

Estudioko hasierako pantaila aldatu ondoren, probatu Aplikazioa objektuaren gainean pasatu Zuhaitz-ikuspegiaren panelean, elipsi (...) hautatu, eta hautatu Nabigatu hasierako pantailara. Pantaila aldatu egiten da, aplikazioa kargatu berri balitz bezala.

Nabigatu StartScreen-era

Adibideak

Screen9

Screen9 Aplikazioa abiarazten den bakoitzean agertzen da lehenengo.

If( Param( "admin-mode" ) = 1, HomeScreen, AdminScreen )

Parametroa "admin-mode" ezarrita dagoen egiaztatzen du, eta Hasierako pantaila edo AdminScreen lehenengo agertzen den erabakitzeko erabiltzen du.

If( LookUp( Attendees, User = User().Email ).Staff, StaffPortal, HomeScreen )

Parte-hartzaile bat langilea den egiaztatzen du eta abiaraztean pantaila egokira bideratzen du.

IfError( If( CustomConnector.APICall() = "Forest", 
             ForestScreen, 
             OceanScreen 
         ), 
         ErrorScreen 
)

Bietara zuzentzen du aplikazioa API dei batean oinarrituta ForestScreen edo OceanScreen. APIak huts egiten badu, aplikazioak erabiliko ErrorScreen du horren ordez.

StudioVersion propietatea

Erabili StudioVersion propietatea aplikazio bat argitaratzeko erabilitako Power Apps Studio-ren bertsioa erakusteko edo erregistratzeko. Propietate honek zure aplikazioa Power Apps Studio-ren azken bertsio batekin berriro argitaratzea egiaztatzen eta egiaztatzen laguntzen du.

StudioVersion-ek testua itzultzen du. Testu honen formatua denboran zehar alda daiteke, beraz, tratatu osotasun gisa eta ez atera zati indibidualak.