Dijeli putem


Imperativna logika

Napomena

Microsoft Power Fx novo je ime za jezik formula za aplikacije od gotovih gradivnih elemenata. Ovi su članci nedovršeni dok izdvajamo jezik iz aplikacija od gotovih gradivnih elemenata i integriramo ga s drugim Microsoft Power Platform proizvoda i činimo ga dostupnim kao otvoreni kod. Počnite s odjeljkom Pregled jezika Microsoft Power Fx za uvod u jezik.

Većina formula u jeziku Microsoft Power Fx izračunava vrijednost. Poput proračunske tablice u Excelu, ponovni izračun se vrši automatski po promjeni vrijednosti. Na primjer, možda želite crvenom bojom prikazati vrijednost u kontroli Oznaka ako je vrijednost manja od nule ili općenito unesena u crnoj boji. Tako svojstvo kontrole Boja možete postaviti na ovu formulu::

If( Value(TextBox1.Text) >= 0, Color.Black, Color.Red )

Što u ovom kontekstu znači ako korisnik odabere kontrolu Gumb? Nijedna vrijednost nije promijenjena, tako da nema novih vrijednosti za izračun. Excel nema istovjetnu zamjenu za kontrolu Gumb.

Odabirom kontrole Gumb korisnik pokreće slijed radnji ili ponašanja koja će promijeniti stanje aplikacije:

  • Promijenite prikazan zaslon: funkcije Natrag.
  • Upravljanje signalom (samo Power Apps): funkcije Omogućivanje i Onemogućivanje.
  • Osvježavanje, ažuriranje ili uklanjanje stavki u izvoru podataka: funkcije Osvježavanje, Ažuriranje, UpdateIf, Zakrpavanje, Uklanjanje, RemoveIf .
  • Ažuriranje kontekstne varijable (samo radno područje platforme Power Apps): funkcija UpdateContext.
  • Izrada, ažuriranje ili uklanjanje stavki u zbirci: funkcije Prikupljanje, Brisanje, ClearCollect.

Budući da ove funkcije mijenjaju stanje aplikacije, ne mogu se automatski ponovno izračunati. Možete ih upotrebljavati u formulama za svojstva OnSelect, OnVisible, OnHidden i za druga svojstva pod nazivom On... koja se nazivaju formulama ponašanja.

Više od jedne radnje

Upotrijebite točke sa zarezima za izradu popisa radnji koje će se izvršiti. Na primjer, možda želite ažurirati varijablu konteksta i zatim se vratiti na prethodni zaslon:

UpdateContext( { x: 1 } ); Back()

Radnje se izvode redom kojim su prikazane u formuli. Sljedeća se funkcija neće pokrenuti sve dok se ne dovrši trenutačna funkcija. U slučaju pogreške, daljnje se funkcije možda neće pokrenuti.