Udostępnij przez


Zrozumienie tabel i rekordów w aplikacjach canvas

W usłudze Power Apps możesz utworzyć aplikację kanwy, która uzyskuje dostęp do informacji w programach Microsoft Excel, SharePoint, SQL Server i kilku innych źródłach, które przechowują dane w rekordach i tabelach. Aby wydajnie korzystać z danych tego typu, warto zapoznać się z pojęciami dotyczącymi takich struktur.

  • Rekord zawiera co najmniej jedną kategorię informacji dotyczących osoby, miejsca lub rzeczy. Na przykład rekord może zawierać imię i nazwisko, adres e-mail i numer telefonu jednego klienta. W innych narzędziach rekordy mogą funkcjonować pod nazwą „wiersz”, „element” lub „pozycja”.
  • Tabela zawiera jeden rekord lub wiele rekordów, które zawierają te same kategorie informacji. Tabela może na przykład zawierać imiona i nazwiska, adresy e-mail i numery telefonów 50 klientów.

W aplikacji użyj formuł do tworzenia, aktualizowania i manipulowania rekordami i tabelami. Prawdopodobnie odczytujesz i zapisujesz dane w zewnętrznym źródle danych, które jest rozszerzoną tabelą. Ponadto można utworzyć co najmniej jedną tabelę wewnętrzną, która jest nazywana kolekcjami.

Można utworzyć rozmaite formuły przyjmujące nazwę tabeli jako argument (analogicznie do formuł w programie Excel, które używają odwołań do komórek jako argumentów). Niektóre formuły w usłudze Power Apps zwracają tabelę, która odzwierciedla inne określone argumenty. Można na przykład utworzyć formułę:

  • w celu zaktualizowania rekordu w tabeli, określając tę tabelę jako jeden z wielu argumentów funkcji Patch
  • w celu dodania lub usunięcia kolumn w tabeli albo zmiany ich nazw, określając tę tabelę jako argument funkcji AddColumns, DropColumns lub RenameColumns. Żadna z tych funkcji nie modyfikuje oryginalnej tabeli. Zamiast tego funkcja zwraca inną tabelę utworzoną na podstawie innych określonych argumentów.

Elementy tabeli

Elementy tabeli.

Rekordy

Każdy rekord zawiera co najmniej jedną kategorię informacji dotyczących osoby, miejsca lub rzeczy. W powyższym przykładzie przedstawiono rekordy dotyczące poszczególnych produktów (Chocolate, Bread, and Water) i kolumny zawierające różne kategorie informacji (Price, Quantity on Hand i Quantity on Order).

W formule można się odwołać do samego rekordu, z pominięciem kontekstu tabeli. W tym celu należy użyć nawiasów klamrowych. Na przykład rekord { Name: "Strawberries", Price: 7.99 } nie jest skojarzony z tabelą. Nazwy pól, takie jak Nazwa i Cena w tym przykładzie, nie są ujęte w podwójny cudzysłów.

Pola formularza

Pole to fragment informacji zawartych w rekordzie. Pole takie można sobie wyobrazić jako wartość w kolumnie odpowiadająca określonemu rekordowi.

Podobnie jak w przypadku kontrolek, do pola lub rekordu można się odwołać za pomocą .operatora w rekordzie. Na przykład funkcja First(Products).Name zwraca pole Name odpowiadające pierwszemu rekordowi w tabeli Products.

Pole może zawierać inny rekord lub tabelę, co widać w przykładzie dotyczącym funkcji GroupBy. Można zagnieździć dowolną liczbę poziomów rekordów i tabele.

Kolumny

Kolumna odwołuje się do tego samego pola dla co najmniej jednego rekordu w tabeli. W poprzednim przykładzie każdy produkt ma pole ceny, a wszystkie produkty współdzielą tę samą kolumnę dla tej ceny. Poprzednia tabela zawiera cztery kolumny, które są widoczne w poziomie u góry:

  • Nazwa
  • Cena
  • Ilość rzeczywista
  • Ilość w zamówieniu

Nazwa kolumny odzwierciedla pola w niej zawarte.

Wszystkie wartości w kolumnie reprezentują ten sam typ danych. W poprzednim przykładzie kolumna "Quantity on Hand" zawsze zawiera liczbę i nie może zawierać ciągu, takiego jak "12 jednostek", dla jednego rekordu. Wartość dowolnego pola może być również pusta.

Kolumny mogą być nazywane "polami" w innych narzędziach.

Uwaga / Notatka

W przypadku źródeł danych, takich jak SharePoint, Excel lub kafelki Power BI zawierające nazwy kolumn ze spacjami, Power Apps zastępuje spacje ciągiem "_x0020_". Na przykład kafelek "Nazwa kolumny" w programie SharePoint, programie Excel lub usłudze Power BI jest wyświetlany jako "Column_x0020_Name" w usłudze Power Apps, gdy jest wyświetlany w układzie danych lub używany w formule.

Tabela

Tabela składa się z co najmniej jednego rekordu. Każdy rekord ma wiele pól mających spójne nazwy dla wszystkich rekordów.

Nazwa tabeli służy do odwoływania się do dowolnej tabeli przechowywanej w źródle danych lub kolekcji. Możesz również przekazać nazwę tabeli do funkcji, które przyjmują tabele jako argumenty. Funkcja lub formuła może również zwracać tabele.

Jak pokazano w poniższym przykładzie, możesz wyrazić tabelę w formule przy użyciu funkcji Table z zestawem rekordów, które są wyrażane w nawiasach klamrowych:

Table( { Value: "Strawberry" }, { Value: "Vanilla" } )

Możesz również zdefiniować tabelę z jedną kolumną przy użyciu nawiasów kwadratowych. Następujące wyrażenie jest równoważnym sposobem na zapisanie poprzedniego wyrażenia:

[ "Strawberry", "Vanilla" ]

Formuły tabel

W programach Excel i Power Apps formuły służą do manipulowania liczbami i ciągami tekstu w podobny sposób:

  • W programie Excel można na przykład wpisać wartość typu 42 w komórce A1, a następnie w innej komórce wpisać formułę, taką jak A1+2, w celu uzyskania wartości 44.
  • W usłudze Power Apps ustaw właściwość Default elementu Slider1 na wartość 42 i ustaw właściwość Text etykiety na wartość Slider1.Value + 2, aby została wyświetlona wartość 44.

W obu przypadkach obliczona wartość zmienia się automatycznie, jeśli zmienisz wartości argumentów (np. liczbę w komórce A1 lub wartość elementu Slider1).

W podobny sposób można za pomocą formuł korzystać z danych w tabelach i rekordach oraz manipulować nimi. Nazwy tabel mogą stanowić argumenty w niektórych formułach, takich jak formuła Min(Catalog, Price) umożliwiająca przedstawienie najniższej wartości w kolumnie Price tabeli Catalog. Inne formuły zwracają wyniki w postaci całych tabel. Na przykład formuła RenameColumns(Catalog, "Price", "Cost") zwraca wszystkie rekordy z tabeli Catalog, ale zmienia nazwę kolumny Price na Cost.

Podobnie jak w przypadku liczb formuł, które obejmują tabele i rekordy, są automatycznie obliczane ponownie w miarę zmian w tabeli źródłowej lub rekordzie. Jeśli koszt produktu w tabeli Catalog zostanie obniżony do wartości mniejszej niż poprzednie minimum, wartość zwracana formuły Min automatycznie zmieni się, aby była zgodna.

Zapoznajmy się z prostymi przykładami.

  1. Utwórz pustą aplikację dla telefonu i dodaj pionową kontrolkę Galeria zawierającą inne kontrolki .

    Domyślnie na ekranie jest wyświetlany tekst zastępczy z tabeli o nazwie CustomGallerySample. Właściwość Itemskontrolki Galerii ekranu zostaje automatycznie ustawiona na tę tabelę.

    Galeria.

    Uwaga / Notatka

    Niektóre kontrolki są zmieniane i powiększane do celów ilustracyjnych.

  2. Zamiast ustawiać właściwość Items na nazwę tabeli, ustaw ją na formułę zawierającą nazwę tabeli jako argument, jak w tym przykładzie:

    Sort(CustomGallerySample, SampleHeading, SortOrder.Descending)

    Ta formuła zawiera funkcję Sort , która przyjmuje nazwę tabeli jako pierwszy argument i nazwę kolumny w tej tabeli jako drugi argument. Funkcja obsługuje również opcjonalny trzeci argument, który określa, że chcesz sortować dane w kolejności malejącej.

    Sortowanie dla galerii.

  3. Ustaw właściwość Items na formułę, która przyjmuje formułę z poprzedniego kroku jako argument i zwraca tabelę, jak w tym przykładzie:

    FirstN(Sort(CustomGallerySample, SampleHeading, SortOrder.Descending), 2)

    W tej formule użyjesz funkcji FirstN , aby wyświetlić określoną liczbę rekordów w tabeli. Funkcja Sort jest używana jako pierwszy argument do funkcji FirstN i liczby (w tym przypadku 2) jako drugiego argumentu, aby określić liczbę rekordów do wyświetlenia.

    Cała formuła zwraca tabelę zawierającą dwa pierwsze rekordy tabeli CustomGallerySample posortowane według kolumny SampleHeading w kolejności malejącej.

    FirstN dla galerii.

Funkcje tabel i właściwości kontrolek

Rozważ użycie funkcji Lower. Jeśli zmienna welcome zawiera ciąg tekstowy „Hello, World”, formuła Lower(welcome) zwraca wartość „hello, world”. Ta funkcja nie zmienia wartości w tej zmiennej. Lower jest czystą funkcją, ponieważ przetwarza tylko dane wejściowe i generuje dane wyjściowe. Nie ma skutków ubocznych. Wszystkie funkcje w programie Excel i większość funkcji w usłudze Power Apps są czystymi funkcjami, co oznacza, że skoroszyt lub aplikacja są przeliczane automatycznie.

Usługa Power Apps oferuje zestaw funkcji, które działają na tabelach w ten sam sposób. Te funkcje umożliwiają pobieranie tabel jako danych wyjściowych, a następnie filtrowanie, sortowanie, przekształcanie, redukowanie i podsumowywanie całych tabel danych. W rzeczywistości funkcji Lower i wiele innych funkcji, które zwykle akceptują pojedynczą wartość, może również akceptować jednokolumnową tabelę jako dane wejściowe.

Wiele z tych funkcji pobiera jednokolumnową tabelę jako wejście. Jeśli cała tabela zawiera tylko jedną kolumnę, można określić ją według nazwy. Jeśli tabela zawiera wiele kolumn, można określić jedną z tych kolumn, korzystając ze składni Table.Column. Na przykład Products.Name zwraca tabelę jednokolumnową wyłącznie z wartościami Nazwa z tabeli Produkty.

Możesz całkowicie zmienić kształt tabeli według własnych upodobań, korzystając z funkcji AddColumns, RenameColumns, ShowColumns lub DropColumns. Te funkcje również zmieniają tylko dane wyjściowe, a nie źródło.

Właściwości kontrolek mogą być również tabelami:

  • Items — ma zastosowanie do galerii, pól list i pól kombi. Ta właściwość definiuje tabelę wyświetlaną w galerii lub na liście.
  • SelectedItems — ma zastosowanie do pól list i pól kombi. Ta właściwość definiuje tabelę elementów wybranych przez użytkownika, jeśli opcja SelectMultiple jest włączona.

Formuły behawioralne

Niektóre funkcje są specjalnie zaprojektowane do modyfikowania danych i mają skutki uboczne. Ponieważ te funkcje nie są czyste, należy je starannie skompilować. Nie mogą uczestniczyć w automatycznym ponownym obliczaniu wartości w aplikacji. Te funkcje można używać tylko w formułach behawioralnych.

  • Collect, Clear,ClearCollect — tworzy kolekcje, czyści je i dodaje do nich dane.
  • Patch — modyfikuje jedno lub więcej pól w rekordzie.
  • Update, UpdateIf — aktualizacje rekordów spełniających co najmniej jedno określone kryteria.
  • Remove, RemoveIf — usuwa rekordy spełniające co najmniej jedno określone kryteria.

Formuły rekordów

Możesz również utworzyć formułę, która oblicza dane dla pojedynczego rekordu, przyjmuje pojedynczy rekord jako argument i udostępnia pojedynczy rekord jako wartość zwracaną. Wracając do przykładu galerii, użyj właściwości Gallery1.Selected , aby wyświetlić informacje z dowolnego rekordu wybranego przez użytkownika w tej galerii.

  1. Dodaj przycisk i ustaw jej właściwość OnSelect na następującą formułę:
    Collect( SelectedRecord, Gallery1.Selected )

  2. Trzymając wciśnięty klawisz Alt, kliknij przycisk.

  3. W menu Plik wybierz pozycję Kolekcje.

    Kolekcja SelectedRecord.

Ta formuła zwraca rekord zawierający nie tylko dane z rekordu aktualnie wybranego w galerii, ale także każdą kontrolkę w tej galerii. Na przykład rekord zawiera zarówno kolumnę SampleText , która pasuje do kolumny SampleText w oryginalnej tabeli, jak i kolumny Subtitle1 , która reprezentuje etykietę, która pokazuje dane z tej kolumny. Wybierz ikonę tabeli w kolumnie Podtytuł1 , aby przejść do szczegółów tych danych.

Uwaga / Notatka

Kolumna Podtytuł1 może mieć nazwę Podtytuł2 lub podobna, jeśli dodasz elementy inne niż te, które określono w tym temacie.

Po wybraniu rekordu możesz wyodrębnić z niego poszczególne pola przy użyciu operatora .

  1. Dodaj kontrolkę Etykieta , a następnie przenieś ją pod galerię i przycisk.

  2. Ustaw właściwość Text etykiety na następujące wyrażenie:
    "Selected: " & Gallery1.Selected.SampleHeading

    Właściwość tekst ze zaktualizowaną etykietą.

Pobrano właściwość Selected , która jest rekordem, i wyodrębniono z niej właściwość SampleHeading .

Możesz również użyć rekordu jako kontenera ogólnego przeznaczenia dla powiązanych nazwanych wartości.

  • Jeśli tworzysz formułę wokół funkcji UpdateContext i Navigate , użyj rekordu, aby zebrać zmienne kontekstowe , które chcesz zaktualizować.
  • Użyj właściwości Updates w kontrolce Formularz edycji , aby zebrać zmiany wprowadzone przez użytkownika w formularzu.
  • Użyj funkcji Patch , aby zaktualizować źródło danych, ale także scalić rekordy.

W takich przypadkach rekord nigdy nie był częścią tabeli.

Rejestrowanie funkcji i właściwości kontrolek

Funkcje zwracające rekordy:

  • FirstN, LastN — zwraca pierwszy lub ostatni rekord lub rekordy tabeli.
  • Wyszukaj — zwraca pierwszy rekord z tabeli spełniającego jedno lub więcej kryteriów.
  • Patch — aktualizuje źródło danych lub scala rekordy.
  • Wartości domyślne — zwraca wartości domyślne źródła danych.

Właściwości, które zwracają rekordy:

  • Selected — dotyczy galerii i pól listy. Dotyczy obecnie wybranego rekordu.
  • Aktualizacje — dotyczy galerii. Ściąga wszystkie zmiany wprowadzone przez użytkownika w formularzu wprowadzania danych.
  • Update — dotyczy kontrolek wejściowych, takich jak kontrolki wprowadzania tekstu i suwaki. Konfiguruje poszczególne właściwości galerii, aby je połączyć.

Zakres rekordów

Niektóre funkcje działają, oceniając formułę we wszystkich rekordach tabeli— jeden rekord naraz. Wynik formuły jest używany na różne sposoby dla każdej funkcji:

  • AddColumns — użyj formuły, aby uzyskać wartość dla nowego pola, które dodajesz.
  • Average, Max, Min, Sum, StdevP, VarP — użyj formuły, aby uzyskać wartość, którą chcesz zagregować.
  • Filter, Lookup — użyj formuły, aby zdecydować, czy rekord powinien być częścią danych wyjściowych.
  • Concat — użyj formuły, aby zdecydować, które ciągi mają być połączone.
  • Distinct — użyj formuły, aby zwrócić wartość, która ułatwia znajdowanie zduplikowanych rekordów.
  • ForAll — użyj formuły, aby zwrócić dowolną wartość, możliwie ze skutkami ubocznymi.
  • Sort — użyj formuły, aby uzyskać wartość do sortowania rekordów według.
  • With - Użyj formuły, aby zwrócić dowolną wartość, być może z efektami ubocznymi.

W tych formułach możesz odwoływać się do pól rekordu, nad którym pracujesz. Każda z tych funkcji tworzy "zakres rekordu", w którym jest uruchamiana formuła. Pola rekordu są wyświetlane jako identyfikatory najwyższego poziomu. Z całej aplikacji możesz też odwoływać się do właściwości kontrolki i innych wartości.

Rozważmy na przykład tabelę Produktów:

Przykład produktów.

Aby utworzyć tę przykładową tabelę w aplikacji, wstaw przycisk, ustaw jej właściwość OnSelect na tę formułę, a następnie wybierz przycisk (kliknij go po przytrzymaniu Alt w programie Power Apps Studio):

Set( Products,
    Table(
        { Product: "Widget",    'Quantity Requested': 6,  'Quantity Available': 3 },
        { Product: "Gadget",    'Quantity Requested': 10, 'Quantity Available': 20 },
        { Product: "Gizmo",     'Quantity Requested': 4,  'Quantity Available': 11 },
        { Product: "Apparatus", 'Quantity Requested': 7,  'Quantity Available': 6 }
    )
)

Aby sprawdzić, czy którykolwiek z tych produktów ma więcej żądań niż jest dostępny, użyj następującej formuły:

Filter( Products, 'Quantity Requested' > 'Quantity Available' )

Pierwszym argumentem do Filter jest tabela rekordów, na których będziemy pracować. Drugi argument to formuła. Filtr tworzy zakres rekordów do oceny tej formuły. Pola każdego rekordu są dostępne, takie jak Produkt, Ilość żądana i Ilość dostępna. Wynik porównania decyduje, czy każdy rekord powinien być częścią wyniku funkcji:

Przefiltrowana tabela.

Możesz dodać do tego przykładu, obliczając ilość każdego produktu do zamówienia:

AddColumns( 
    Filter( Products, 'Quantity Requested' > 'Quantity Available' ), 
    "Quantity To Order", 'Quantity Requested' - 'Quantity Available'
)

W tym miejscu dodasz kolumnę obliczeniową do wyniku. Funkcja AddColumns używa własnego zakresu rekordów, aby obliczyć różnicę między żądanymi elementami i dostępnymi elementami.

Dodano kolumny.

Na koniec możesz zmniejszyć tabelę wyników tylko do żądanych kolumn:

ShowColumns(
    AddColumns(
        Filter( Products, 'Quantity Requested' > 'Quantity Available' ),
        "Quantity To Order", 'Quantity Requested' - 'Quantity Available'
    ),
    "Product",
    "Quantity To Order"
)

Zaktualizowano tabelę.

W poprzednim przykładzie użyto cudzysłowów podwójnych (") w niektórych miejscach i pojedynczych cudzysłowów (') w innych miejscach. Podczas odwołowania się do wartości obiektu, takiego jak pole lub tabela, potrzebne są pojedyncze cudzysłowy, a nazwa obiektu zawiera spację. Użyj cudzysłowów, gdy nie odwołujesz się do wartości obiektu, ale zamiast tego o niej mówisz. Używaj cudzysłowów szczególnie w sytuacjach, w których obiekt jeszcze nie istnieje, jak w przypadku funkcji AddColumns.

Ujednoznacznienie

Nazwy pól dodawane za pomocą zakresu rekordów zastępują te same nazwy z innych miejsc w aplikacji. W takim przypadku nadal można uzyskać dostęp do wartości spoza zakresu rekordu przy użyciu @ operatora uściślania :

  • Aby uzyskać dostęp do wartości z zagnieżdżonych zakresów rekordów, użyj @ operatora o nazwie tabeli, na której pracujesz, korzystając z tego wzorca:
    Tabela[@FieldName]
  • Aby uzyskać dostęp do wartości globalnych, takich jak źródła danych, kolekcje i zmienne kontekstowe, użyj wzorca [@ObjectName] (bez oznaczenia tabeli).

Jeśli tabela, na której pracujesz, jest wyrażeniem, takim jak Filter(Table, ... ), nie można użyć operatora uściślania. Tylko najbardziej wewnętrzny zakres rekordów może uzyskać dostęp do pól z tego wyrażenia tabeli, nie korzystając z operatora uściślania.

Załóżmy, że mamy kolekcję X:

Kolekcja X.

Tę kolekcję można utworzyć przy użyciu funkcji ClearCollect( X, [1, 2] ).

Druga kolekcja to Y:

Kolekcja Y.

Ta kolekcja jest tworzona przy użyciu funkcji ClearCollect( Y, ["A", "B"] ).

Oprócz tego definiujemy zmienną kontekstową o nazwie Value, korzystając z formuły: UpdateContext( {Value: "!"} )

Zbierzmy wszystkie dane. W tym kontekście następująca formuła:

Ungroup(
    ForAll( X,
        ForAll( Y,
            Y[@Value] & Text( X[@Value] ) & [@Value]
        )
    ),
    "Value"
)

powoduje utworzenie tej tabeli:

Tabela XY.

Co się tu dzieje? Najbardziej zewnętrzna funkcja ForAll definiuje zakres rekordów dla X, umożliwiając dostęp do pola Wartość każdego rekordu podczas przetwarzania. Dostęp do niego można uzyskać, używając słowa Wartość lub X [@Value].

Najbardziej wewnętrzna funkcja ForAll definiuje inny zakres rekordów dla Y. Ponieważ ta tabela ma również pole Wartość zdefiniowane, użycie Wartość tutaj odwołuje się do pola w rekordzie Y i nie jest już to pole z X. Aby uzyskać dostęp do pola XWartość, musisz użyć dłuższej wersji z operatorem jednoznaczności.

Ponieważ Y jest najbardziej wewnętrznym zakresem rekordów, uzyskiwanie dostępu do pól tej tabeli nie wymaga uściślania, więc można użyć tej formuły z tym samym wynikiem:

Ungroup(
    ForAll( X,
        ForAll( Y,
            Value & Text( X[@Value] ) & [@Value]
        )
    ),
    "Value"
)

Wszystkie zakresy rekordów kolekcji ForAll zastępują zakres globalny. Zdefiniowana zmienna kontekstowa Value nie jest dostępna według nazwy bez operatora uściślania. Aby uzyskać dostęp do tej wartości, należy użyć opcji [@Value].

Ungroup spłaszcza wynik, ponieważ funkcje ForAll zwrócą zagnieżdżoną tabelę wyników.

Tabele jednokolumnowe

Aby wykonywać operacje na jednej kolumnie tabeli, użyj funkcji ShowColumns, tak jak w poniższym przykładzie:

ShowColumns( Products, "Product" )

Ta formuła powoduje utworzenie tabeli z jedną kolumną:

Tabela z jedną kolumną.

Aby uzyskać krótszą alternatywę, określ element Table.Column, która wyodrębnia tabelę jednokolumnową zawierającą tylko kolumnę z tabeli. Ta formuła daje na przykład taki sam skutek, jak użycie opcji ShowColumns.

Products.Product

Rekordy wbudowane

Rekordy można wyrażać za pomocą nawiasów klamrowych zawierających nazwane wartości pól. Na przykład pierwszy rekord w tabeli na początku tego tematu można wyrazić za pomocą następującej formuły:

{ Name: "Chocolate", Price: 3.95, 'Quantity on Hand': 12, 'Quantity on Order': 10 }

Można również osadzić formuły w innych formułach, jak w poniższym przykładzie:

{ Name: First(Products).Name, Price: First(Products).Price * 1.095 }

Rekordy można zagnieżdżać przez zagnieżdżenie nawiasów klamrowych, jak pokazano w poniższym przykładzie:

{ 'Quantity': { 'OnHand': ThisItem.QuantOnHand, 'OnOrder': ThisItem.QuantOnOrder } }

Jeśli nazwa kolumny zawiera znaki specjalne, takie jak spacja lub dwukropek, należy ją ująć w cudzysłów pojedynczy. Aby użyć cudzysłowu pojedynczego w nazwie kolumny, podwój go.

Wartość w kolumnie Price nie obejmuje symbolu waluty (np. znaku dolara). To formatowanie jest stosowane po wyświetleniu wartości.

Tabele wbudowane

Utwórz tabelę przy użyciu funkcji Table i zestawu rekordów. Tabelę z początku tego tematu można wyrazić za pomocą następującej formuły:

Table( 
	{ Name: "Chocolate", Price: 3.95, 'Quantity on Hand': 12, 'Quantity on Order': 10 },
	{ Name: "Bread", Price: 4.95, 'Quantity on Hand': 34, 'Quantity on Order': 0 },
	{ Name: "Water", Price: 4.95, 'Quantity on Hand': 10, 'Quantity on Order': 0 } 
)

Tabele można także zagnieżdżać:

Table( 
	{ Name: "Chocolate", 
	  'Quantity History': Table( { Quarter: "Q1", OnHand: 10, OnOrder: 10 },
	                             { Quarter: "Q2", OnHand: 18, OnOrder: 0 } ) 
	}
)

Wbudowane tabele wartości

Utwórz tabele z jedną kolumną, określając wartości w nawiasach kwadratowych. Tabela wynikowa zawiera jedną kolumnę o nazwie Value.

Na przykład funkcja [ 1, 2, 3, 4 ] jest równoznaczna z Table( { Value: 1 }, { Value: 2 }, { Value: 3 }, { Value: 4 } ) i zwraca tę tabelę:

Tabela śródliniowa.