DAX Serisi #6 – VALUES(): Benzersiz Değerlerin Gücü

Barış CihanBarış Cihan
2 min read

Power BI'da raporlar oluştururken bazen bir kolonun içinde hangi değerlerin filtrelendiğini ya da hangi benzersiz verilerin var olduğunu bilmek isteriz.

İşte bu tür durumlarda VALUES() fonksiyonu devreye girer. Hem basit hem de güçlüdür.


📌 VALUES() Nedir?

VALUES(), belirtilen bir kolon veya tablo için geçerli filtre bağlamındaki benzersiz değerleri döndürür.

Başka bir deyişle:
🧠 “Şu anda bu kolonda hangi değerler aktif durumda?” diye sormanın yoludur.


🎯 Ne İşe Yarar?

  • Slicer ya da görselde seçili değerleri öğrenmek

  • IF, SWITCH, HASONEVALUE() gibi fonksiyonlarla birlikte çalışarak koşullu hesaplamalar yapmak

  • Dinamik başlıklar veya filtrelenmiş tablolar oluşturmak


🧪 Basit Örnek

Bir rapor kullanıcısı sadece "Kadın" kategorisini seçtiğinde özel bir mesaj göstermek istiyorsun.

Selected Category = 
IF(
    HASONEVALUE(Products[Category]),
    VALUES(Products[Category]),
    "Tüm Kategoriler"
)

Bu formül şunu yapar:

  • Eğer kullanıcı tek bir kategori seçmişse, o kategori adını getir

  • Aksi halde "Tüm Kategoriler" yaz


⚙️ VALUES() Söz Dizimi

VALUES(<column>)
  • <column>: Benzersiz değerlerini öğrenmek istediğin sütun

İsteğe bağlı olarak tüm tabloyu da verebilirsin (VALUES(Products)), ancak bu durumda tek kolonlu tablolarla kullanılması tavsiye edilir.


🎛️ Gerçek Hayat Senaryosu

Bir perakende yöneticisi, yalnızca seçili markaların satışlarını görmek istiyor ve her görselin başlığı bu markaya göre değişmeli:

Title Text =
"Seçili Marka: " & 
IF(
    HASONEVALUE(Products[Brand]),
    VALUES(Products[Brand]),
    "Tümü"
)

Görselin başlığı artık kullanıcı etkileşimine duyarlı hale gelir!


🧠 VALUES() + COUNTROWS = Güçlü Kombinasyon

Seçilen kategori sayısını göstermek istersen:

Selected Category Count = 
COUNTROWS(VALUES(Products[Category]))

Bu formül, kullanıcı tarafından seçilen kategori sayısını verir.


🚧 Dikkat Edilmesi Gerekenler

  • Eğer filtre bağlamında hiçbir değer yoksa veya birden fazla değer varsa, VALUES() boş tablo döndürebilir.

  • Bu nedenle genellikle HASONEVALUE() fonksiyonuyla birlikte kullanılması önerilir.


✍️ Sonuç

VALUES(), dinamik raporlar ve kullanıcı etkileşimleri için vazgeçilmezdir.
Slicer'dan seçilen değeri almak, dinamik başlıklar oluşturmak veya kullanıcıya özel sonuçlar göstermek için güçlü ve sade bir araçtır.

Power BI'da kullanıcıyla iletişim kuran raporlar geliştirmek istiyorsan, VALUES() fonksiyonu senin en iyi dostun olacak.


👉 Serimizin bir sonraki yazısında SELECTEDVALUE() fonksiyonunu ele alacağız. VALUES()’ın daha sade bir kardeşi olarak nasıl çalıştığını ve ne zaman tercih edilmesi gerektiğini öğreneceğiz.

Takipte kal, DAX’ın derinliklerine birlikte iniyoruz!

0
Subscribe to my newsletter

Read articles from Barış Cihan directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Barış Cihan
Barış Cihan