Power Fx-variabelen

Opmerking

Microsoft Power Fx is de nieuwe naam voor de formuletaal van canvas-apps. Deze artikelen worden uitgevoerd terwijl Microsoft de taal uit canvas-apps extraheert, integreert met andere Microsoft Power Platform producten en deze beschikbaar maakt als open source. Begin met het Microsoft Power Fx-overzicht voor een inleiding in de taal.

Ontdek hoe Power Fx-variabelen verschillen van variabelen in hulpprogramma's zoals Visual Basic of JavaScript en wanneer formules een betere keuze zijn. In dit artikel wordt uitgelegd hoe u globale variabelen, contextvariabelen of verzamelingen kiest voor het beheren van app-waarden en -statussen.

In andere hulpprogramma's kunt u expliciet een berekening uitvoeren en het resultaat opslaan in een variabele. In Power Fx en Excel worden formules echter automatisch opnieuw berekend wanneer de invoergegevens worden gewijzigd, dus is het doorgaans niet nodig om variabelen te maken en bij te werken. Als u deze benadering zo vaak mogelijk gebruikt, wordt het eenvoudiger om uw app te maken, begrijpen en onderhouden.

In sommige gevallen moet u variabelen gebruiken in Power Fx. Power Fx breidt het model van Excel uit door gedragsformules toe te voegen. Deze formules worden uitgevoerd wanneer een gebruiker bijvoorbeeld een knop selecteert. In een gedragsformule is het vaak handig om een variabele in te stellen voor gebruik in andere formules.

Over het algemeen is het beter om het gebruik van variabelen te vermijden. Toch is het gewenste resultaat soms alleen mogelijk met een variabele. U maakt impliciet variabelen en typt deze wanneer deze worden weergegeven in functies die hun waarden instellen.

Excel vertalen naar Power Fx

Excel

Laten we bekijken hoe Excel werkt. Een cel kan een waarde bevatten, zoals een getal of een tekenreeks, of een formule die is gebaseerd op de waarden van andere cellen. Nadat de gebruiker een andere waarde in een cel heeft ingevoerd, worden eventuele formules die afhankelijk zijn van de nieuwe waarde opnieuw berekend in Excel. Voor dit gedrag hoeft u niets te programmeren.

In het volgende voorbeeld is cel A3 ingesteld op de formule A1+A2. Als A1 of A2 verandert, wordt A3 automatisch herberekend om de verandering weer te geven. Dit gedrag vereist geen codering buiten de formule zelf.

Schermopname van een Excel formule die de som opnieuw berekent nadat een invoerwaarde is gewijzigd.

Excel beschikt niet over variabelen. De waarde van een cel met een formule wordt gewijzigd op basis van de invoer, maar er is geen manier om het resultaat van een formule te onthouden en op te slaan in een cel of ergens anders. Als u de waarde van een cel wijzigt, kan het hele werkblad veranderen en gaan eventuele eerder berekende waarden verloren. Gebruikers van Excel kunnen cellen kopiëren en plakken, maar dit moet handmatig worden gedaan en is niet mogelijk met formules.

Power Fx

Logica die u in Power Fx maakt, heeft een werking die lijkt op die van Excel. In plaats van cellen bij te werken, kunt u waar u maar wilt op het scherm besturingselementen toevoegen en deze een naam geven om in formules te gebruiken.

U kunt in Power Apps bijvoorbeeld het Excel-gedrag repliceren in een app door een Label met de naam Label1 en twee besturingselementen Tekstinvoer met de namen Tekstinvoer1 en Tekstinvoer2 toe te voegen. Als u vervolgens de eigenschap Tekst van Label1 instelt op TextInput1.Text + TextInput2.Text, wordt altijd de som weergegeven van de getallen in TextInput1 en TextInput2 automatisch.

Schermopname van twee tekstinvoeren en een label dat een som berekent met een Power Fx-formule.

Het besturingselement Label1 is geselecteerd met de Text-formule in de formulebalk boven aan het scherm. Hier vindt u de formule TextInput1.Text + TextInput2.Text. Deze formule maakt een afhankelijkheid tussen deze besturingselementen, net zoals er afhankelijkheden worden gemaakt tussen de cellen in een Excel-werkmap. Laten we de waarde van Tekstinvoer1 wijzigen:

Schermopname van een Power Fx-formule die automatisch een som berekent wanneer een invoer wordt gewijzigd.

De formule voor Label1 wordt automatisch opnieuw berekend, met de nieuwe waarde.

U kunt in Power Fx formules niet alleen gebruiken om de primaire waarde van een besturingselement te bepalen, maar ook de eigenschappen, zoals de opmaak. In het volgende voorbeeld worden in een formule voor de eigenschap Kleur van het label automatisch negatieve waarden in rood weergegeven. De If-functie ziet er waarschijnlijk bekend uit van Excel:

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

Schermopname van een Power Fx-formule die een labelkleur wijzigt wanneer de berekende waarde negatief is.

U kunt formules gebruiken voor een groot aantal scenario's:

  • Door de GPS-functie van uw apparaat te gebruiken, kan een besturingselement voor kaarten en een formule die gebruikmaakt van Location.Latitude en Location.Longitude uw huidige locatie weergeven. Op de kaart wordt automatisch uw locatie bijgehouden terwijl u zich verplaatst.
  • Andere gebruikers kunnen gegevensbronnen bijwerken. Anderen in uw team kunnen bijvoorbeeld items in een SharePoint-lijst bijwerken. Wanneer u een gegevensbron vernieuwt, worden afhankelijke formules automatisch opnieuw berekend om de bijgewerkte gegevens weer te geven. Als u verdergaat met het voorbeeld, kunt u de eigenschap Items van een galerie instellen op het formulefilter( SharePointList), waarmee automatisch de zojuist gefilterde set records wordt weergegeven.

Voordelen van Power Fx-formules

Het gebruik van formules voor het bouwen van apps biedt veel voordelen:

  • Als u Excel kent, kent u Power Fx. Het model en de formuletaal zijn hetzelfde.
  • Als u andere programmeerprogramma's gebruikt, moet u overwegen hoeveel code u nodig hebt om deze voorbeelden uit te voeren. In Visual Basic zou u een gebeurtenis-handler moeten schrijven voor de wijzigingsgebeurtenis op elk besturingselement voor tekstinvoer. De code voor het uitvoeren van de berekening in elk van deze gebeurtenis-handlers is overbodig en kan worden gesynchroniseerd of u moet een algemene subroutine schrijven. In Power Fx kunt u dit allemaal doen met één regelformule.
  • Als u wilt weten waar de tekst van Label1 afkomstig is, weet u precies waar u moet zoeken: de formule in de eigenschap Tekst . Er is geen andere manier om de tekst van dit besturingselement te beïnvloeden. In een traditioneel programmeerprogramma kan elke gebeurtenis-handler of subroutine de waarde van het label waar dan ook in het programma wijzigen. Deze aanpak kan het lastig maken om te achterhalen wanneer en waar een variabele is gewijzigd.
  • Als gebruikers een schuifregelaar aanpassen en vervolgens van gedachten veranderen, kunnen ze de schuifregelaar terugzetten naar de oorspronkelijke waarde. Het is alsof er nooit iets is gewijzigd: in de app worden dezelfde besturingswaarden weergegeven als voorheen. Het heeft geen gevolgen om te experimenteren en u af te vragen 'wat als', net als in Excel.

Als u een effect kunt bereiken met behulp van een formule, bent u beter af. Laat de formule-engine in Power Fx het werk voor u doen.

Weten wanneer u variabelen gebruikt

Laten we eens proberen hoe het werkt als we een eenvoudige optelsom willen om een voorlopig totaal te krijgen. Als u een knop Toevoegen selecteert, voegt u een getal toe aan het lopende totaal. Als u een knop Wissen selecteert, stelt u het lopende totaal opnieuw in op nul.

Weergeven Beschrijving
Schermopname van een app voor het toevoegen van een machine met een totaal van nul en 77 ingevoerd in de tekstinvoer. Wanneer de app start, is het voorlopige totaal 0.

De rode stip vertegenwoordigt de vinger van de gebruiker in het tekstinvoervak, waar de gebruiker 77 invoert.
Schermopname van de machine toevoegen met 77 in de tekstinvoer terwijl de gebruiker Toevoegen selecteert. De gebruiker selecteert de knop Optellen.
Schermopname van de toevoegmachine met in totaal 77 voordat er nog eens 77 wordt toegevoegd. 77 wordt toegevoegd aan het voorlopige totaal.

De gebruiker selecteert opnieuw de knop Optellen.
Schermopname van de machine toevoegen met een totaal van 154 voordat de gebruiker Wissen selecteert. 77 wordt opnieuw opgeteld bij het voorlopige totaal, resulterend in 154.

De gebruiker selecteert de knop Wissen.
Schermopname van de machine toevoegen nadat het lopende totaal opnieuw is ingesteld op nul. Het voorlopige totaal wordt teruggezet op 0.

Voor onze optelsom wordt iets gebruikt dat niet bestaat in Excel: een knop. In deze app is het niet mogelijk om alleen formules te gebruiken om het voorlopige totaal te berekenen, omdat de waarde ervan afhankelijk is van een reeks acties die door de gebruiker wordt uitgevoerd. In plaats daarvan moet u het lopende totaal handmatig opnemen en bijwerken. In de meeste programmeerprogramma's worden deze gegevens opslagen in een variabele.

Soms hebt u een variabele nodig om uw app naar wens te laten werken. Maar er geldt nog enig voorbehoud voor deze benadering:

  • Het voorlopige totaal moet handmatig worden bijgewerkt. Het wordt niet automatisch herberekend.
  • U kunt het lopende totaal niet berekenen op basis van de waarden van andere besturingselementen. Dit is afhankelijk van hoe vaak de gebruiker de knop Optellen heeft geselecteerd en welke waarde er elke keer in het besturingselement voor tekstinvoer was ingevuld. Heeft de gebruiker 77 ingevoerd en twee keer Optellen geselecteerd of is er 24 en 130 opgegeven voor elke toevoeging? U kunt het verschil niet zien nadat het totaal 154 is bereikt.
  • Wijzigingen in het totaal kunnen op meerdere manieren tot stand zijn gekomen. In dit voorbeeld wordt het totaal bijgewerkt aan de hand van de knop Optellen en de knop Wissen. Welke knop veroorzaakt het probleem als de app niet naar verwachting functioneert?

Een globale variabele gebruiken

Als u uw toevoegmachine wilt maken, hebt u een variabele nodig om het lopende totaal op te slaan. De eenvoudigste variabelen om mee te werken in Power Fx zijn globale variabelen.

De werking van globale variabelen:

  • Gebruik de functie Set om de waarde van de globale variabele in te stellen. Set( MyVar, 1 ) stelt de globale variabele MyVar in op de waarde 1.
  • Gebruik de globale variabele door te verwijzen naar de naam die u hebt gebruikt met de functie Set . In dit geval retourneert MyVar1.
  • Globale variabelen kunnen uit een willekeurige waarde bestaan, waaronder tekenreeksen, getallen, records en tabellen.

Laten we onze optelsom opnieuw bouwen met een globale variabele:

  1. Voeg een tekstinvoerbesturingselement met de naam Tekstinvoer1 en twee knoppen met de naam Knop1 en Knop2 toe.

  2. Stel de eigenschap Text van Knop1 in op Optellen en stel de eigenschap Text van Knop2 in op Wissen.

  3. Als het voorlopige totaal moet worden bijgewerkt wanneer een gebruiker de knop Optellen selecteert, stelt u de eigenschap OnSelect in op deze formule:

    Set( RunningTotal, RunningTotal + TextInput1.Text )

    Dat deze formule bestaat, wordt bevestigd door RunningTotal: een globale variabele die een getal bevat dankzij de operator +. U kunt overal in de app verwijzen naar RunningTotal. Telkens wanneer de gebruiker deze app opent, heeft RunningTotal een beginwaarde van leeg.

    De eerste keer dat een gebruiker de knop Optellen selecteert en Set uitvoert, is RunningTotal ingesteld op de waarde RunningTotal + Tekstinvoer1.

    Schermopname van de eigenschap Add button OnSelect met behulp van Set om een globale Power Fx-variabele bij te werken.

  4. Om het voorlopige totaal in te stellen op 0 wanneer de gebruiker de knop Wissen selecteert, stelt u de eigenschap OnSelect in op deze formule:

    Set( RunningTotal, 0 )

    Schermopname van de eigenschap Clear button OnSelect met Set om een globale Power Fx-variabele opnieuw in te stellen.

  5. Voeg een besturingselement Label toe en stel de eigenschap Text ervan in op RunningTotal.

    Deze formule wordt automatisch opnieuw berekend en toont de gebruiker de waarde van RunningTotal wanneer deze wordt gewijzigd op basis van de knoppen die de gebruiker selecteert.

    Schermopname van een labelteksteigenschap met de waarde van de globale variabele RunningTotal.

  6. Bekijk een voorbeeld van de app en u hebt uw computer toegevoegd zoals eerder is beschreven. Voer een getal in het tekstvak in en druk een paar keer op de knop Optellen. Wanneer u klaar bent, gaat u terug naar de ontwerpervaring met behulp van de Esc-toets .

    Schermopname van het toevoegen van de voorbeeldweergave van de machine met een invoerwaarde en het berekende totaal.

  7. Als u de waarde van de globale variabele wilt weergeven, selecteert u het menu Bestand en selecteert u in het linkerdeelvenster Variabelen.

    Schermopname van de optie Globale variabelen geselecteerd in het menu Bestand in de app-editor.

  8. Selecteer de variabele voor een overzicht van alle locaties waar deze wordt gedefinieerd en gebruikt.

    Schermopname van de locaties waar een globale variabele is gedefinieerd en gebruikt in de app.

Typen variabelen

Power Fx heeft twee soorten variabelen:

Type variabele Bereik Beschrijving Functies voor vaststelling van
Algemene variabelen App Zijn het eenvoudigst te gebruiken. Bevat een getal, teksttekenreeks, Booleaanse waarde, record, tabel en meer. U kunt ernaar verwijzen vanaf elke locatie in de app. Set
Verzamelingen App Bevat een tabel waarnaar u overal in de app kunt verwijzen. U kunt de inhoud van de tabel wijzigen in plaats van deze als geheel in te stellen. U kunt het opslaan op het lokale apparaat voor later gebruik. Collect
ClearCollect

Wanneer u Power Apps gebruikt, ziet u een derde type variabele:

Type variabele Bereik Beschrijving Functies voor vaststelling van
Contextvariabelen Scherm Ideaal voor het doorgeven van waarden aan een scherm, zoals in andere talen parameters dat aan procedures doen. U kunt ernaar verwijzen vanuit slechts één scherm. UpdateContext
Navigate

Variabelen maken en verwijderen

U maakt alle variabelen impliciet wanneer ze worden weergegeven in een functie Set, UpdateContext, Navigate, Collect of ClearCollect . Als u een variabele en het bijbehorende type wilt declareren, neemt u deze op in een van deze functies overal in uw app. Geen van deze functies maakt variabelen; ze vullen alleen variabelen met waarden. U declareert variabelen nooit expliciet zoals u mogelijk zou doen in een andere programmeertool en alle typen worden impliciet bepaald door het gebruik.

Zo hebt u misschien een besturingselement Knop met een OnSelect-formule van Set( X, 1 ). Deze formule bepaalt dat X een variabele is van het type getal. U kunt X gebruiken in formules als getal en die variabele heeft de waarde leeg nadat u de app hebt geopend, maar voordat u de knop selecteert. Wanneer u de knop selecteert, geeft u X de waarde 1.

Als u een andere knop toevoegt en de eigenschap OnSelect instelt op Set( X, "Hallo" ), treedt er een fout op omdat het type (tekenreeks) niet overeenkomt met het type in de vorige set (getal). Alle impliciete definities van de variabele moeten qua type overeenkomen. Nogmaals, dit alles is gebeurd omdat u X in formules hebt genoemd, niet omdat een van deze formules daadwerkelijk is uitgevoerd.

U verwijdert een variabele door alle functies Set, UpdateContext, Navigate, Collect of ClearCollect te verwijderen waarin die de variabele impliciet wordt gedefinieerd. Zonder deze functies bestaat de variabele niet. U moet ook verwijzingen naar de variabele verwijderen omdat deze een fout veroorzaken.

Levensduur en beginwaarde van variabelen

De app bevat alle variabelen in het geheugen terwijl deze wordt uitgevoerd. Wanneer de app wordt gesloten, gaan de waarden die zich in de variabelen bevinden, verloren.

U kunt de inhoud van een variabele opslaan in een gegevensbron met behulp van de functies Patch of Collect. U kunt waarden ook opslaan in verzamelingen op het lokale apparaat met behulp van de functie SaveData.

Wanneer de gebruiker de app opent, hebben alle variabelen een beginwaarde van leeg.

Variabelen lezen

Gebruik de naam van de variabele om de waarde ervan te lezen. U kunt bijvoorbeeld een variabele definiëren met deze formule:

Set( Radius, 12 )

Vervolgens kunt u Radius overal gebruiken waar u een getal kunt gebruiken en wordt vervangen door 12:

Pi() * Power( Radius, 2 )

Als u een contextvariabele dezelfde naam geeft als een globale variabele of een verzameling, heeft de contextvariabele voorrang. U kunt echter nog steeds verwijzen naar de globale variabele of een verzameling als u gebruikmaakt van de ondubbelzinnigheidsoperator[@Radius].

Een contextvariabele gebruiken (alleen Power Apps)

U kunt als volgt de toevoegende machine maken met behulp van een contextvariabele in plaats van een globale variabele.

De werking van contextvariabelen:

  • Contextvariabelen worden impliciet gemaakt en ingesteld via de functie UpdateContext of Navigate. Wanneer de app wordt gestart, hebben alle contextvariabelen een beginwaarde van leeg.
  • U kunt contextvariabelen bijwerken met records. In andere programmeerprogramma's gebruikt u doorgaans "=" voor toewijzingen, zoals in "x = 1". Voor contextvariabelen gebruikt u { x: 1 } in plaats daarvan. Wanneer u een contextvariabele gebruikt, gebruikt u de naam rechtstreeks zonder de recordsyntaxis.
  • U kunt een contextvariabele ook instellen wanneer u gebruikmaakt van de functie Navigate om een scherm weer te geven. Als u een scherm als een soort procedure of subroutine beschouwt, lijkt deze aanpak op het doorgeven van parameters in andere programmeertools.
  • Behalve voor Navigate zijn contextvariabelen beperkt tot de context van een enkel scherm. Vandaar de naam. Het is niet mogelijk om ze buiten deze context te gebruiken of in te stellen.
  • Contextvariabelen kunnen uit een willekeurige waarde bestaan, waaronder tekenreeksen, getallen, records en tabellen.

Laten we onze optelsom opnieuw bouwen met een contextvariabele:

  1. Voeg een tekstinvoerbesturingselement met de naam Tekstinvoer1 en twee knoppen met de naam Knop1 en Knop2 toe.

  2. Stel de eigenschap Text van Knop1 in op Optellen en stel de eigenschap Text van Knop2 in op Wissen.

  3. Als het voorlopige totaal moet worden bijgewerkt wanneer een gebruiker de knop Optellen selecteert, stelt u de eigenschap OnSelect in op deze formule:

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

    Dat deze formule bestaat, wordt bevestigd door RunningTotal als een contextvariabele die een getal bevat dankzij de operator +. U kunt overal in dit scherm verwijzen naar RunningTotal. Telkens wanneer de gebruiker deze app opent, heeft RunningTotal een beginwaarde van leeg.

    De eerste keer dat de gebruiker de knop Optellen selecteert en UpdateContext uitvoert, is RunningTotal ingesteld op de waarde RunningTotal + Tekstinvoer1.

    Schermopname van de eigenschap Add onSelect bij het bijwerken van de contextvariabele RunningTotal.

  4. Om het voorlopige totaal in te stellen op 0 wanneer de gebruiker de knop Wissen selecteert, stelt u de eigenschap OnSelect in op deze formule:

    UpdateContext( { RunningTotal: 0 } )

    De variabele UpdateContext wordt opnieuw gebruikt met de formule UpdateContext( {{ RunningTotal: 0 }} ).

    Schermopname van de eigenschap Clear onSelect waarmee de contextvariabele RunningTotal opnieuw wordt insteld.

  5. Voeg een besturingselement Label toe en stel de eigenschap Text ervan in op RunningTotal.

    Deze formule wordt automatisch opnieuw berekend en toont de gebruiker de waarde van RunningTotal wanneer deze wordt gewijzigd op basis van de knoppen die de gebruiker selecteert.

    Schermopname van een labelteksteigenschap met de waarde van de contextvariabele RunningTotal.

  6. Bekijk een voorbeeld van de app en u hebt uw toevoegende machine zoals eerder beschreven. Voer een getal in het tekstvak in en druk een paar keer op de knop Optellen. Wanneer u klaar bent, gaat u terug naar de ontwerpervaring met behulp van de Esc-toets .

    Schermopname van het voorbeeld van de app met een tekstinvoerwaarde en een contextvariabele die het totaal uitvoert.

  7. U kunt de waarde van een contextvariabele instellen tijdens het navigeren naar een scherm. Deze techniek is handig voor het doorgeven van 'context' of 'parameters' van het ene scherm aan het andere. Om deze techniek te demonstreren, voegt u een scherm in, voegt u een knop in en stelt u de eigenschap OnSelect hiervan in op deze formule:

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

    Schermopname van de eigenschap OnSelect met behulp van Navigate om een contextvariabele door te geven aan Screen1.

    Houd de Alt-toets ingedrukt terwijl u deze knop selecteert om Zowel Screen1 weer te geven als de contextvariabele RunningTotal in te stellen op -1000.

    Schermopname van Screen1 nadat de contextvariabele RunningTotal is ingesteld op negatief 1000.

  8. Als u de waarde van de contextvariabele wilt weergeven, selecteert u het menu Bestand en selecteert u Variabelen in het linkerdeelvenster.

    Schermopname van de optie Contextvariabelen geselecteerd in het menu Bestand in de app-editor.

  9. Selecteer de contextvariabele om te zien waar deze is gedefinieerd en gebruikt.

    Schermopname van de locaties waar een contextvariabele is gedefinieerd en gebruikt in de app.

Een verzameling gebruiken

Tot slot bekijken we het maken van onze optelmachine met een verzameling. Omdat een verzameling een tabel bevat die u eenvoudig kunt wijzigen, houdt deze toevoegingsmachine een 'paper tape' van elke waarde bij wanneer u deze invoert.

De werking van verzamelingen:

  • Gebruik de functie ClearCollect om verzamelingen te maken en in te stellen. U kunt in plaats daarvan de functie Collect gebruiken, maar hiervoor is effectief een andere variabele vereist in plaats van de oude te vervangen.
  • Een verzameling is een soort gegevensbron en daarom een tabel. Voor toegang tot een enkele waarde in een verzameling gebruikt u de functie First en extraheert u één veld uit de resulterende record. Als u één waarde met ClearCollect gebruikt, is deze waarde het veld Waarde , zoals in dit voorbeeld:
    First(VariableName).Value

Laten we onze optelmachine opnieuw maken met behulp van een verzameling:

  1. Voeg een tekstinvoerbesturingselement met de naam Tekstinvoer1 en twee knoppen met de naam Knop1 en Knop2 toe.

  2. Stel de eigenschap Text van Knop1 in op Optellen en stel de eigenschap Text van Knop2 in op Wissen.

  3. Als het voorlopige totaal moet worden bijgewerkt wanneer een gebruiker de knop Optellen selecteert, stelt u de eigenschap OnSelect in op deze formule:

    Collect( PaperTape, TextInput1.Text )

    Puur het bestaan van deze formule bevestigt PaperTape als verzameling met een tabel met één kolom die tekenreeksen bevat. U kunt overal in deze app verwijzen naar PaperTape. Telkens wanneer een gebruiker deze app opent, is PaperTape een lege tabel.

    Als deze formule wordt uitgevoerd, wordt de nieuwe waarde toegevoegd aan het einde van de verzameling. Omdat u één waarde toevoegt, plaatst Collect deze automatisch in een tabel met één kolom en is de naam van de kolom Waarde, die u later gebruikt.

    Schermopname van de knop OnSelect-eigenschap Toevoegen die een invoerwaarde verzamelt in PaperTape.

  4. Om de papieren strook te wissen wanneer de gebruiker de knop Wissen selecteert, stelt u de eigenschap OnSelect in op deze formule:

    Clear( PaperTape )

    Schermopname van de eigenschap OnSelect wissen van alle waarden uit PaperTape.

  5. Als u het voorlopige totaal wilt weergeven, voegt u een label toe en stelt u de eigenschap Text ervan in op deze formule:

    Sum( PaperTape, Waarde )

    Schermopname van een labelteksteigenschap met sum om het totaal van papertape te berekenen.

  6. Als u de optelsom wilt uitvoeren, drukt u op F5 om het voorbeeld te openen, voert u in het besturingselement voor tekstinvoer getallen in en selecteert u knoppen.

    Schermopname van de op verzameling gebaseerde machine toevoegen met een invoerwaarde en het totaal wordt uitgevoerd.

  7. Druk op Esc om terug te keren naar de standaardwerkruimte.

  8. Als u de papieren strook wilt weergeven, voegt u een besturingselement Gegevenstabel in en stelt u de eigenschap Items in op deze formule:

    PaperTape

    Selecteer in het rechterdeelvenster Velden bewerken en selecteer vervolgens Veld toevoegen, selecteer de kolom Waarde en selecteer vervolgens Toevoegen voor weergave.

    Schermopname van een gegevenstabel met de waarden die zijn toegevoegd aan de PaperTape-verzameling.

  9. Als u de waarden in uw verzameling wilt bekijken, selecteert u Verzamelingen in het menu Bestand.

    Schermopname van de weergave Verzamelingen met de opgeslagen waarden in de PaperTape-verzameling.

  10. Als u uw verzameling wilt opslaan en ophalen, voegt u twee extra knopbesturingselementen toe en stelt u hun eigenschappen Text in op Load en Save. Stel de eigenschap OnSelect van de knop Laden in op deze formule:

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

    U moet de verzameling eerst wissen, omdat LoadData de opgeslagen waarden toevoegt aan het einde van de verzameling.

    Schermopname van de knop Laden van eigenschap OnSelect die de PaperTape-verzameling wist en laadt.

  11. Stel de eigenschap OnSelect van de knop Opslaan in op deze formule:

    SaveData( PaperTape, "StoredPaperTape" )

    Schermopname van de eigenschap Opslaan opSelect, waardoor de PaperTape-verzameling lokaal wordt opgeslagen.

  12. Bekijk opnieuw een voorbeeld door op de F5-toets te drukken, getallen in te voeren in het besturingselement voor tekstinvoer en knoppen te selecteren. Selecteer de knop Opslaan. Sluit de app, start deze opnieuw en selecteer de knop Laden om uw verzameling opnieuw te laden.