Jaa


Muuttuja

Muistiinpano

Microsoft Power Fx on pohjaan perustuvien sovellusten kaavakieli. Nämä artikkelit ovat keskeneräisiä, koska pohjaan perustuvista sovelluksista poimitaan kieli, integroidaan se muiden Microsoft Power Platform -tuotteiden kanssa ja määritetään käytettäväksi avoimen lähdekoodin tuotteena. Aloita kielen esittelyn Microsoft Power Fx:n yleiskatsaus.

Jos olet joskus käyttänyt jotakin toista ohjelmointityökalua, kuten Visual Basicia tai JavaScriptiä, ihmettelet ehkä, missä muuttujat ovat. Microsoft Power Fx on hieman erilainen ja edellyttää erilaista käyttötapaa. Kun kirjoitat kaavaa, kannattaa miettiä, mitä laskentataulukossa tehtäisiin.

Muissa työkaluissa olet ehkä eksplisiittisesti suorittanut laskutoimituksen ja tallentanut tuloksen muuttujaan. Power Fx ja Excel laskevat kuitenkin kaavat automaattisesti uudelleen syötetietojen muuttuessa, joten muuttujia ei yleensä tarvitse luoda ja päivittää. Noudattamalla tätä lähestymistapaa aina kun mahdollista, voit helpommin luoda, ymmärtää ja ylläpitää sovelluksia.

Joudut joissakin tapauksissa käyttämään muuttujia Power Fxissa, joka laajentaa Excelin mallia lisäämällä toimintakaavioita. Nämä kaavat suoritetaan esimerkiksi silloin, kun käyttäjä valitsee painikkeen. Toimintakaaviossa kannattaa usein määrittää muuttuja, jota käytetään muissa kaavoissa.

Yleensä kannattaa välttää muuttujien käyttämistä. Toisinaan kuitenkin vain muuttuja pystyy mahdollistamaan halutun ominaisuuden. Muuttujat luodaan ja tyypitetään implisiittisesti, kun ne näkyvät funktioissa, jotka määrittävät niiden arvot.

Excelin kääntäminen Power Fxiin

Excel

Muistellaan, miten Excel toimii. Solu voi sisältää arvon, kuten luvun tai merkkijonon, tai kaavan, joka perustuu muiden solujen arvoihin. Sen jälkeen, kun käyttäjä on lisännyt eri arvon soluun, Excel laskee automaattisesti uudestaan kaavat, jotka ovat riippuvaisia uudesta arvosta. Tätä varten ei tarvitse tehdä mitään ohjelmointia.

Seuraavassa esimerkissä soluun A3 on määritetty kaava A1+A2. Jos A1 tai A2 muuttuu, A3 lasketaan automaattisesti uudelleen muutosta vastaavaksi. Tämä toiminta ei edellytä koodausta kaavan ulkopuolella.

Animaatio Excelissä kahden luvun summan laskemisesta uudelleen.

Excelissä ei ole muuttujia. Kaavan sisältävän solun arvo muuttuu siihen syötettyjen tietojen mukaan, mutta kaavan tulosta ei voi muistaa eikä tallentaa soluun tai minnekään muualle. Jos muutat solun arvoa, koko laskentataulukko saattaa muuttua, jolloin aiemmin lasketut arvot menetetään. Excel-käyttäjä voi kopioida ja liittää soluja, mutta tämä on käyttäjän manuaalisessa hallinnassa, eikä sitä ole mahdollista tehdä kaavoilla.

Power Fx

Power Fx:ssä luomasi logiikka toimii hyvin samalla tavalla kuin Excel. Sen sijaan, että päivität solut, voit lisätä ohjausobjekteja mihin tahansa näytön kohtaan ja nimetä ne kaavoissa käyttämistä varten.

Power Appsissa voi esimerkiksi replikoida Excelin toiminnan sovelluksessa lisäämällä Selite-ohjausobjekti, jonka nimi on Label1, ja kaksi Tekstisyöte-ohjausobjektit, joiden nimi on TextInput1 ja TextInput2. Jos sitten määrität Label1-ohjausobjektin Text-ominaisuudeksi TextInput1.Text + TextInput2.Text, se näyttää aina automaattisesti ohjausobjekteissa TextInput1 ja TextInput2 olevien numeroiden summan.

Kahden luvun summan laskeminen Power Fxissa.

Huomaa, että kun Label1-ohjausobjekti on valittuna, sen Teksti-kaava näkyy kaavarivillä näytön yläreunassa. Tässä on kaava TextInput1.Text + TextInput2.Text. Tämä kaava luo riippuvuussuhteen näiden ohjausobjektien välille, samalla tavalla kuin riippuvuuksia luodaan Excel-työkirjan solujen välille. Muutetaan TextInput1-arvoa:

Animaatio Power Fxista kahden luvun summan laskemisesta.

Label1-kaava on laskettu automaattisesti uudelleen, ja näemme uuden arvon.

Power Fxissa voidaan käyttää kaavoja määrittämään ohjausobjektin ensisijaisen arvon lisäksi myös ominaisuuksia, kuten muotoilun. Seuraavassa esimerkissä kaava nimen Väri-ominaisuudelle näyttää negatiiviset arvot automaattisesti punaisella. If-funktio näyttää tutulta Excelistä:

If( Value(Label1.Text) < 0, Color.Red, Color.Black )

Ehdollisen muotoilun animaatio.

Voit käyttää kaavoja moniin erilaisiin skenaarioihin:

  • Käyttämällä laitteen GPS:ää kartan ohjausobjekti voi näyttää nykyisen sijaintisi kaavalla, joka käyttää signaaleja Location.Latitude ja Location.Longitude. Kun siirryt, kartta seuraa sijaintiasi automaattisesti.
  • Muut käyttäjät voivat päivittää tietolähteitä. Muut ryhmän jäsenet voivat esimerkiksi päivittää SharePoint-luettelon kohteita. Kun päivität tietolähteen, riippuvat kaavat lasketaan automaattisesti uudelleen vastaamaan päivitettyjä tietoja. Jos viemme tätä esimerkkiä eteenpäin, haluat ehkä määrittää valikoiman Kohteet-ominaisuuden kaavaksi Filter( SharePointList ), joka näyttää automaattisesti vastikään suodatettujen tietueiden sarjan.

Edut

Sovellusten tekemisellä kaavojen avulla on monia etuja:

  • Jos tunnet Excelin, tunnet Power Fxin. Malli ja kaavan kieli ovat samat.
  • Jos olet käyttänyt muita ohjelmointityökaluja, mieti, kuinka paljon koodia vaadittaisiin näiden esimerkkien suorittamiseen. Visual Basicissa joutuisit kirjoittamaan tapahtumakäsittelijän muutostapahtumalle jokaiselle tekstinsyötteen ohjausobjektille. Koodi, joka suorittaa jokaisen laskutoimituksen, on ylimääräinen ja saattaa joutua epätahtiin, tai joutuisit kirjoittamaan yleisen aliohjelman. Power Fxissa sait kaiken tehtyä yksittäisellä yhden rivin kaavalla.
  • Saat selville, mistä Label1-teksti on peräisin katsomalla vain teksti-ominaisuuden kaavaa. Tämän ohjausobjektin tekstiin ei voi vaikuttaa millään muulla tavalla. Perinteisessä ohjelmointityökalussa kaikki tapahtumakäsittelijät tai aliohjelmat voivat muuttaa nimen arvoa ohjelman missä tahansa kohdassa. Muuttujan muuttamisen ajan ja paikan jäljittäminen saattaa tällöin vaikeutua.
  • Jos käyttäjä tekee muutoksen liukusäätimeen ja muuttaa sitten mieltään, liukusäädin on mahdollista palauttaa sen alkuperäiseen arvoon. Mitään muutosta ei ole havaittavissa: sovellus näyttää samat ohjausobjektin arvot kuin aiemminkin. Kokeiluista ja entä jos -testailuista ei ole seuraamuksia samalla tavalla kuin Excelissä.

Yleisesti ottaen, jos voit saavuttaa tehosteen käyttämällä kaavaa, se kannattaa. Anna Power Fx -kaavamoduulin tehdä työt puolestasi.

Milloin muuttujia kannattaa käyttää

Muutetaan yksinkertainen lisäystoiminto siten, että se toimii kuin perinteinen laskin, joka näyttää juoksevan summan. Jos valitset Lisää-painikkeen, lisäät luvun juoksevaan summaan. Jos valitset Tyhjennä-painikkeen, palautat juoksevan summan nollaksi.

Näytä Kuvaus
Sovellus, jossa on tekstinsyötön ohjausobjekti, selite ja kaksi painiketta. Kun sovellus käynnistyy, juokseva summa on 0.

Punainen piste tarkoittaa käyttäjän sormea tekstinsyöttöruudussa, jossa käyttäjä kirjoittaa 77.
Tekstinsyötön ohjausobjekti sisältää 77, ja Lisää-painiketta painetaan. Käyttäjä valitsee Lisää-painikkeen.
Kokonaissumma on 77, ja siihen lisätään toinen 77. 77 lisätään juoksevaan kokonaissummaan.

Käyttäjä valitsee Lisää-painikkeen jälleen.
Kokonaissumma on 154, ennen kuin se tyhjennetään. 77 on taas lisätty juoksevaan kokonaissummaan, jolloin tuloksena on 154.

Käyttäjä valitsee Tyhjennä-painikkeen.
Kokonaissumma on poistetaan. Juoksevaksi kokonaissummaksi palautetaan 0.

Laskurimme käyttää jotain, mikä puuttuu Excelistä: painiketta. Tässä sovelluksessa ei voi käyttää vain kaavoja juoksevan summan laskemiseen, koska sen arvo vaihtelee useiden käyttäjän valitsemien toimintojen mukaan. Juokseva summa on sen sijaan tallennettava ja päivitettävä manuaalisesti. Useimmat ohjelmointityökalut tallentavat nämä tiedot muuttujaan.

Joskus tarvitset muuttujan sovellukseen, jotta se toimisi haluamallasi tavalla. Tehtävä ei ole helppo:

  • Juokseva summa täytyy päivittää manuaalisesti. Automaattinen uudelleenlaskenta ei tee sitä puolestasi.
  • Juoksevaa summaa ei enää voida laskea muiden ohjausobjektien arvojen perusteella. Tämä vaihtelee sen mukaan, miten monta kertaa käyttäjä valitsi Lisää-painikkeen ja mikä arvo tekstisyötteen ohjausobjektissa oli kullakin kerralla. Lisäsikö käyttäjä luvun 77 ja valitsi Lisää kahdesti, vai määrittikö hän luvut 24 ja 130 kullekin lisäykselle? Eroa ei ole, kun summa on saavuttanut luvun 154.
  • Muutokset summaan voivat olla peräisin eri poluilta. Tässä esimerkissä sekä Lisää- että Tyhjennä-painikkeilla voidaan päivittää summa. Jos sovellus ei toimi odotetulla tavalla, kumpi painike aiheuttaa ongelman?

Käytä yleistä muuttujaa

Jotta voimme luoda laskimen, tarvitsemme muuttujan, joka sisältää juoksevan summan. Power Fx-muuttujat, joiden kanssa on helpointa toimia, ovat yleisiä muuttujia.

Näin yleiset muuttujat toimivat:

  • Yleisen muuttujan arvo asetetaan Set-funktiolla. Set( MyVar, 1 ) asettaa yleisen muuttujan MyVar arvoon 1.
  • Yleistä muuttujaa käytetään viittaamalla nimeen, jota käytetään Set-funktion kanssa. Tässä tapauksessa MyVar palauttaa arvon 1.
  • Yleiset muuttujat voivat sisältää mitä tahansa arvoja, mukaan lukien merkkijonoja, lukuja, tietueita ja taulukkoja.

Rakennetaan laskuri uudelleen käyttämällä yleistä muuttujaa:

  1. Lisää tekstisyötteen ohjausobjekti nimeltä TextInput1 ja kaksi painiketta nimeltä Button1 ja Button2.

  2. Määritä Button1-painikkeen Teksti-ominaisuudeksi Lisää ja Button2-painikkeen Teksti-ominaisuudeksi Tyhjennä.

  3. Jotta juokseva summa päivittyisi aina, kun käyttäjä valitsee Lisää-painikkeen, määritä sen OnSelect-ominaisuudeksi seuraava kaava:

    Set( RunningTotal, RunningTotal + TextInput1.Text )

    Pelkkä tämän kaavan olemassaolo määrittää RunningTotal:n yleiseksi muuttujaksi, jossa on numero, koska sillä on +-operaattori. Voit viitata RunningTotal:iin missä tahansa sovelluksen sisällä. Kun käyttäjä avaa tämän sovelluksen, RunningTotalsisältää alkuarvon, joka on tyhjä.

    Kun käyttäjä valitsee Lisää-painikkeen ja Set, suoritetaan, RunningTotal-arvoksi määritetään RunningTotal + TextInput1.

    Lisää-painikkeen OnSelect-ominaisuuden arvoksi on asetettu Set-toiminto.

  4. Jotta juokseva summa määritettäisiin 0 aina, kun käyttäjä valitsee Tyhjennä-painikkeen, määritä sen OnSelect-ominaisuudeksi seuraava kaava:

    Set( RunningTotal, 0 )

    Tyhjennä-painikkeen OnSelect-ominaisuuden arvoksi on asetettu Set-toiminto.

  5. Lisää Selite-ohjausobjekti ja määritä sen Teksti-ominaisuudeksi RunningTotal.

    Tämä kaava lasketaan automaattisesti uudelleen, ja se näyttää käyttäjälle RunningTotal-arvon sen muuttuessa sen mukaan, mitä painikkeita käyttäjä valitsee.

    Selitteen Text-ominaisuuden arvoksi on määritetty muuttujan nimi.

  6. Esikatsele sovellusta, ja edellä kuvaamamme laskuri on valmis. Kirjoita numero tekstiruutuun ja paina Lisää-painiketta muutaman kerran. Kun olet valmis, palaa muokkausominaisuuteen Esc-näppäimellä.

    Tekstinsyötön ohjausobjekti sisältää arvon, ja selite sisältää juoksevan kokonaissumman.

  7. Jos haluat nähdä yleisen muuttujan arvon, valitse Tiedosto-valikko ja sitten Muuttujat vasemmanpuoleisesta ruudusta.

    Tiedosto-valikon Muuttujat-vaihtoehto.

  8. Jos haluat näyttää kaikki paikat, joissa muuttuja on määritetty ja sitä käytetään, valitse se.

    Muuttujan käyttösijaintien luettelo.

Muuttujien tyypit

Power Fx sisältää kahdenlaisia muuttujia:

Muuttujan tyyppi Käyttöalue Description Funktiot, jotka määrittävät
Yleiset muuttujat Sovellus Helpoin käyttää. Sisältää esimerkiksi luvun, tekstimerkkijonon, totuusarvon, tietueen tai taulukon, johon voidaan viitata missä tahansa sovelluksen kohdassa. Set
Kokoelmat Sovellus Sisältää taulukon, johon voidaan viitata mistä tahansa sovelluksen kohdasta. Sallii taulukon sisällön muokkaamisen sen sijaan, että se määritettäisiin kokonaisena. Voidaan tallentaa paikalliseen laitteeseen myöhempää käyttöä varten. Collect
ClearCollect

Power Appsissa käytössä on kolmas muuttujatyyppi:

Muuttujan tyyppi Laajuus Kuvaus Funktiot, jotka määrittävät
Kontekstimuuttujat Näyttö Sopii hyvin arvojen välittämiseen näyttöön, kuten parametrit toimintosarjassa muissa kielissä. Voidaan viitata vain yhdestä näytöstä. UpdateContext
Navigate

Muuttujien luominen ja poistaminen

Kaikki muuttujat luodaan implisiittisesti, kun ne näkyvät funktiossa Set, UpdateContext, Navigate, Collect tai ClearCollect. Jos haluat määrittää muuttujan ja sen tyypin, sinun täytyy lisätä se johonkin näistä toiminnoista missä tahansa sovelluksessa. Mikään näistä toiminnoista ei luo muuttujia, ne vain täyttävät muuttujat arvoilla. Muuttujia ei koskaan ilmoiteta erikseen samalla tavalla kuin jossakin toisessa ohjelmointityökalussa, ja kaikki tyypitys on implisiittistä toimintaa.

Sinulla voi olla esimerkiksi painikeohjausobjekti, jonka OnSelect-kaava obn Set( X, 1 ). Tämän kaavan avulla määritetään X muuttujaksi, jonka tyyppi on numero. Voit käyttää X:ää kaavoissa numerona, ja muuttujan arvo on tyhjä, kun sovellus avataan, mutta ennen painikkeen valitsemista. Kun valitset-painikkeen, annat X:lle arvo 1.

Jos lisäsit toisen painikkeen ja määrität sen OnSelect-ominaisuudeksi Set(X, "Hello"), virhe ilmenee, koska tyyppi (tekstimerkkijono) ei vastaa edellisen Set-suorituksen tyyppiä (numero). Kaikkien muuttujan implisiittisten määritysten on oltava yhdenmukaisia tyypin suhteen. Kaikki tämä tapahtui jälleen siksi , että X mainittiin kaavoissa, ei siksi, että mitään näistä kaavoista olisi todellisuudessa suoritettu.

Voit poistaa muuttujan poistamalla kaikki Set-, UpdateContext-, Navigate-, Collect- ja ClearCollect-funktiot, jotka implisiittisesti määrittävät muuttujan. Jos näitä toimintoja ei ole, muuttujaa ei ole. Sinun täytyy myös poistaa viittaukset muuttujaan, koska ne aiheuttavat virheen.

Muuttujan käyttöikä ja alkuarvo

Kaikki muuttujat säilytetään muistissa, kun sovellusta suoritetaan. Kun sovellus sulkeutuu, muuttujien sisältämät arvot menetetään.

Voit tallentaa muuttujan sisällön tietolähteessä käyttämällä Patch- tai Collect-funktioita. Voit myös tallentaa arvoja kokoelmiin paikallisessa laitteessa käyttämällä SaveData-toimintoa.

Kun käyttäjä avaa sovelluksen, kaikkien muuttujien alkuarvo on tyhjä.

Muuttujien lukeminen

Muuttujan arvo luetaan sen nimen avulla. Voit esimerkiksi määrittää muuttujan seuraavalla kaavalla:

Set( Radius, 12 )

Sen jälkeen voit käyttää sanaa Radius missä tahansa, missä voit käyttää numeroa, ja sen tilalle tulee 12:

Pi() * Power( Radius, 2 )

Jos annat kontekstimuuttujalle saman nimen kuin yleisellä muuttujalla tai kokoelmalla, kontekstimuuttuja on etusijalla. Voit kuitenkin edelleen viitata yleiseen muuttujaan tai kokoelmaan käyttämällä selvitysoperaattoria[@Radius].

Kontekstimuuttujan käyttäminen (vain Power Apps)

Katsotaan seuraavaksi, miten laskin luodaan käyttäen kontekstimuuttujaa yleisen muuttujan sijasta.

Näin kontekstimuuttujat toimivat:

  • Kontekstimuuttujat luodaan implisiittisesti käyttämällä UpdateContext- tai Navigate-funktiota. Kun sovelluksen käynnistyy, kaikkien kontekstimuuttujien arvo on tyhjä.
  • Kontekstimuuttujat päivitetään tietueiden kanssa. Muissa ohjelmointityökaluissa voidaan yleisesti käyttää merkkiä ”=” vastaamaan varausta, kuten ”x = 1”. Kontekstimuuttujien yhteydessä on käytössä { x: 1 }. Kun käytät kontekstimuuttujaa, käytä sen nimeä suoraan ilman tietueen syntaksia.
  • Voit myös määrittää kontekstimuuttujan käyttämällä Navigate-funktiota näytön näyttämiseen. Jos kuvittelet näytön olevan eräänlainen toimintosarja tai aliohjelma, tämä lähestymistapa muistuttaa parametrin välittämistä muissa ohjelmointityökaluissa.
  • Siirry-funktiota lukuun ottamatta kontekstimuuttujat on rajoitettu yhden näytön kontekstiin, jossa ne saavat nimensä. Niitä ei voi käyttää tai määrittää tämän kontekstin ulkopuolella.
  • Kontekstimuuttujat voivat sisältää mitä tahansa arvoja, mukaan lukien merkkijonoja, lukuja, tietueita ja taulukkoja.

Rakennetaan laskuri uudelleen käyttämällä kontekstimuuttujaa:

  1. Lisää tekstisyötteen ohjausobjekti nimeltä TextInput1 ja kaksi painiketta nimeltä Button1 ja Button2.

  2. Määritä Button1-painikkeen Teksti-ominaisuudeksi Lisää ja Button2-painikkeen Teksti-ominaisuudeksi Tyhjennä.

  3. Jotta juokseva summa päivittyisi aina, kun käyttäjä valitsee Lisää-painikkeen, määritä sen OnSelect-ominaisuudeksi seuraava kaava:

    UpdateContext( { RunningTotal: RunningTotal + TextInput1.Text } )

    Pelkkä tämän kaavan olemassaolo määrittää RunningTotal:n kontekstimuuttujaksi, jossa on numero, koska sillä on +-operaattori. Voit viitata RunningTotal:iin missä tahansa tässä näytössä. Kun käyttäjä avaa tämän sovelluksen, RunningTotalsisältää alkuarvon, joka on tyhjä.

    Kun käyttäjä valitsee Lisää-painikkeen ja UpdateContext suoritetaan, RunningTotal-arvoksi määritetään RunningTotal + TextInput1.

    Lisää-painikkeen OnSelect-ominaisuus

  4. Jotta juokseva summa määritettäisiin 0 aina, kun käyttäjä valitsee Tyhjennä-painikkeen, määritä sen OnSelect-ominaisuudeksi seuraava kaava:

    UpdateContext( { RunningTotal: 0 } )

    UpdateContext-funktiota käytetään kaavan UpdateContext( { RunningTotal: 0 } ) kanssa.

    Tyhjennä-painikkeen OnSelect-ominaisuus

  5. Lisää Selite-ohjausobjekti ja määritä sen Teksti-ominaisuudeksi RunningTotal.

    Tämä kaava lasketaan automaattisesti uudelleen, ja se näyttää käyttäjälle RunningTotal-arvon sen muuttuessa sen mukaan, mitä painikkeita käyttäjä valitsee.

    Selitteen Text-ominaisuus.

  6. Esikatsele sovellusta, ja edellä kuvaamamme laskuri on valmis. Kirjoita numero tekstiruutuun ja paina Lisää-painiketta muutaman kerran. Kun olet valmis, palaa muokkausominaisuuteen Esc-näppäimellä.

    Tekstinsyötön ohjausobjekti näyttää arvon, ja selite näyttää juoksevan kokonaissumman.

  7. Voit määrittää kontekstimuuttujan arvon siirtyessäsi näyttöön. Tästä on hyötyä välitettäessä kontekstia tai parametreja näytöstä toiseen. Tätä tekniikkaa voidaan esitellä lisäämällä näyttö, lisäämällä painike ja määrittämällä sen OnSelect-ominaisuudeksi tämä kaava:

    Navigate( Screen1, None, { RunningTotal: -1000 } )

    Painikkeen OnSelect-ominaisuus.

    Pidä Alt-näppäintä painettuna samalla, kun valitset tämän painikkeen, niin näkyviin tulee Screen1 ja määritä kontekstimuuttujan RunningTotal arvoksi -1000.

    Screen1 on avattu.

  8. Jos haluat nähdä kontekstimuuttujan arvon, valitse Tiedosto-valikko ja sitten Muuttujat vasemmanpuoleisesta ruudusta.

    Tiedosto-valikon Muuttujat-vaihtoehto.

  9. Jos haluat näyttää, missä kontekstimuuttuja määritetään ja missä sitä käytetään, valitse se.

    Muuttujan käyttöpaikkojen luettelo.

Kokoelmien käyttö

Tutustutaan lopuksi lisäyslaskimen luontiin kokoelman avulla. Koska kokoelma sisältää taulukon, jota on helppo muokata, teemme tästä laskimesta sellaisen, että se säilyttää ”paperinauhan” kustakin annetusta arvosta.

Näin kokoelmat toimivat:

  • Kokoelmia luodaan ja määritetään ClearCollect-funktiolla. Voit vaihtoehtoisesti käyttää Collect-funktiota, mutta käytännössä se edellyttää toista muuttujaa vanhan muuttujan korvaamisen sijasta.
  • Kokoelma on eräänlainen tietolähde ja näin ollen taulukko. Voit käyttää kokoelman yhtä arvoa First-funktion avulla ja poimia yhden kentän tuloksena saatavasta tietueesta. Jos käytit yksittäistä arvoa ClearCollect-funktiolla, tämä on Arvo-kenttä, kuten seuraavassa esimerkissä:
    First(VariableName).Value

Luodaan seuraavaksi laskin uudelleen kokoelman avulla:

  1. Lisää Tekstisyöte-ohjausobjekti TextInput1 ja kaksi painiketta Button1 ja Button2.

  2. Määritä Button1-painikkeen Teksti-ominaisuudeksi Lisää ja Button2-painikkeen Teksti-ominaisuudeksi Tyhjennä.

  3. Jotta juokseva summa päivittyisi aina, kun käyttäjä valitsee Lisää-painikkeen, määritä sen OnSelect-ominaisuudeksi seuraava kaava:

    Collect( PaperTape, TextInput1.Text )

    Pelkkä tämän kaavan olemassaolo määrittää PaperTape:n kokoelmaksi, joka sisältää yksisarakkeisen tekstimerkkijonotaulukon. Voit viitata PaperTape:en missä tahansa tämän sovelluksen sisällä. Kun käyttäjä avaa tämän sovelluksen, PaperTape on tyhjä taulukko.

    Tämä kaava suoritetaan, se lisää uuden arvon kokoelman loppuun. Koska lisäämme yksittäisen arvon, Collect sijoittaa sen automaattisesti yhden sarakkeen taulukkoon, jossa on sarake nimeltä Value, jota käytämme myöhemmin.

    OnSelect-ominaisuuden Lisää-painike

  4. Jotta paperinauha tyhjenee käyttäjän valitessa Tyhjennä-painikkeen, määritä sen OnSelect-ominaisuudeksi tämä kaava:

    Clear( PaperTape )

    OnSelect-ominaisuuden Tyhjennä-painike

  5. Näytä juokseva summa lisäämällä nimi, ja määritä sen Teksti-ominaisuudeksi tämä kaava:

    Sum( PaperTape, Value )

    Text-ominaisuuden selite

  6. Suorita laskin painamalla F5-näppäintä, mikä avaa esikatselun, lisää lukuja tekstisyötteen ohjausobjektiin ja valitse painikkeet.

    Tekstinsyötön ohjausobjekti näyttää arvon, ja selite näyttää juoksevan kokonaissumman.

  7. Palaa oletustyötilaan painamalla Esc-näppäintä.

  8. Näytä paperinauha lisäämällä Arvotaulukko-ohjausobjekti ja määritä sen Kohteet-ominaisuudeksi tämä kaava:

    PaperTape

    Valitse oikeanpuoleisesta ruudusta Muokkaa kenttiä ja valitse sitten Lisää kenttä, valitse Arvo-sarake ja valitse sitten Lisää, jotta kenttä näkyy.

    Tietotaulukko, joka näyttää kokoelmaan lisätyt arvot.

  9. Näytä kokoelman arvot valitsemalla Tiedosto-valikosta Kokoelmat.

    PaperTape-kokoelman esikatselu.

  10. Tallenna ja nouda kokoelma lisäämällä kaksi muuta painikeohjausobjektia ja määrittämällä niiden Text-ominaisuuksiksi Lataa ja Tallenna. Määritä Lataa-painikkeen OnSelect-ominaisuudeksi tämä kaava:

    Clear( PaperTape ); LoadData( PaperTape, "StoredPaperTape", true )

    Joudumme ensin tyhjentämään kokoelman, koska LoadData liittää tallennetut arvot kokoelman loppuun.

    OnSelect-ominaisuuden Lataa-painike

  11. Määritä Tallenna-painikkeen OnSelect-ominaisuudeksi seuraava kaava:

    SaveData( PaperTape, "StoredPaperTape" )

    OnSelect-ominaisuuden Tallenna-painike

  12. Esikatsele uudelleen painamalla F5-näppäintä, kirjoita luvut tekstisyötteen ohjausobjektiin ja valitse painikkeet. Valitse Tallenna-painike. Sulje ja lataa sovellus uudelleen ja lataa kokoelma uudelleen valitsemalla Lataa-painike.