Zmienne
Uwaga
Microsoft Power Fx to nowa nazwa języka formuł dla aplikacji kanw. Te artykuły są pracą w toku, gdyż stale wyodrębniamy język z aplikacji kanw, integrujemy go z innymi produktami Microsoft Power Platform i udostępniamy jako rozwiązanie open source. Zacznij od przeglądu Microsoft Power Fx, aby znaleźć wprowadzenie do języka.
Jeśli korzystasz z innego narzędzia programistycznego, takiego jak Visual Basic lub JavaScript, możesz zastanawiać się: gdzie są zmienne? Microsoft Power Fx jest trochę inny i wymaga innego podejścia. Zamiast sięgać po zmienną podczas tworzenia formuły, spróbuj odpowiedzieć na pytanie: jak wyglądałyby moje działania w arkuszu kalkulacyjnym?
W innych narzędziach możliwe było jawne wykonywanie obliczeń i przechowywanie wyników w zmiennej. Niemniej usługa Power Fx i program Excel automatycznie ponownie obliczają formuły w przypadku zmiany danych wejściowych, więc zazwyczaj nie zachodzi potrzeba tworzenia i aktualizowania zmiennych. Dzięki zastosowaniu takiego podejścia w miarę możliwości można łatwiej utworzyć, zrozumieć i konserwować aplikację.
W niektórych przypadkach może być wymagane użycie zmiennych w usłudze Power Fx, co prowadzi do rozszerzenia modelu opartego na programie Excel przez dodanie formuł behawioralnych. Formuły te mogą być uruchamiane przykładowo wtedy, gdy użytkownik wybierze przycisk. Często pomocne jest ustawienie w formule behawioralnej zmiennej, która będzie używana w innych formułach.
Ogólnie rzecz biorąc, należy unikać używania zmiennych. Czasami jednak tylko zmienna może zapewnić żądane rezultaty. Zmienne są tworzone i wpisywane niejawnie podczas wyświetlania w funkcjach ustawiających ich wartości.
Tłumaczenie programu Excel na usługę Power Fx
Excel
Przypomnijmy, jak działa program Excel. Komórka może zawierać wartość, np. liczbę lub ciąg, bądź formułę opartą na wartościach innych komórek. Gdy użytkownik wprowadzi inną wartość w komórce, program Excel automatycznie ponownie obliczy wszelkie formuły, które zależą od nowej wartości. Aby włączyć to zachowanie, nie jest wymagane żadne programowanie.
W poniższym przykładzie komórka A3 ma ustawioną formułę A1+A2. Jeśli wartość A1 lub A2 zmieni się, wartość komórki A3 zostanie automatycznie obliczona ponownie w celu odzwierciedlenia zmiany. To zachowanie nie wymaga pisania kodu poza formułą.
Program Excel nie ma zmiennych. Wartość komórki, która zawiera formułę, zmienia się w oparciu o wprowadzone dane, ale nie ma sposobu na zapamiętanie wyników formuły i zapisanie ich w komórce lub innym miejscu. Jeśli zmienisz wartość komórki, cały arkusz może ulec zmianie, a poprzednio obliczone wartości zostaną utracone. Użytkownik programu Excel może kopiować i wklejać komórki, niemniej jednak takie działanie podlega ręcznej kontroli ze strony użytkownika i nie jest możliwe do zrealizowania za pomocą formuł.
Power Fx
Logika utworzona w Power Fx zachowuje się bardzo podobnie do programu Excel. Zamiast aktualizowania komórek można dodać kontrolki w dowolnym miejscu na ekranie i nazwać je w celu późniejszego użycia w formułach.
Na przykład można replikować zachowanie programu Excel w aplikacji Power Apps poprzez dodanie kontrolki Etykieta o nazwie Label1 oraz dwóch kontrolek Wprowadzanie tekstu o nazwach TextInput1 i TextInput2. Jeśli następnie ustawisz właściwość Text kontrolki Label1 na wartość TextInput1.Text + TextInput2.Text, zawsze będzie ona automatycznie pokazywać sumę liczb wprowadzonych w polach TextInput1 i TextInput2.
Zwróć uwagę, że została wybrana kontrolka Label1 i na pasku formuły u góry ekranu jest wyświetlana jej formuła dla właściwości Text. W tym miejscu możemy znaleźć formułę TextInput1.Text + TextInput2.Text. Ta formuła tworzy zależność między tymi kontrolkami, tak jak w przypadku zależności tworzonych między komórkami w skoroszycie programu Excel. Zmieńmy wartość pola TextInput1:
Formuła kontrolki Label1 została automatycznie ponownie obliczona i wyświetla nową wartość.
W usłudze Power Fx można używać formuł do określania wartości podstawowej kontrolki, a także jej właściwości, np. formatowania. W następnym przykładzie formuła dla właściwości Color etykiety będzie automatycznie wskazywać wartości ujemne w kolorze czerwonym. Funkcja If powinna wyglądać podobnie do funkcji programu Excel:
If( Value(Label1.Text) < 0, Color.Red, Color.Black )
Formuły mają szerokie zastosowanie w wielu różnych scenariuszach:
- Używając funkcji GPS w urządzeniu, kontrolka mapy może wyświetlić bieżącą lokalizację oraz formułę z właściwościami Location.Latitude i Location.Longitude. W trakcie przemieszczania się mapa będzie automatycznie śledzić Twoją lokalizację.
- Inni użytkownicy mogą aktualizować źródła danych. Na przykład inni członkowie zespołu mogą aktualizować elementy na liście programu SharePoint. Podczas odświeżania źródła danych wszelkie zależne formuły są automatycznie ponownie obliczane, aby odzwierciedlić zaktualizowane dane. W tym przykładzie można ustawić właściwość Items galerii na formułę Filter( SharePointList ), która będzie automatycznie wyświetlać nowo odfiltrowany zbiór rekordów.
Korzyści
Używanie formuł do tworzenia aplikacji ma wiele zalet:
- Jeśli znasz program Excel, znasz też usługę Power Fx. Model i język formuł są takie same.
- Jeśli używasz innych narzędzi programistycznych, pomyśl, ile kodu byłoby potrzebnego do wykonania tych przykładów. W języku Visual Basic wymagane byłoby napisanie procedury obsługi zdarzeń dla zdarzenia zmiany w każdej kontrolce wprowadzania tekstu. Kod do wykonywania obliczeń w każdej z tych procedur byłby nadmiarowy i mógłby wystąpić brak ich synchronizacji. Innym rozwiązaniem byłoby napisanie wspólnej procedury podrzędnej. W usłudze Power Fx wszystko to zostało zrealizowane przy użyciu pojedynczej jednowierszowej formuły.
- Dokładnie wiemy, gdzie znaleźć informacje o pochodzeniu tekstu kontrolki Label1: należy sprawdzić formułę we właściwości Text. Nie istnieje inny sposób wpływania na tekst tej kontrolki. W tradycyjnych narzędziach do programowania dowolna procedura obsługi zdarzeń lub procedura podrzędna mogły zmienić wartość etykiety z dowolnego miejsca w programie. W takim przypadku wykrycie miejsca i czasu modyfikacji zmiennej może być trudne.
- Jeśli użytkownik zmieni ustawienie kontrolki suwaka, a następnie zmieni zdanie, może cofnąć suwak do oryginalnej wartości. Będzie tak, jakby nic nie zostało zmienione: aplikacja będzie wyświetlać te same wartości kontrolki co wcześniej. Nie trzeba testować żadnych ewentualności ani zastanawiać się „a co, jeśli...?”, tak jak nie trzeba tego robić w przypadku programu Excel.
Ogólnie rzecz biorąc, jeśli dany efekt można uzyskać przy użyciu formuły, będzie to lepsze rozwiązanie. Pozwól, aby to aparat formuły w usłudze Power Fx zajął się pracą.
Kiedy używać zmiennych
Zmieńmy nasz prosty moduł dodający, aby działał jak stara maszyna do dodawania z sumą bieżącą. W przypadku wybrania przycisku dodawania liczba zostanie dodana do sumy bieżącej. W przypadku wybrania przycisku czyszczenia suma bieżąca zostanie zresetowana do wartości zero.
Wyświetlanie | Opis |
---|---|
Po uruchomieniu aplikacji suma bieżąca wynosi 0. Czerwona kropka reprezentuje palec użytkownika w polu wprowadzania tekstu, w którym użytkownik wpisuje numer 77. |
|
Użytkownik wybiera przycisk Dodaj. | |
Liczba 77 jest dodawana do sumy bieżącej. Użytkownik ponownie wybiera przycisk Dodaj. |
|
Liczba 77 jest ponownie dodawana do sumy bieżącej, a wynik wynosi 154. Użytkownik wybiera przycisk Wyczyść. |
|
Suma bieżąca jest resetowana do wartości 0. |
Nasza maszyna do dodawania używa czegoś, co nie istnieje w programie Excel: przycisku. W tej aplikacji nie można używać wyłącznie formuł do obliczania sumy bieżącej, ponieważ jej wartość zależy od szeregu akcji podejmowanych przez użytkownika. Zamiast tego suma bieżąca musi być rejestrowana i aktualizowana ręcznie. Większość narzędzi do programowania przechowuje te informacje w zmiennej.
Czasami zachodzi potrzeba, aby zmienna aplikacji zachowywała się w konkretny sposób. Niemniej istnieją pewne zastrzeżenia do takiego podejścia:
- Trzeba ręcznie aktualizować sumę bieżącą. Automatyczne ponowne obliczenie nie zrobi tego za Ciebie.
- Suma bieżąca nie może być już obliczana w oparciu o wartości innych kontrolek. Zależy to od tego, jak wiele razy użytkownik wybrał przycisk dodawania oraz od wartości, jaka znajdowała się w kontrolce wprowadzania tekstu za każdym razem. Czy użytkownik dwukrotnie wprowadził liczbę 77 i wybrał przycisk dodawania, czy podał liczby 24 i 130 dla każdego dodawania? Po osiągnięciu sumy 154 nie można odróżnić tych dwóch działań.
- Zmiany w sumie mogą pochodzić z różnych ścieżek. W tym przykładzie oba przyciski, dodawania i czyszczenia, mogą aktualizować sumę. Jeśli aplikacja nie działa w oczekiwany sposób, który z przycisków powoduje problem?
Używanie zmiennej globalnej
Aby utworzyć maszynę dodającą, potrzebujemy zmiennej do przechowywania sumy bieżącej. Najprostsze zmienne do pracy w usłudze Power Fx to zmienne globalne.
Sposób działania zmiennych globalnych:
- Wartość zmiennej globalnej ustawia się przy użyciu funkcji Set. Set( MojaZmienna, 1 ) ustawia zmienną globalną MojaZmienna na wartość 1.
- Zmiennej globalnej używa się przez odwołanie do nazwy użytej w funkcji Set. W tym przypadku zmienna MyVar zwróci wartość 1.
- Zmienne globalne mogą przechowywać dowolne wartości, w tym ciągi, liczby, rekordy i tabele.
Przebudujmy naszą maszynę dodającą, używając zmiennej globalnej:
Dodaj kontrolkę wprowadzania tekstu o nazwie TextInput1 oraz dwa przyciski o nazwach Button1 i Button2.
Ustaw właściwość Text przycisku Button1 na wartość „Add” oraz właściwość Text przycisku Button2 na wartość „Clear”.
Aby zaktualizować sumę bieżącą za każdym razem, gdy użytkownik wybierze przycisk dodawania, ustaw jego właściwość OnSelect na następującą formułę:
Set( RunningTotal, RunningTotal + TextInput1.Text )
Sam fakt istnienia tej formuły powoduje, że element RunningTotal staje się zmienną globalną, która przechowuje liczbę, z powodu operatora +. Do elementu RunningTotal można odwoływać się w dowolnym miejscu w aplikacji. Za każdym razem, gdy użytkownik otwiera tę aplikację, zmienna RunningTotal ma pustą wartość początkową.
Gdy użytkownik po raz pierwszy wybierze przycisk dodawania i uruchomi funkcję Set, zmienna RunningTotal zostanie ustawiona na wartość RunningTotal + TextInput1.
Aby ustawić sumę bieżącą na wartość 0 za każdym razem, gdy użytkownik wybierze przycisk czyszczenia, ustaw jego właściwość OnSelect na następującą formułę:
Ustaw( SumaBiegowa, 0 )
Dodaj kontrolkę Etykieta i ustaw jej właściwość Text na wartość RunningTotal.
Ta formuła zostanie automatycznie ponownie obliczona i będzie przedstawiać użytkownikowi wartość RunningTotal, gdy będzie ona zmieniana w oparciu o przyciski wybierane przez użytkownika.
Wyświetl podgląd aplikacji. Mamy już maszynę dodającą opisaną powyżej. Wprowadź liczbę w polu tekstowym i naciśnij przycisk dodawania kilka razy. Po wykonaniu tych czynności wróć do środowiska tworzenia przy użyciu klawisza Esc.
Aby pokazać wartość zmiennej globalnej, wybierz menu Plik i wybierz opcję Zmienne w okienku po lewej stronie.
Aby pokazać wszystkie miejsca, w których nasza zmienna jest definiowana i używana, wybierz ją.
Typy zmiennych
Usługa Power Fx ma dwa typy zmiennych:
Typ zmiennych | Scope | opis | Ustanawiane funkcje |
---|---|---|---|
Zmienne globalne | App | Najprostsze w użyciu. Przechowują liczbę, ciąg tekstowy, wartość logiczną, rekord, tabelę itp., które mogą być przywoływane z dowolnego miejsca w aplikacji. | Zbiór |
Kolekcje | Aplikacja | Przechowują tabele, które mogą być przywoływane z dowolnego miejsca w aplikacji. Pozwalają na modyfikowanie zawartości tabeli zamiast ustawiania tabeli jako całości. Można je zapisywać na urządzeniu lokalnym do późniejszego użycia. | Zbierać ClearCollect (Zbieranie danych) |
Gdy używane jest Power Apps, istnieje zmienna trzeciego typu:
Typ zmiennych | Scope | Opis | Ustanawiane funkcje |
---|---|---|---|
Zmienne kontekstu | Ekran | Doskonale sprawdzają się przy przekazywaniu wartości na ekran, podobnie do parametrów przekazujących wartości do procedury w innych językach. Mogą być przywoływane tylko z jednego ekranu. | Element UpdateContext Sterować |
Tworzenie i usuwanie zmiennych
Wszystkie zmienne są tworzone w sposób jawny, gdy są wyświetlane w funkcji Set, UpdateContext, Navigate, Collect lub ClearCollect. Aby zadeklarować zmienną i jej typ, musisz tylko uwzględnić ją w dowolnej spośród tych funkcji w dowolnym miejscu aplikacji. Żadna z tych funkcji nie tworzy zmiennych; są one jedynie wypełniane zmiennymi z wartościami. Zmienne nie są nigdy deklarowane w sposób jawny, jeśli są używane w innym narzędziu programistycznym, a wszystkie dane wpisywane są niejawne na podstawie użycia.
Możesz na przykład utworzyć kontrolkę przycisku z formułą OnSelect równą Set(X, 1). Ta formuła określa X jako zmienną typu liczbowego. Symbolu X możesz używać w formułach jako liczby, a zmienna ma wartość pustą po otwarciu aplikacji, ale przed wybraniem przycisku. Po wybraniu przycisku nadajesz symbolowi X wartość 1.
Jeśli dodano inny przycisk i ustawiono jego właściwość OnSelect na Set( X, „Hello” ), wystąpi błąd, ponieważ typ (ciąg tekstowy) nie pasuje do typu poprzedniego zestawu (liczby). We wszystkich jawnych definicjach zmiennej muszą mieć zgodny typ. Tak się stało, ponieważ w formułach wskazano X, a nie ponieważ w rzeczywistości wykonano dowolną spośród tych formuł.
Aby usunąć zmienną, usuwasz wszystkie funkcje Set, UpdateContext, Navigate, Collect lub ClearCollect, które niejawnie ustanawiają zmienną. Bez tych funkcji zmienna nie istnieje. Musisz również usunąć wszystkie odwołania do zmiennej, ponieważ spowodują one błąd.
Okres istnienia i wartość początkowa zmiennej
Wszystkie zmienne są przechowywane w pamięci, gdy aplikacja działa. Po zamknięciu aplikacji wartości przechowywane w zmiennych są tracone.
Zawartość zmiennej można zapisać w źródle danych, korzystając z funkcji Patch lub Collect. Wartości kolekcji można również przechowywać na urządzeniu lokalnym za pomocą funkcji SaveData.
Kiedy użytkownik otwiera aplikację, wszystkie zmienne mają początkową wartość pustą.
Odczytywanie zmiennych
Aby odczytać wartość zmiennej, należy użyć ich nazw. Na przykład można zdefiniować zmienną przy użyciu tej formuły:
Set( Radius, 12 )
Następnie wystarczy użyć funkcji Radius wszędzie, gdzie można użyć numeru, a wartość zostanie zastąpiona liczbą 12:
Pi() * Power( Radius, 2 )
Jeśli zmienna kontekstu ma taką samą nazwę jak zmienna globalna lub kolekcja, zmienna kontekstu ma pierwszeństwo. Nadal można jednak odwoływać się do zmiennej globalnej lub kolekcję, jeśli użyjesz operatora uściślania[@Radius].
Użyj zmiennej kontekstu (tylko Power Apps)
Sprawdźmy, w jaki sposób można utworzyć naszą maszynę dodającą przy użyciu zmiennej kontekstu zamiast zmiennej globalnej.
Sposób działania zmiennych kontekstu:
- Zmienne kontekstu są ustanawiane i ustawianie niejawnie za pomocą funkcji UpdateContext lub funkcji Navigate. Gdy aplikacja jest uruchamiana, wartość początkowa wszystkich zmiennych to wartość pusta.
- Zmienne kontekstu są aktualizowane przy użyciu rekordów. W innych narzędziach do programowania zazwyczaj używa się znaku „=” w celu przypisania, np. „x = 1”. W przypadku zmiennych kontekstu należy w zamian użyć składni { x: 1 }. Jeśli jest stosowana zmienna kontekstu, należy użyć jej nazwy bezpośrednio bez składni rekordu.
- Można również ustawić zmienną kontekstu, gdy ekran jest pokazywany przy użyciu funkcji Navigate. Jeśli uznamy ekran za rodzaj procedury lub procedury podrzędnej, to podejście będzie podobne do przekazywania parametru w innych narzędziach do programowania.
- Z wyjątkiem funkcji Navigate zmienne kontekstowe są ograniczone do kontekstu jednego ekranu, w którym uzyskują nazwę. Nie można używać ani ustawiać ich poza tym kontekstem.
- Zmienne kontekstu mogą przechowywać dowolne wartości, w tym ciągi, liczby, rekordy i tabele.
Przebudujmy naszą maszynę dodającą, używając zmiennej kontekstu:
Dodaj kontrolkę wprowadzania tekstu o nazwie TextInput1 oraz dwa przyciski o nazwach Button1 i Button2.
Ustaw właściwość Text przycisku Button1 na wartość „Add” oraz właściwość Text przycisku Button2 na wartość „Clear”.
Aby zaktualizować sumę bieżącą za każdym razem, gdy użytkownik wybierze przycisk dodawania, ustaw jego właściwość OnSelect na następującą formułę:
UpdateContext( { RunningTotal: RunningTotal + TextInput1.Text } )
Sam fakt istnienia tej formuły powoduje, że element RunningTotal staje się zmienną kontekstu, która przechowuje liczbę, z powodu operatora +. Do elementu RunningTotal można odwoływać się w dowolnym miejscu na tym ekranie. Za każdym razem, gdy użytkownik otwiera tę aplikację, zmienna RunningTotal ma pustą wartość początkową.
Gdy użytkownik po raz pierwszy wybierze przycisk dodawania i uruchomi funkcję UpdateContext, zmienna RunningTotal zostanie ustawiona na wartość RunningTotal + TextInput1.
Aby ustawić sumę bieżącą na wartość 0 za każdym razem, gdy użytkownik wybierze przycisk czyszczenia, ustaw jego właściwość OnSelect na następującą formułę:
UpdateContext( { RunningTotal: 0 } )
Ponownie funkcja UpdateContext jest używana z formułą UpdateContext( { RunningTotal: 0 } ).
Dodaj kontrolkę Etykieta i ustaw jej właściwość Text na wartość RunningTotal.
Ta formuła zostanie automatycznie ponownie obliczona i będzie przedstawiać użytkownikowi wartość RunningTotal, gdy będzie ona zmieniana w oparciu o przyciski wybierane przez użytkownika.
Wyświetl podgląd aplikacji. Mamy już maszynę dodającą opisaną powyżej. Wprowadź liczbę w polu tekstowym i naciśnij przycisk dodawania kilka razy. Po wykonaniu tych czynności wróć do środowiska tworzenia przy użyciu klawisza Esc.
Możesz ustawić wartość zmiennej kontekstowej podczas nawigowania do ekranu. Jest to przydatne w przypadku przekazywania „kontekstu” lub „parametrów” między ekranami. Aby zaprezentować tę technikę, wstaw ekran, wstaw przycisk i ustaw jego właściwość OnSelect na tę formułę:
Navigate( Screen1, Brak,RunningTotal { : -1000 } )
Przytrzymaj klawisz Alt podczas wybierania tego przycisku, aby wyświetlić kontrolkę Screen1 i ustawić zmienną kontekstu RunningTotal na -1000.
Aby pokazać wartość zmiennej kontekstu, wybierz menu Plik i wybierz opcję Zmienne w okienku po lewej stronie.
Aby pokazać, gdzie zmienna kontekstowa jest definiowana i używana, wybierz ją.
Używane kolekcji
Na koniec przyjrzymy się procesowi tworzenia maszyny dodającej z użyciem kolekcji. Jako że kolekcja przechowuje tabelę, którą można z łatwością zmodyfikować, ta maszyna dodająca będzie zachowywać zapis każdej wprowadzonej wartości.
Sposób działania kolekcji:
- Utwórz i ustaw kolekcje przy użyciu funkcji ClearCollect. Możesz też użyć funkcji Collect, ale będzie ona wymagać kolejnej zmiennej i nie zastąpi już istniejącej.
- Kolekcja jest rodzajem źródła danych, a więc jest tabelą. Aby uzyskać dostęp do konkretnej wartości w kolekcji, użyj funkcji First i wyodrębnij jedno pole z wynikowego rekordu. Jeśli użyto jednej wartości z funkcją ClearCollect, będzie to pole Value, tak jak w poniższym przykładzie:
First(NazwaZmiennej). Wartość
Utwórzmy ponownie maszynę dodającą, używając kolekcji:
Dodaj kontrolkę wprowadzania tekstu o nazwie TextInput1 oraz dwa przyciski o nazwach Button1 i Button2.
Ustaw właściwość Text przycisku Button1 na wartość „Add” oraz właściwość Text przycisku Button2 na wartość „Clear”.
Aby zaktualizować sumę bieżącą za każdym razem, gdy użytkownik wybierze przycisk dodawania, ustaw jego właściwość OnSelect na następującą formułę:
Collect( PaperTape, TextInput1.Text )
Sam fakt istnienia tej formuły ustanawia PaperTape jako kolekcję przechowującą jednokolumnową tabelę ciągów tekstowych. Do elementu PaperTape można odwoływać się w dowolnym miejscu tej aplikacji. Za każdym razem, gdy użytkownik otwiera tę aplikację, PaperTape jest pustą tabelą.
Działająca formuła dodaje nową wartość na końcu kolekcji. Ponieważ dodajemy jedną wartość, funkcja Collect umieszcza ją automatycznie w tabeli z jedną kolumną o nazwie Value, której użyjemy później.
Aby wyczyścić rejestr wartości po wybraniu przycisku czyszczenia przez użytkownika, ustaw jego właściwość OnSelect na poniższą formułę:
Przezroczysty (taśma papierowa)
Aby wyświetlić sumę bieżącą, dodaj etykietę i ustaw jej właściwość Text na tę formułę:
Sum( Taśma papierowa, wartość )
Aby uruchomić maszynę dodającą, naciśnij klawisz F5 w celu otworzenia podglądu, wprowadź liczby w kontrolce wprowadzania tekstu i wybierz przyciski.
Aby powrócić do domyślnego obszaru roboczego, naciśnij klawisz Esc.
Aby wyświetlić rejestr wartości, wstaw kontrolkę Tabela danych i ustaw jej właściwość Items na następującą formułę:
Taśma papierowa
W okienku po prawej stronie wybierz pozycję Edytuj pola, a następnie wybierz pozycję Dodaj pole, wybierz kolumnę Wartość i kliknij przycisk Dodaj, aby ją wyświetlić.
Aby wyświetlić wartości w kolekcji, wybierz opcję Kolekcje w menu Plik.
Aby móc zapisywać i pobierać kolekcję, dodaj dwie kolejne kontrolki przycisków i ustaw ich właściwości Text na Load i Save. Dla właściwości OnSelect przycisku Load ustaw następującą formułę:
Przezroczysty (taśma papierowa); LoadData( PaperTape, "StoredPaperTape", true )
Najpierw musisz wyczyścić kolekcję, ponieważ funkcja LoadData będzie dołączać przechowywane wartości na końcu kolekcji.
Dla właściwości OnSelect przycisku Save ustaw następującą formułę:
ZapiszData( PaperTape, "PrzechowywanaPaperTape" )
Ponownie wyświetl podgląd przy użyciu klawisza F5, wprowadź liczby w kontrolce wprowadzania tekstu i wybierz przyciski. Wybierz przycisk zapisywania. Zamknij i ponownie załaduj aplikację, a następnie wybierz przycisk ładowania, aby ponownie załadować kolekcję.