Tworzenie kolumn obliczeniowych

Ukończone

Możesz napisać formułę języka DAX, aby dodać kolumnę obliczeniową do dowolnej tabeli w modelu. Formuła kolumny obliczeniowej musi zwracać wartość skalarną lub pojedynczą.

Kolumny obliczeniowe w modelach importu mają koszt: Zwiększają one rozmiar magazynu modelu i mogą wydłużyć czas odświeżania danych. Przyczyną jest to, że kolumny obliczeniowe są ponownie obliczane, gdy mają zależności formuły w odświeżanych tabelach.

W widoku danych w okienku Pola upewnij się, że wybrano tabelę Due Date (Data ukończenia ). Przed utworzeniem kolumny obliczeniowej najpierw zmień nazwę kolumny Date (Data) na Due Date (Data ukończenia).

Teraz możesz dodać kolumnę obliczeniową do tabeli Due Date (Data ukończenia ). Aby utworzyć kolumnę obliczeniową, na wstążce kontekstowej Narzędzia tabel w grupie Obliczenia kliknij pozycję Nowa kolumna.

Obraz przedstawiający wstążkę kontekstową Narzędzia tabel tabeli Due Date (Data ukończenia). W grupie Obliczenia wyróżnione jest polecenie Nowa kolumna.

Na pasku formuły wprowadź następującą definicję kolumny obliczeniowej, a następnie naciśnij klawisz Enter.

Due Fiscal Year =
"FY"
    & YEAR('Due Date'[Due Date])
        + IF(
            MONTH('Due Date'[Due Date]) > 6,
            1
        )

Definicja kolumny obliczeniowej dodaje kolumnę Due Fiscal Year do tabeli Due Date (Data ukończenia ). W poniższych krokach opisano, jak usługa Microsoft Power BI oblicza formułę kolumny obliczeniowej:

  1. Operator dodawania (+) jest obliczany przed operatorem łączenia tekstu (&).
  2. Funkcja YEAR języka DAX zwraca wartość całkowitą roku daty ukończenia.
  3. Funkcja języka DAX zwraca wartość, gdy numer miesiąca daty ukończenia to 7–12 (od lipca do grudnia). W IF przeciwnym razie zwraca wartość BLANK. (Na przykład rok finansowy w firmie Adventure Works trwa od lipca do czerwca, w ostatnich sześciu miesiącach roku kalendarzowego następny rok kalendarzowy będzie używany jako rok finansowy).
  4. Wartość roku jest dodawana do wartości zwracanej przez IF funkcję, która jest wartością pustą lub pustą. Jeśli zwrócona zostanie wartość BLANK, jest ona niejawnie konwertowana na zero (0), aby umożliwić jej dodanie w celu uzyskania wartości roku obrachunkowego.
  5. Wartość "FY" tekstowa literału połączona z wartością roku obrachunkowego, która jest niejawnie konwertowana na tekst.

Dodaj drugą kolumnę obliczeniową przy użyciu następującej definicji:

Due Fiscal Quarter =
'Due Date'[Due Fiscal Year] & " Q"
    & IF(
        MONTH('Due Date'[Due Date]) <= 3,
        3,
        IF(
            MONTH('Due Date'[Due Date]) <= 6,
            4,
            IF(
                MONTH('Due Date'[Due Date]) <= 9,
                1,
                2
            )
        )
    )

Definicja kolumny obliczeniowej dodaje kolumnę Due Fiscal Quarter do tabeli Due Date (Data ukończenia ). Funkcja IF zwraca numer kwartału (kwartał 1 to lipiec–wrzesień), a wynik jest połączony z wartością kolumny Due Fiscal Year (Ukończenie roku obrachunkowego ) i tekstem Qliterału .

Dodaj trzecią kolumnę obliczeniową przy użyciu następującej definicji:

Due Month =
FORMAT('Due Date'[Due Date], "yyyy mmm")

Definicja kolumny obliczeniowej dodaje kolumnę Due Month (Miesiąc ukończenia ) do tabeli Due Date (Data ukończenia ). Funkcja FORMAT języka DAX konwertuje wartość kolumny Due Date na tekst przy użyciu ciągu formatu. W tym przypadku ciąg formatu generuje etykietę opisującą rok i skróconą nazwę miesiąca.

Uwaga

Istnieje wiele formatów daty/godziny zdefiniowanych przez użytkownika. Aby uzyskać więcej informacji, zobacz Niestandardowe formaty daty i godziny dla funkcji FORMAT.

Dodaj czwartą kolumnę obliczeniową przy użyciu następującej definicji:

Due Full Date =
FORMAT('Due Date'[Due Date], "yyyy mmm, dd")

Dodaj piątą kolumnę obliczeniową przy użyciu następującej definicji:

MonthKey =
(YEAR('Due Date'[Due Date]) * 100) + MONTH('Due Date'[Due Date])

Kolumna obliczeniowa MonthKey (Klucz miesiąca) mnoży rok daty ukończenia przez wartość 100, a następnie dodaje numer miesiąca daty ukończenia. Tworzy wartość liczbową, która może być używana do sortowania wartości tekstowych Due Month (Miesiąc ukończenia) w kolejności chronologicznej.

Sprawdź, czy tabela Due Date (Data ukończenia ) zawiera sześć kolumn. Pierwsza kolumna została dodana podczas tworzenia tabeli obliczeniowej, a pozostałe pięć kolumn zostało dodanych jako kolumny obliczeniowe.

Obraz przedstawia tabelę Due Date (Data ukończenia) w widoku danych. Istnieje sześć kolumn i widocznych jest siedem pierwszych wierszy.

Aby ukończyć projektowanie tabeli Due Date (Data ukończenia ), możesz wykonać następujące czynności:

  • Posortuj kolumnę Due Full Date (Pełna data ukończenia) według kolumny Due Date (Data ukończenia).
  • Posortuj kolumnę Due Month (Miesiąc ukończenia) według kolumny MonthKey (Klucz miesiąca).
  • Ukryj kolumnę MonthKey (Klucz miesiąca).
  • Utwórz hierarchię o nazwie Fiscal (Obrachunkowe) z następującymi poziomami:
    • Due Fiscal Year (Rok obrachunkowy ukończenia)
    • Due Fiscal Quarter (Kwartał obrachunkowy ukończenia)
    • Due Month (Miesiąc ukończenia)
    • Due Full Date (Pełna data ukończenia)
  • Oznacz tabelę Due Date (Data ukończenia ) jako tabelę dat przy użyciu kolumny Due Date (Data ukończenia ).