Power BI DAX fonksiyonlarını pratik örneklerle keşfedin. CALCULATE, ALL, ALLSELECTED, ALLEXCEPT, DIVIDE, IF ve DATEADD gibi temel fonksiyonları öğrenin ve bunları gerçek dünya senaryolarında nasıl uygulayabileceğinizi görün. Microsoft’un güçlü iş analitiği araçlarıyla veri analizi becerilerinizi geliştirin.

Giriş
Power BI, Microsoft tarafından geliştirilen ve verileri analiz etmenizi ve içgörüler paylaşmanızı sağlayan bir iş analitiği aracıdır. Bu gönderide CALCULATE, ALL, ALLSELECTED, ALLEXCEPT, DIVIDE, IF ve DATEADD gibi temel DAX fonksiyonlarını kapsamakta ve bunları basit ölçü fonksiyonlarıyla açıklamaktadır. Temellerin ardından, gerçek dünya örnekleri ayrıntılı olarak tartışılacak ve bu fonksiyonların gerekli içgörüleri göstermek için nasıl etkili bir şekilde kullanılacağı gösterilecektir.
CALCULATE Fonksiyonu:
Belirli filtreler veya koşullar, hesaplamaları değiştirmek veya özelleştirmek için kullanılır.
CALCULATE_SUM, Export tablosundan toplam SalesPiece hakkında bilgi verir.
CALCULATE_SUM=
CALCULATE(
SUM('Export'[SalesPiece])
)
CALCULATE SUM WITH DIMENSION FILTER belirli kategorik değerleri filtrelemek hakkında bilgi verir.
CALCULATE SUM WITH DIMENSION FILTER =
CALCULATE (
SUM( 'Export ' [SalesPiece]),
FILTER(
'Export',
'Export' [Category] ="Elektronik" ||
'Export' [Category] ="Gida"
)
)
)
CALCULATE_SUM_WITH_NUMERIC_FILTER belirli sayısal değerleri filtrelemek hakkında bilgi verir.
Özetle CALCULATE fonksiyonunu MAX, SUM, AVG… gibi fonksiyonlarla kullanarak belirli boyut veya sayısal değerleri filtreleyebilirsiniz.
Çıktı:

ALL Fonksiyonu:
Bir tablo veya sütun analiz edilirken mevcut filtreleri geçersiz kılar ve veriyi daha geniş bir bağlamda değerlendirmenize olanak tanır.
CALCULATE WITH ALL fonksiyonu, Export tablosundaki kategori üzerindeki tüm filtreleri kaldırır ve Export tablosundan toplam SalesPiece verir.
CALCULATE WITH ALL =
CALCULATE(
SUM( 'Export' [SalesPiece]),
ALL ('Export' [Category])
)
DIVIDE Fonksiyonu:
Bölme işlemi yapar ve 0’a bölme durumunda alternatif bir sonuç veya BLANK() döndürür.
Sales% ölçüsü, belirli bir değeri tüm değerlerle bölmek için uygulanır.
Sales% =
DIVIDE (
[CALCULATE_SUM],
[CALCULATE_WITH_ALL]
)
Çıktı:

ALLSELECTED Fonksiyonu:
Geçerli sorgudaki sütun ve satırlardan bağlam filtrelerini kaldırır, ancak diğer tüm bağlam filtrelerini veya açık filtreleri korur.
ALLSELECTED fonksiyonu, sorgudaki tüm satır ve sütunları temsil eden bağlamı alır, ancak satır ve sütun filtreleri dışındaki açık filtreleri ve bağlamları korur. Bu fonksiyon, sorgularda görsel toplamları elde etmek için kullanılabilir.
CALCULATE WITH ALLSELECTED, Export tablosundaki kategori üzerindeki tüm filtreleri kaldırır ve Export tablosundan toplam SalesPiece verir. Ancak filtreler veya açık filtreler etkiler.
CALCULATE WITH ALLSELECTED =
CALCULATE(
SUM(
'Export ' [SalesPiece]
),
ALLSELECTED(
"Export' [Category]
)
)
Çıktı:

ALLEXCEPT Fonksiyonu:
Belirtilen sütunlara uygulanan filtreler hariç, tablodaki tüm bağlam filtrelerini kaldırır.
CALCULATE_WITH_ALLEXCEPT, Export tablosundan toplam SalesPiece bilgisini verir ve Category boyutunu etkiler.
CALCULATE_WITH_ALLEXCEPT =
CALCULATE(
SUM(
'Export ' [SalesPiece]
),
ALLEXCEPT(
'Export',
'Export ' [Category]
)
)
Çıktı:

IF fonksiyonu:
Bu fonksiyon, mantıksal bir ifade eklemenize olanak tanır. Koşullu ifadeleri değerlendirmek ve farklı sonuçlara göre işlemler gerçekleştirmek için kullanılır.
IF FUNCTION DAX ölçüsü, elimizde Türkçe boyut değerleri olduğunu gösterir. Bu nedenle IF fonksiyonu ile bunları İngilizce değerler olarak görebilirim.
IF FUNCTION =
IF(
SELECTEDVALUE ('Export' [Category])="Gida",
"Food",
IF(
SELECTEDVALUE ('Export '[Category])="Elektronik",
"Electronic",
IF(
SELECTEDVALUE('Export' [Category])="ïthalat",
"importation",
IF(
SELECTEDVALUE('Export '[Category])="Lojistik",
"Logistic",
"Total"
)
)
)
)
)
Çıktı:

DATEADD Fonksiyonu:
Geçerli bağlamdaki tarihlerden belirli sayıda aralık ileriye veya geriye kaydırılmış tarih sütunu içeren bir tablo döndürür.
DATE_ADD DAX ölçüsü geçen ayın Gerçekleşen / Actual sayısal değerlerini verir.
DATE_ADD =
CALCULATE (
AVERAGE ('Storage' [Gerçeklesen / Actual]),
DATEADD('Storage' [AyY11 / MonthYear], -1,MONTH)
)
Çıktı:

GERÇEK ÖRNEK:
Mevcut ayı geçen ayla karşılaştırarak renk kodlama. Renk koşulları için şu adımlar dikkate alınmalıdır:
- Mevcut yılın ilk ayı (Ocak) için renk koşulu: Eğer gerçekleşen değer < hedef değer ise kırmızı olmalı; eğer gerçekleşen değer > hedef değer ise yeşil olmalı.
Mevcut yılın Ocak ayı dışındaki durumlar için renk koşulu şudur:
- Eğer gerçekleşen değer >= hedef değer ve gerçekleşen değer > -1 gerçekleşen değer ise, 1 (Yeşil) yazdır.
- Eğer gerçekleşen değer = -1 gerçekleşen değere eşit ise VEYA gerçekleşen değer < -1 gerçekleşen değerden küçükse VE gerçekleşen değer >= hedef değer ise, 2 (Sarı) yazdır.
- Eğer gerçekleşen değer < hedef değer ise, 3 (Kırmızı) yazdır.
Ve Power BI göstergelerini (legends) kullanmadan genel ikonlar kullanın.
İlk olarak, renkli koşullu biçimlendirme vermek için Color_Measure ölçüsü oluşturuluyor.

İkinci olarak, her sayıya renkler veriliyor.

Üçüncü olarak, İkonu Metin Olarak Yerleştirme: Windows + “.” kullanılarak bir ikon yerleştirilir.

Çıktı:
