Informacje na temat kontekstu wiersza
Teraz, gdy utworzono kolumny obliczeniowe, możesz poznać sposób obliczania ich formuł.
Formuła dla kolumny obliczeniowej jest obliczana dla każdego wiersza tabeli. Ponadto jest ona obliczana w kontekście wiersza, co oznacza bieżący wiersz. Rozważ definicję kolumny obliczeniowej Due Fiscal Year (Rok obrachunkowy ukończenia):
Due Fiscal Year =
"FY"
& YEAR('Due Date'[Due Date])
+ IF(
MONTH('Due Date'[Due Date]) <= 6,
1
)
Gdy formuła jest obliczana dla każdego wiesza, odwołanie do kolumny 'Due Date'[Due Date]
zwraca wartość kolumny dla tego wiersza. Przekonasz się, że w programie Microsoft Excel istnieje taka sama koncepcja pracy z formułami w tabelach programu Excel.
Jednak kontekst wiersza nie wykracza poza tabelę. Jeśli formuła musi odwoływać się do kolumn w innych tabelach, dostępne są dwie opcje:
- Jeśli tabele są powiązane, bezpośrednio lub pośrednio, można użyć
RELATED
funkcji lubRELATEDTABLE
języka DAX. FunkcjaRELATED
pobiera wartość po jednej stronie relacji, a elementRELATEDTABLE
pobiera wartości po stronie wiele. FunkcjaRELATEDTABLE
zwraca obiekt tabeli. - Jeśli tabele nie są powiązane, możesz użyć
LOOKUPVALUE
funkcji języka DAX.
Ogólnie rzecz biorąc, spróbuj użyć RELATED
funkcji zawsze, gdy jest to możliwe. Zwykle będzie działać lepiej niż LOOKUPVALUE
funkcja ze względu na sposób przechowywania i indeksowania danych w relacji i kolumnie.
Teraz dodaj następującą definicję kolumny obliczeniowej do tabeli Sales (Sprzedaż ):
Discount Amount =
(
Sales[Order Quantity]
* RELATED('Product'[List Price])
) - Sales[Sales Amount]
Definicja kolumny obliczeniowej dodaje kolumnę Discount Amount (Kwota rabatu ) do tabeli Sales (Sprzedaż ). Usługa Power BI oblicza formułę kolumny obliczeniowej dla każdego wiersza tabeli Sales . Wartości w kolumnach Order Quantity (Zamówiona ilość) i Sales Amount (Kwota sprzedaży) są pobierane w kontekście wiersza. Jednak ponieważ kolumna Cena katalogowa należy do tabeli Product (Produkt ), RELATED
funkcja jest wymagana do pobrania wartości ceny katalogowej dla produktu sprzedaży.
Kontekst wiersza jest używany podczas obliczania formuł kolumn obliczeniowych. Jest on również używany w przypadku korzystania z klas funkcji, znanych jako funkcje iteracyjne. Funkcje iteracyjne zapewniają elastyczność umożliwiającą tworzenie zaawansowanych podsumowań. Funkcje iteracyjne są opisane w późniejszym module.