Model oceny języka formuł Power Query M jest modelowany po modelu oceny często spotykanym w arkuszach kalkulacyjnych, gdzie kolejność obliczeń można określić na podstawie zależności między formułami w komórkach.
Jeśli formuły zostały napisane w arkuszu kalkulacyjnym, takim jak program Excel, możesz rozpoznać formuły po lewej stronie, co spowoduje, że wartości po prawej stronie zostaną obliczone:
W języku M wyrażenie może odwoływać się do poprzednich wyrażeń według nazwy, a proces oceny automatycznie określi kolejność, w jakiej są obliczane przywoływane wyrażenia.
Użyjmy rekordu, aby utworzyć wyrażenie, które jest równoważne z powyższym przykładem arkusza kalkulacyjnego. Podczas inicjowania wartości pola należy odwołać się do innych pól w rekordzie według nazwy pola w następujący sposób:
[
A1 = A2 * 2,
A2 = A3 + 1,
A3 = 1
]
Powyższe wyrażenie daje w wyniku następujący rekord:
[
A1 = 4,
A2 = 2,
A3 = 1
]
Rekordy mogą być zawarte w innych rekordach lub zagnieżdżone. Aby uzyskać dostęp do pól rekordu według nazwy, możesz użyć operatora wyszukiwania ([ ]). Na przykład następujący rekord zawiera pole o nazwie Sales zawierające rekord, a pole o nazwie Total (Suma), które uzyskuje dostęp do pól FirstHalf i SecondHalf rekordu Sales:
Operator indeksu pozycyjnego ({ }) służy do uzyskiwania dostępu do elementu na liście według jego indeksu liczbowego. Wartości na liście są określane przy użyciu indeksu opartego na zerach od początku listy. Na przykład indeksy 0 i 1 są używane do odwołowania się do pierwszych i drugich elementów na poniższej liście:
Wyrażenia składowe list, rekordów i tabel, a także wyrażenia let (Przejdź do wyrażeń, wartości i wyrażenia let) są oceniane przy użyciu z opóźnieniem oceny. Oznacza to, że są one oceniane w razie potrzeby. Wszystkie inne wyrażenia są oceniane przy użyciu wyczekiwanej oceny. Oznacza to, że są one oceniane natychmiast po napotkaniu podczas procesu oceny. Dobrym sposobem, aby pomyśleć o tym, jest pamiętanie, że ocena wyrażenia listy lub rekordu zwróci listę lub wartość rekordu, która wie, w jaki sposób jego elementy listy lub pola rekordu muszą być obliczane po żądaniu (według operatorów wyszukiwania lub indeksu).
W tym module dowiesz się, jak pisać formuły języka DAX do tworzenia tabel obliczeniowych, kolumn obliczeniowych i miar, które są różnymi typami obliczeń modelu. Ponadto dowiesz się, jak pisać i formatować formuły języka DAX składające się z wyrażeń, które korzystają z funkcji, operatorów, odwołań do obiektów modelu, stałych i zmiennych.