Az UpdateContext függvény a PowerAppsbanUpdateContext function in PowerApps

Ez a függvény az aktuális képernyő környezeti változóinak létrehozására, illetve frissítésére használható.Creates or updates context variables of the current screen.

ÁttekintésOverview

Az UpdateContext függvénnyel környezeti változók hozhatók létre, amelyek különböző információkat képesek átmenetileg tárolni, például egy adatfeldolgozási művelet eredményeit, vagy azt, hogy a felhasználó hányszor kattintott egy adott gombra.Use the UpdateContext function to create a context variable, which temporarily holds a piece of information, such as the number of times the user has selected a button or the result of a data operation.

A környezeti változók hatóköre egyetlen képernyőre korlátozódik, vagyis nem írhatók olyan képletek, amelyek egy másik képernyő környezeti változóira hivatkoznak.Context variables are scoped to a screen, which means that you can't build a formula that refers to a context variable on another screen. A környezeti változók a más programozási eszközökben használt helyi változókhoz hasonlíthatók.If you've used another programming tool, you can think of a context variable as similar to a local variable. Ha globális, az egész alkalmazásban elérhető változókat szeretne megadni, használja a Set függvényt.Use the Set function to work with global variables that are available throughout your app.

A PowerApps-alkalmazások olyan képleteken alapulnak, amelyek automatikusan újraszámítják az értékeket, miközben a felhasználók az alkalmazással dolgoznak.PowerApps are based on formulas that automatically recalculate as the user interacts with an app. A környezeti változók kapcsán ez az előny nem érvényesül, ezért használatuk megnehezítheti az alkalmazás létrehozását és működésének megértését.Context variables don't offer this benefit and can make your app harder to create and understand. A környezeti változók használata előtt olvassa el a változók használatáról szóló cikket.Before you use a context variable, review working with variables.

LeírásDescription

Környezeti változó létrehozásához vagy frissítéséhez adjon át egyetlen rekordot az UpdateContext függvénynek.To create or update a context variable, pass a single record to the UpdateContext function. Mindegyik rekordban adja meg annak az oszlopnak a nevét, amely meghatározza a változó nevét vagy egyezik azzal, valamint azt az értéket, amelyet a változónak adni szeretne.In each record, specify the name of a column, which defines or matches the name of the variable, and the value to which you want to set that variable.

  • Ha egy korábban már definiált változó nevét adja meg, az UpdateContext függvény az Ön által megadott értéket adja a változónak.If you specify the name of a variable that you've previously defined, UpdateContext sets the value of the variable to the value that you specify.
  • Ha olyan változónevet ad meg, amely még nem létezik, az UpdateContext függvény létrehoz azon a néven egy változót, és az Ön által megadott értéket adja neki.If you specify the name of a variable that doesn't yet exist, UpdateContext creates a variable with that name and sets the value of that variable to the value that you specify.
  • Ha korábban már definiált egy változót, de nem adja meg az UpdateContext függvényben, az értéke változatlan marad.If you've previously defined a variable but don't specify it in this particular UpdateContext formula, its value remains the same.

Az UpdateContext, illetve a Navigate függvény implicit módon hoz létre környezeti változókat.Context variables are implicitly created by using the UpdateContext or Navigate function. Explicit deklarálásra nincs szükség.There is no explicit declaration required. Ha eltávolítja az összes olyan UpdateContext- és Navigate-hivatkozást, amely egy adott környezeti változót nevesít, a környezeti változó megszűnik.If you remove all the UpdateContext and Navigate references to a context variable, then that context variable will cease to exist. Ha törölni szeretné egy változó értékét, állítsa azt a Blank függvény kimenetére.To clear a variable set its value to the result of the Blank function.

A szerzői környezet Fájl menüjéből elérhető Változók nézetben megtekintheti a változók értékét, definícióját és használatát.You can see your variables' values, definitions, and uses with the Variables view under the File menu in the authoring environment.

A képletekben az oszlopuk nevével hivatkozhat a környezeti változókra.You reference a context variable in a formula by using the variable's column name. Az UpdateContext( { EmblémaMegjelenítése: true } ) függvény például létrehoz egy EmblémaMegjelenítése nevű környezeti változót, és true (igaz) értéket ad neki.For example, UpdateContext( { ShowLogo: true } ) creates a context variable named ShowLogo and sets its value to true. A környezeti változó értékét képletekben az EmblémaMegjelenítése névre hivatkozva használhatja fel.You can then use the value of this context variable by using the name ShowLogo in a formula. Az EmblémaMegjelenítése változót egy kép típusú vezérlő Visible tulajdonságában használva szabályozhatja a kép megjelenítését, illetve elrejtését az alapján, hogy a változó értéke true (igaz) vagy false (hamis).You can write ShowLogo as the formula for the Visible property of an image control and show or hide that control based on whether the value of the context variable is true or false.

A témakör későbbi példái bemutatják, hogy a környezeti változók többfajta információt, például a következőket tárolhatják:As the examples later in this topic show, context variables can hold several kinds of information, including these:

  • egyetlen érték,a single value
  • egy rekorda record
  • egy táblaa table
  • egy objektumhivatkozásan object reference
  • egy képlet bármely eredménye.any result from a formula

A környezeti változók az alkalmazás bezárásáig őrzik meg értéküket.A context variable holds its value until the app is closed. Ha definiál egy környezeti változót, és valamelyik képernyőn megadja az értékét, ez az információ akkor is megőrződik, ha a felhasználó az alkalmazás egy másik képernyőjére vált.If you define a context variable and set its value on a particular screen, that information remains intact even if the user switches to a different screen. Az alkalmazás bezárásakor a környezeti változó értéke elveszik, és újból létre kell hozni az alkalmazás következő betöltésekor.Once the app is closed, the context variable's value will be lost and must be recreated when the app is loaded again.

Minden környezeti változó hatóköre egy adott képernyőre terjed ki.Every context variable is scoped to a screen. Ha az egyik képernyőn definiált környezeti változót egy másik képernyőn szeretné módosítani, a Navigate függvény alapján kell képletet írnia.If you want to define a context variable on one screen and modify that variable from another screen, you must build a formula that's based on the Navigate function. Másik megoldásként globális változót is létrehozhat.Or use a global variable.

Az UpdateContext függvény nem ad vissza értéket, és kizárólag műveleti képletben használható.UpdateContext has no return value, and you can use it only within a behavior formula.

SzintaxisSyntax

UpdateContext( FrissítésiRekord )UpdateContext( UpdateRecord )

  • FrissítésiRekord – Kötelező megadni.UpdateRecord – Required. Egy rekord, amely legalább egy oszlop nevét és értékét tartalmazza.A record that contains the name of at least one column and a value for that column. Minden megadott oszlophoz és értékhez létrejön, illetve frissül a környezeti változó.A context variable is created or updated for each column and value that you specify.

UpdateContext( { KörnyezetiVáltozó1: Érték1 [, KörnyezetiVáltozó2: Érték2 [, ... ] ] } )UpdateContext( { ContextVariable1: Value1 [, ContextVariable2: Value2 [, ... ] ] } )

  • KörnyezetiVáltozó1 – Kötelező megadni.ContextVariable1 - Required. A létrehozandó, illetve frissítendő környezeti változó neve.The name of a context variable to create or update.
  • Érték1 – Kötelező megadni.Value1 - Required. A környezeti változóhoz rendelendő érték.The value to assign to the context variable.
  • KörnyezetiVáltozó2: Érték2, ... – Nem kötelező.ContextVariable2: Value2, ... - Optional. További létrehozandó, illetve frissítendő környezeti változók és azok értéke.Additional context variables to create or update and their values.

PéldákExamples

KépletFormula LeírásDescription EredményResult
UpdateContext( { Számláló: 1 } )UpdateContext( { Counter: 1 } ) A függvény létrehozza vagy módosítja a Számláló nevű környezeti változót, és az 1 értéket adja neki.Creates or modifies the context variable Counter, setting its value to 1. A Számláló változó az 1 értéket kapja.Counter has the value 1. A változó a Számláló névre hivatkozva használható fel képletekben.You can reference that variable by using the name Counter in a formula.
UpdateContext( { Számláló: 2 } )UpdateContext( { Counter: 2 } ) Az előző példában létrehozott Számláló környezeti változó értékét 2-re módosítja.Sets the value of the Counter context variable from the previous example to 2. A Számláló változó a 2 értéket kapja.Counter has the value 2.
UpdateContext( { Név: "Tímea", Pontszám: 10 } )UpdateContext( { Name: "Lily", Score: 10 } ) A függvény létrehozza vagy módosítja a Név és a Pontszám környezeti változót, és az előbbinek a Tímea, az utóbbinak pedig a 10 értéket adja.Creates or modifies the context variables Name and Score, setting their values to Lily and 10 respectively. A Név változó a Tímea, a Pontszám változó pedig a 10 értéket kapja.Name has the value Lily, and Score has the value 10.
UpdateContext( { Személy: { Név: "Mihály", Cím: "Fő út 1." } } )UpdateContext( { Person: { Name: "Milton", Address: "1 Main St" } } ) A függvény létrehozza vagy módosítja a Személy nevű környezeti változót, és egy rekordot ad neki értékként.Creates or modifies the context variable Person, setting its value to a record. A rekord két oszlopot tartalmaz, az egyiknek Név, a másiknak pedig Cím a neve.The record contains two columns, named Name and Address. A Név oszlop értéke Mihály, a Cím oszlopé pedig Fő út 1.The value of the Name column is Milton, and the value of the Address column is 1 Main St. A Személy változó értékét a { Név: "Mihály", Cím: "Fő út 1" } } rekord adja meg.Person has the value of record { Name: "Milton", Address: "1 Main St" } }.

Erre a rekordra Személy néven lehet hivatkozni, de a rekord egyes oszlopaira is hivatkozhat a Személy.Név, illetve a Személy.Cím névvel.Reference this record as a whole with the name Person, or reference an individual column of this record with Person.Name or Person.Address.
UpdateContext( { Személy: Patch( Személy, {Cím: "Fő út 2." } ) } )UpdateContext( { Person: Patch( Person, {Address: "2 Main St" } ) } ) A függvény a Patch függvényt használva frissíti a Személy környezeti változót úgy, hogy a Cím oszlopnak a Fő út 2. értéket adja.Works with the Patch function to update the Person context variable by setting the value of the Address column to 2 Main St. A Személy változó értékét így a { Név: "Mihály", Cím: "Fő út 2" } } rekord adja meg.Person now has the value of record { Name: "Milton", Address: "2 Main St" } }.

Részletes példaStep-by-step example

  1. Adja az alapértelmezett képernyőnek a Forrás nevet, majd vegyen fel még egy képernyőt, és adja neki a Cél nevet.Name the default screen Source, add another screen, and name it Target.
  2. A Forrás képernyőhöz adjon hozzá két gombot, és az egyik gomb Text tulajdonságának adja a Magyar, a másikénak pedig a Spanyol értéket.On the Source screen, add two buttons, and set their Text properties so that one says English and the other says Spanish.
  3. A Magyar feliratú gomb OnSelect tulajdonságának értékeként adja meg a következő kifejezést:Set the OnSelect property of the English button to this expression:
    Navigate(Cél, ScreenTransition.Fade, {Nyelv:"Magyar"})Navigate(Target, ScreenTransition.Fade, {Language:"English"})
  4. A Spanyol feliratú gomb OnSelect tulajdonságának értékeként adja meg a következő kifejezést:Set the OnSelect property of the Spanish button to this expression:
    Navigate(Cél, ScreenTransition.Fade, {Nyelv:"Spanyol"})Navigate(Target, ScreenTransition.Fade, {Language:"Spanish"})
  5. A Cél képernyőhöz adjon hozzá egy feliratot, és a Text tulajdonságának értékeként adja meg a következő kifejezést:On the Target screen, add a label, and set its Text property to this expression:
    If(Nyelv="Magyar", "Szia!", "Hola!")If(Language="English", "Hello!", "Hola!")
  6. A Cél képernyőn válassza a Beszúrás lapon az Alakzatok, majd pedig a Vissza nyíl lehetőséget.On the Target screen, select Shapes on the Insert tab, and then select the Back arrow.
  7. A Vissza nyíl típusú alakzat OnSelect tulajdonságának értékeként adja meg a következő képletet:Set the Back arrow's OnSelect property to this formula:
    Navigate(Forrás, ScreenTransition.Fade)Navigate(Source, ScreenTransition.Fade)
  8. A Forrás képernyőn nyomja le az F5 billentyűt, majd kattintson valamelyik nyelv gombjára.From the Source screen, press F5, and then select the button for either language.

    A Cél képernyőn a felirat azon a nyelven fog megjelenni, amelyiknek a gombjára kattintott.On the Target screen, the label appears in the language that corresponds to the button that you selected.

  9. A Vissza nyíl alakzatra kattintva térjen vissza a Forrás képernyőre, és kattintson a másik nyelv gombjára.Select the Back arrow to return to the Source screen, and then select the button for the other language.

    A Cél képernyőn a felirat azon a nyelven fog megjelenni, amelyiknek a gombjára kattintott.On the Target screen, the label appears in the language that corresponds to the button that you selected.

  10. Az Esc billentyű lenyomásával térjen vissza az alapértelmezett munkaterületre.Press Esc to return to the default workspace.

Másik példaAnother example