PowerBIMEasureGRoupsAndFolders_000

Power BI – Measure groups i foldery

Część z Was z całą pewnością pracowała z kostkami wielowymiarowymi Analysis Services. Mimo, że w dzisiejszych czasach nieco większą popularnością cieszą się modele tabelaryczne to część funkcjonalności kostek nadal jest czymś co dobrze byłoby widzieć chociażby w Power BI. Jedną z takich funkcjonalności są tzw. grupy miar które pomijając całkowicie aspekt techniczny dawały swoistego rodzaju kontener na miary, które nieco ułatwiał nawigowanie po modelu. Funkcjonalność tego typu czasem jest bardzo pożądana szczególnie w przypadku użytkowników przyzwyczajonych do wspomnianych kostek wielowymiarowych. Czy coś takiego podobnego jesteśmy w stanie osiągnąć w Power BI? Oczywiście, że tak! Jest to bardzo prosta acz przydatna technika, którą postaram się przedstawić w niniejszym wpisie.

 

Dla przykładu stworzyłem sobie model bazując na AdventureWorksDW, który wygląda następująco:

Pominąłem całą część pobrania danych bo nie jest to istotą niniejszego wpisu. To co zrobię teraz to stworzę miarę, która będzie sumować pole OrderQty z FactInternetSales:

Total Qty = SUM(FactInternetSales[OrderQuantity])

Miara ta została umieszczona w tabeli, w której znajdowałem się tworząc miarę czyli w FactInternetSales:

To co odróżnia miarę od kolumny jest ikona “kalkulatora” jednakże czy jest to wygodne? Kwestia sporna, szczególnie gdy miary są porozrzucane na kilka tabel. Stwórzmy sobie dedykowaną “grupę miar” czyli pustą tabelę, przeznaczoną tylko i wyłącznie do przechowywania miar. Możemy to osiągnąć na kilka sposobów – jednym z nich jest wybranie opcji Enter Data dostępnej ze wstążki:

Definicja takiej tabeli może wyglądać w następujący sposób:

Nazwa jaką nadałem czyli “Calculations” może być oczywiście inna w zależności potrzeb. Efekt naszej pracy wygląda następująco:

Taką tabelę możemy również stworzyć jako tabelę kalkulowaną przy pomocy DAX:

Calculations =
DATATABLE (
    "Column 1", INTEGER,
    "Column 2", INTEGER,
    "Column 3", INTEGER,
    "Column 4", INTEGER,
    "Column 5", INTEGER,
    {
        { BLANK (), BLANK (), BLANK (), BLANK (), BLANK () }
    }
)

Różnicy w funkcjonalności nie ma żadnej. Kolumny które zostały zdefiniowane w tej tabeli możemy ukryć dzięki czemu otrzymamy dosyć ciekawy efekt graficzny:

Tabela będąca “grupą miar” dostała specjalną ikonę i dodatkowo pojawi się zawsze na samej górze listy tabel co jest dodatkowym plusem.Nie mamy ograniczenia co do ilości tego typu obiektów w modelu więc warto pogrupować sobie miary według np. obszarów biznesowych.

Pamiętajmy, że w widoku diagramu mamy również możliwość definiowania hierarchii folderów co może być dodatkowym poziomem porządkowania miar:

Jak zapewne zauważyliście  jest to bardzo prosta technika ale moim zdaniem całkiem użyteczna. Warto również wspomnieć, że właściwie nie ma ona żadnych negatywnych implikacji tak więc nie powinno być żadnych przeciwwskazań do jej użycia. Mam nadzieję, że ten krótki wpis okaże się dla Was przydatny, pozdrawiam!

Leave a Reply