Power BI’da Filtre ve Satır Bağlamı Kavramları
Herkese merhaba. Öncelikle herkesin geçmiş bayramını kutluyorum. Umarım güzel bir bayram geçirmişsinizdir. Bu yazımızda Power BI için temel kavramlardan olan filtre ve satır bağlamını inceleyeceğiz. İlk önce filtre bağlamını açıklayalım.
Hesapladığımız ölçüler neticesinde Power BI karşımıza bir sonuç döndürmektedir. Bu sonucu döndürmeden önce veri kümesinde yaptığımız filtrelemeler, filtre bağlamını oluşturmaktadır. Bu sebeple ön tarafta herhangi bir şey görmeyiz, filtreler arka planda kurulan ilişkilerin yönüne uygun olarak hızlı bir şekilde yapılır.
Bir örnek ile konuyu açıklayalım. Her zamanki gibi AdventureWorks veritabanını kullanıyoruz. İlk önce ilişkiler görünümüne göz atalım. İlişkiler görünümü ile ilgili şu yazıma göz atabilirsiniz, tekrar yapmak açısından faydalı olacaktır.
Şekil 1: İlişkiler Görünümü
Filtre bağlamı çalışırken ilişki yönünde akar demiştik. Bunun anlamı şudur. Örneğin “ShipMethod” tablosundan bir değer seçtiğimiz zaman ilişkinin yönü “SalesOrderHeader” tablosuna doğru olduğu için sipariş tablosunda filtreleri uygular, ve hesaplanan değeri bu filtreye göre getirir.
Bir tablo görseli oluşturalım ve taşıma metodunu ve satışları koyalım.
Şekil 2: Taşıma Metoduna göre Satış Adetleri
Filtre bağlamı bu tablo için nasıl çalışıyor açıklayalım. Satış adetlerini hesaplamadan önce ilgili taşıma metodunun değerini buluyor ve satış tablosunda filtreliyor. Ardından satış adedini hesaplıyor ve görsel içinde bize gösteriyor. Üç aşamalı bir süreç aslında. Tablolar birbirine id’ler üstünden bağlandığı için ilk önce “Cargo Transport 5” değerinin id değerini buluyor. Ardından bu değeri satış tablosunda filtreliyor ve satış adedini hesaplıyor, ve tablo görselinde de değeri bize gösteriyor. Aynı şekilde işlemler “XRQ-Truck Ground” değeri için de yapılıyor. Toplam satırı için herhangi bir filtre yapılmıyor, orada tüm tablo için hesaplama yapılıyor.
Burada filtreleme işlemini dilimleyici görselinden de yapabiliriz bu arada. Filtre bağlamı aynı şekilde dilimleyiciden seçtiğimiz değere göre çalışır. Örnek olarak taşıma tarihini dilimleyiciye koyalım ve bir filtre uygulayalım.
Şekil 3: Dilimleyici ile Filtre Bağlamı
Tabloda taşıma metodu filtresi uyguladık, ayrıca dilimleyici görseli ile tarih filtresi de vermiş olduk. Hem taşıma metodu “Cargo Transport 5” olan hem de taşıma tarihi 25.10.2012-07.07.2014 arasındaki satışları getir dedik. Toplam satırı tablodaki değerlerden etkilenmiyor fakat dilimleyicideki seçimlerimizden etkileniyor.
- Filtre bağlamı hesaplama yapmadan önce veri kümesine yaptığımız filtreleri ifade eder.
- Filtre bağlamında filtrenin yönü ilişki yönüne göre uygulanır.
- Filtre bağlamında filtreler dilimleyici gibi görsellerden de gelebilir.
- Filtre bağlamında toplam satırı dilimleyici seçimlerinden etkilenir.
- Satır bağlamı, her bir satır için yaptığımız işlemleri ifade eder.
- Satır bağlamı hesaplanmış sütun veya iteratör fonksiyonlarda ortaya çıkar, çünkü bu tür hesaplamalar satır bazlı işlem yapmaktadır. Yani, bulunduğu satırdaki değerin farkındadır. Tablolar arasındaki ilişkileri görmez, sadece bulunduğu tablodaki satır değeri ile işlem yapar. Diğer tabloları kullanarak işlem yapmak istiyorsak DAX fonksiyonlarından yararlanabiliriz.
KAYNAKÇA
https://powerbi.istanbul/powerbi-context-filter-context-row-context/
https://blog.enterprisedna.co/explaining-row-context-in-power-bi/