UpdateContext-funktio

Soveltuu: Pohjaan perustuvat sovellukset

Luo tai päivittää kontekstimuuttujat nykyisessä näytössä.

Yleiskatsaus

Käytä UpdateContext funktiota kontekstimuuttujan luomiseen. Kontekstimuuttuja säilyttää tilapäisesti tietoja, kuten montako kertaa käyttäjä on valinnut painikkeen tai tietotoiminnon tuloksen.

Kontekstimuuttujat on rajoitettu näyttöä varten, mikä tarkoittaa, ettet voi muodostaa kaavaa, joka viittaa toisessa näytössä olevaan kontekstimuuttujaan. Jos olet käyttänyt toisenlaista ohjelmointityökalua, voit ajatella kontekstimuuttujaa samanlaisena kuin paikallista muuttujaa. Käytä Set-funktiota, kun käytät muuttujia, jotka ovat käytettävissä kaikkialla sovelluksessa.

Power Apps -sovellukset perustuvat kaavoihin, jotka lasketaan automaattisesti uudelleen, kun käyttäjä on vuorovaikutuksessa sovelluksen kanssa. Kontekstimuuttujat eivät tarjoa tätä etua, ja ne voivat vaikeuttaa sovelluksesi laatimista ja ymmärtämistä. Ennen kuin käytät kontekstimuuttujaa, tutustu kohtaan muuttujien käyttäminen.

Kuvaus

Voit luoda tai päivittää kontekstimuuttujan välittämällä yksittäisen tietueenUpdateContext-funktiolle. Määritä kullekin tietueelle sarakkeen nimi, joka määrittää tai vastaa muuttujan nimeä, ja arvo, jonka haluat määrittää kyseiselle muuttujalle.

  • Jos määrität muuttujan nimen, jonka olet määrittänyt aikaisemmin, UpdateContext asettaa muuttujan arvoksi määrittämäsi arvon.
  • Jos määrität muuttujan nimen, jota ei ole vielä olemassa, UpdateContext luo muuttujan tällä nimellä ja asettaa tälle muuttujalle määrittämäsi arvon.
  • Jos olet aiemmin määrittänyt muuttujan, mutta et määritä sitä tässä nimenomaisessa UpdateContext-kaavassa, sen arvo pysyy samana.

Kontekstimuuttujia luodaan implisiittisesti käyttämällä UpdateContext- tai Navigate-funktiota. Eksplisiittinen määrittely ei ole välttämätön. Jos poistat kaikki UpdateContext- ja Navigate-viittaukset kontekstimuuttujaan, kyseisen kontekstimuuttujan olemassaolo päättyy. Poista muuttujasarjan arvot määrittämällä sen arvoksi Blank-funktion tulos.

Voit nähdä-muuttujien arvot, määritelmät ja käyttötarkoitukset Tiedosto-valikon Muuttujat-näkymässä luontiympäristössä.

Voit viitata kontekstimuuttujaan kaavassa käyttämällä muuttujan sarakkeen nimeä. Esimerkiksi, UpdateContext( { ShowLogo: true } ) luo kontekstimuuttujan, jonka nimi on ShowLogo, ja asettaa sen arvoksi tosi. Voit sitten käyttää tämän kontekstimuuttujan arvoa käyttämällä kaavassa nimeä ShowLogo. Voit kirjoittaa ShowLogon kaavaksi kuvan hallinnan Visible-ominaisuudelle ja näyttää tai piilottaa tämän ohjausobjektin sen perusteella, onko kontekstimuuttujan arvo tosi vai epätosi.

Kuten myöhemmin tämän artikkelin esimerkeissä osoitetaan, kontekstimuuttujat voivat sisältää useita monenlaisia tietoja, kuten seuraavat:

  • yksittäinen arvo
  • tietue
  • taulukko
  • objektiviittaus
  • mikä tahansa tulos kaavasta.

Kontekstimuuttuja säilyttää arvonsa, kunnes sovellus on suljettu. Jos määrität kontekstimuuttujan ja määrität sen arvon jossakin tietyssä näytössä, tieto säilyy muuttumattomana, vaikka käyttäjä siirtyisikin eri näyttöön. Kun sovellus on suljettu, kontekstimuuttujan arvo menetetään, ja se on luotava uudelleen, kun sovellus on ladattu uudelleen.

Jokainen kontekstimuuttuja rajoittuu näyttöön. Jos haluat määrittää kontekstimuuttujan yhdessä näytössä ja muokata kyseistä muuttujaa toisesta näytöstä, sinun täytyy muodostaa kaava, joka perustuu Navigate-funktioon. Vaihtoehtoisesti voit käyttää yleistä muuttujaa.

UpdateContext-funktiolla ei ole palautusarvoa, ja voit käyttää sitä vain toimintakaavan sisällä.

Syntaksi

UpdateContext( UpdateRecord )

  • UpdateRecord – Pakollinen. Tietue, joka sisältää vähintään yhden sarakkeen nimen ja arvon tälle sarakkeelle. Kontekstimuuttuja luodaan tai päivitetään jokaiselle sarakkeelle ja arvolle, jonka määrität.

UpdateContext( { ContextVariable1: Value1 [, ContextVariable2: Value2 [, ... ] ] } )

  • ContextVariable1 – Pakollinen. Luotavan tai päivitettävän kontekstimuuttujan nimi.
  • Value1 – Pakollinen. Arvo, joka määritetään kontekstimuuttujalle.
  • ContextVariable2: Value2, ... – Valinnainen. Lisää kontekstimuuttujia, jotka laaditaan tai joiden arvot päivitetään.

Esimerkit

Kaava Kuvaus Tulos
UpdateContext( { Counter: 1 } ) Luo tai muokkaa kontekstimuuttujan Counter ja asettaa sen arvoksi 1. Counter-arvo on 1. Voit viitata kyseisen muuttujan nimeen Counter kaavassa.
UpdateContext( { Counter: 2 } ) Määrittää kontekstimuuttujan Counter arvoksi edellisessä esimerkissä 2. Counter-arvo on 2.
UpdateContext( { Name: "Lily", Score: 10 } ) Luo tai muokkaa kontekstimuuttujat Name ja Score ja asettaa niiden arvoiksi vastaavasti Lily ja 10. Muuttujan Name arvo on Lily ja muuttujan Score arvo on 10.
UpdateContext( { Person: { Name: "Milton", Address: "1 Main St" } } ) Luo tai muokkaa kontekstimuuttujan Person ja asettaa sen tietueeksi. Tietue sisältää kaksi saraketta, joiden nimet ovat Name ja Address. Sarakkeen Name arvo on Milton ja sarakkeen Address arvo on 1 Main St. Person-muuttujan arvo on tietue { Name: "Milton", Address: "1 Main St" } }.

Viittaa tähän tietueeseen kokonaisuutena nimellä Person tai tämän tietueen yksittäiseen sarakkeeseen seuraavasti: Person.Name tai Person.Address.
UpdateContext( { Person: Patch( Person, {Address: "2 Main St" } ) } ) Toimii Patch-funktion kanssa kontekstimuuttujan Person päivittämiseksi ja asettaa sarakkeen Address arvoksi 2 Main St. Person-muuttujan arvo on nyt tietue { Name: "Milton", Address: "2 Main St" } }.

Vaiheittainen esimerkki 1

  1. Anna oletusnäytön nimeksi Lähde, lisää toinen näyttö ja anna sille nimeksi Kohde.

  2. Lisää näytössä Lähde kaksi painiketta ja määritä niiden Text-ominaisuudet niin, että toisessa lukee Englanti ja toisessa lukee Espanja.

  3. Aseta OnSelect-ominaisuudeksi Englanti-painikkeelle seuraava lauseke:
    Navigate(Target, ScreenTransition.Fade, {Language:"English"})

  4. Aseta OnSelect-ominaisuudeksi Espanja-painikkeelle seuraava lauseke:
    Navigate(Target, ScreenTransition.Fade, {Language:"Spanish"})

  5. Lisää näytössä Kohde otsikko ja määritä sen Text-ominaisuudeksi seuraava lauseke:
    If(Language="English", "Hello!", "Hola!")

  6. Valitse Kohde-näytössä ShapesLisää-välilehdeltä ja valitse sitten taaksepäin osoittava nuoli.

  7. Määritä taaksepäin osoittavan nuolen OnSelect-ominaisuudeksi tämä kaava:
    Navigate(Source, ScreenTransition.Fade)

  8. Paina Lähde-näytössä F5-näppäintä ja valitse sitten painike molemmille kielille.

    Kohde-näytössä otsikko näkyy kielellä, joka vastaa valitsemaasi painiketta.

  9. Valitse taaksepäin osoittava nuoli palataksesi Lähde-näyttöön ja valitse sitten toisen kielen painike.

    Kohde-näytössä otsikko näkyy kielellä, joka vastaa valitsemaasi painiketta.

  10. Palaa oletustyötilaan painamalla ESC-näppäintä.

Vaiheittainen esimerkki 2

  1. Avaa se pohjaan perustuva sovellus, jossa haluat käyttää tätä kaavaa.
  2. Lisää uusi tyhjä näyttö valitsemalla komentopalkissa Uusi näyttö.
  3. Lisää painike ja määritä sen OnSelect-ominaisuudeksi seuraava kaava:
    UpdateContext( { Name: "Lily", Score: 10 } )