Udostępnij za pośrednictwem


Funkcja PARALLELPERIOD

Zwraca tabelę zawierającą kolumnę z datami reprezentującymi okres równoległy do dat w określonej kolumnie dates, w bieżącym kontekście, gdzie daty są przesunięte o pewną liczbę interwałów do przodu lub do tyłu w czasie.

Składnia

PARALLELPERIOD(<dates>,<number_of_intervals>,<interval>)

Parametry

Termin

Definicja

dates

Kolumna zawierająca daty.

number_of_intervals

Liczba całkowita określająca liczbę interwałów, które mają zostać dodane do dat lub od nich odjęte.

interval

Interwał, zgodnie z którym są przesuwane daty. Wartością argumentu interval może być jedna z następujących wartości: year, quarter, month.

Wartość zwracana

Tabela zawierająca jedną kolumnę wartości dat.

Uwagi

Ta funkcja pobiera bieżący zestaw dat z kolumny określonej przez argument daty, przesuwa pierwszą i ostatnią datę o określoną liczbę interwałów, a następnie zwraca wszystkie kolejne daty znajdujące się między tymi dwiema przesuniętymi datami. Jeśli interwał stanowi częściowy zakres miesiąca, kwartału lub roku, wszystkie częściowe miesiące w wyniku są także wypełniane w celu wypełnienia całego interwału.

[!UWAGA]

Aby uzyskać więcej informacji dotyczących wpływu kontekstu na wyniki formuł, zobacz temat Kontekst w formułach języka DAX.

Wartością argumentu dates może być dowolna z następujących wartości:

  • Odwołanie do kolumny daty/godziny.

  • Wyrażenie tabeli zwracające pojedynczą kolumnę wartości daty/godziny.

  • Wyrażenie logiczne definiujące jednokolumnową tabelę zawierającą wartości daty/godziny.

[!UWAGA]

Ograniczenia dotyczące wyrażeń logicznych opisano w temacie Funkcja CALCULATE.

Jeśli liczba określona w argumencie number_of_intervals jest dodatnia, daty w kolumnie daty są przesuwane w czasie do przodu, a jeśli ta liczba jest ujemna, daty w kolumnie daty są przesuwane w czasie do tyłu.

Parametr interval to wyliczenie, a nie zestaw ciągów, więc jego wartości nie należy ujmować w cudzysłowy. Ponadto wartości year, quarter i month muszą być wpisywane w pełnej formie, gdy są używane.

Wynikowa tabela zawiera tylko daty występujące w wartościach kolumny tabeli źródłowej.

Funkcja PARALLELPERIOD jest podobna do funkcji DATEADD, z tym że funkcja PARALLELPERIOD zawsze zwraca pełne okresy na danym poziomie szczegółowości, a nie częściowe okresy, tak jak funkcja DATEADD. Na przykład jeśli wybrany zestaw dat rozpoczyna się 10 czerwca i kończy 21 czerwca tego samego roku, a użytkownik chce przesunąć ten zakres o jeden miesiąc do przodu, funkcja PARALLELPERIOD zwróci wszystkie daty z następnego miesiąca (od 1 do 31 lipca), podczas gdy funkcja DATEADD zwróci daty wyłącznie z okresu od 10 do 21 lipca.

Jeśli daty w bieżącym kontekście nie tworzą ciągłego interwału, funkcja zwraca błąd.

Tej funkcji języka DAX nie można używać w trybie zapytania bezpośredniego. Aby uzyskać więcej informacji o ograniczeniach w modelach zapytania bezpośredniego, zobacz https://go.microsoft.com/fwlink/?LinkId=219172.

Przykład

Poniższa przykładowa formuła tworzy miarę obliczającą sprzedaż w poprzednim roku w kanale sprzedaży internetowej.

Aby zobaczyć działanie tej formuły, utwórz tabelę przestawną i dodaj pola CalendarYear oraz CalendarQuarter do obszaru Etykiety wierszy w tabeli przestawnej. Następnie dodaj miarę o nazwie Sprzedaż w poprzednim roku do obszaru Wartości tabeli przestawnej, używając formuły zdefiniowanej w sekcji kodu.

[!UWAGA]

W powyższym przykładzie jest używana tabela DateTime z przykładowego skoroszytu języka DAX. Aby uzyskać więcej informacji dotyczących przykładów, zobacz temat Pobieranie przykładowych danych.

=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), PARALLELPERIOD(DateTime[DateKey],-1,year))

Zobacz także

Odwołanie

Funkcja DATEADD

Inne zasoby

Funkcje analizy czasowej (język DAX)

Funkcje daty i godziny (język DAX)

Pobierz przykładowe dane