CALCULATETABLE

Daha önceki CALCULATE yazılarında FILTER, AND ve OR kullanımına ilişkin örnekler yapmıştık. Örnekleri kısaca tekrarlayıp konuyu CALCULATETABLE 'a bağlayacağım. Contoso markalı siyah ürünlerin satışlarını hesaplamak için aşağıdaki gibi boolean tipinde filtrelerle CALCULATE fonksiyonunu kullanmıştık. CALCULATE'in filtrelerinin boolean tipi olması durumunda formülün internal açılımının FILTER ( ALL …)  şeklinde olması önemli bir detay, bu yüzden tekrarlayacağım. … Devamını Oku…

ISFILTERED, ISCROSSFILTERED

Filter context'i ve filter propagation 'ı (filtrelerin akmasını) biraz daha iyi anlamamızı sağlayacak ISFILTERED ve ISCROSSFILTERED fonksiyonlarını açalım. Bu fonksiyonları ileriki yazılarda özellikle matris görselinde bazı rasyo hesaplamalarında kullanacağız. , verdiğimiz sütun üzerinde doğrudan bir filtre varsa TRUE döndürür, değilse FALSE döndürür. Doğrudan filtre olması demek, ilgili sütunun matriste satıra veya kolona düşürülmesi  ya da dilimleyide … Devamını Oku…

Kur Tablosu Üzerinden FILTER, VALUES ve MAX

Power Query 'de liste oluşturma ve merge yapma işlemleri için daha önceki yazıda kur tablosu örneğini vermiştim. Özetlemek gerekirse, farklı para birimleri üzerinden satış satırlarımız ve belirli tarih aralıkları için geçerli bir kur tablomuz vardı. Satışların olduğu tabloya, ilgili satırdaki kurun ilgili tarihteki kurunu getirip aşağıdaki forma sokmuştuk. Aynı örneği bir de DAX ile yapalım. … Devamını Oku…

Değişken Kullanımı, VAR

Power BI 'da kompleks DAX formüllerini yazmayı kolaylaştıran değişken (variables) yapısı var. Önceki yazıda bir giriş örneğini  yaptığımız değişken kullanımına farklı örnekler verelim. Aşağıdaki gibi metriklerimiz var: satış yapılan müşteri değişken kullanarak bulalım. Değişken isimleri arada boşluk veya Türkçe karakterleri desteklemiyor. Burada bilinmesi gereken nokta . Kullanıldığı yerde . Değişkenin tanımlandığı yer  VAR ile başlayan … Devamını Oku…

Context Transition

DAX 'taki en önemli fonksiyonlardan biri olan CALCULATE 'in sahip olduğu kabiliyetlerden biri de . Formal tanımı şu şekilde: CALCULATE, bir row context altında çalışırken, ilgili row context'i eşleniği olan filter context'e çevirir. Bu ne demek açalım. Daha önce aggregator ve iterator fonksiyonlara SUM ve SUMX üzerinden giriş yaptığımız yazıda  "Ürünler" tablosuna şöyle bir hesaplanmış … Devamını Oku…

List ve Merge, Kur Tablosu

Power BI 'da sık karşılaşılan durumlardan biri de yabancı para birimi cinsinden yapılan işlemlerin bir kur tablosu üzerinden TL'ye çevrilmesi. DAX ile çözmek de pekala mümkün, fakat bu tür durumlarda Power Query'nin gücünden faydalanmak daha hızlı ve kolay. Aşağıdaki gibi bir veri setimiz var: Farklı tarihlerde farklı para birimleri üzerinden yapılmış satışlarımız var, kur tablosunda … Devamını Oku…

EARLIER

Power BI 'daki "context" kavramı ile ilgili yazıda, iterator fonksiyonlar, verdiğimiz tablodaki  filter context üzerine  yeni bir row context ekler, bunun tek istisnası önceki context'in bir filter context değil de, aynı tablo üzerindeki bir başka row context olması durumunda gerçekleşir, bu durumda yeni yaratılan row context, önceki row context'i gizler, görmezden gelir diye yazmıştım. Bu -kafa karıştırıcı- cümleyi biraz açalım. … Devamını Oku…

Çoklu Firma, Kompozit Anahtar

Power BI ile ilgili sık gelen sorulardan biri, çoklu şube-çoklu firma modelinde ilişkilerin nasıl oluşturulacağı yönünde. Örneğin aşağıdaki gibi bir data yapısı olsun: Master ürünler tablosunda ürün kodları birden fazla firmada aynı olabilir! Power BI'da iki tablo arasında ilişki kurabilmenin genel kuralları şöyle: İki tablo arasında ilişki tek sütun üzerinden kurulabilir. İlgili sütunların tipi her … Devamını Oku…

Context = Filter Context + Row Context

Power BI 'da DAX ile bir formül yazdığımızda, her ne formülü olursa olsun, çalışmaya başlamadan önce, hesaplama yapacağı hücrenin (noktanın) context'ini bulur. Context -en basit tanımıyla-  ilgili hücreyi hesaplarken tabular engine'nin gördüğü filtrelenmiş veri kümesidir. Dilimleyicide kırmızı ve mavi renkler seçili: Tabular engine şu an formülü hesaplarken sadece ve sadece bu renk ürünlerin satışlarını görüyor. … Devamını Oku…

CALCULATE ve IN Kullanımı

Önceki yazıda OR ile CALCULATE 'in kullanımına ilişkin örnekler vardı, bu örnekleri IN ile biraz daha açalım. Örnekleri tekrarlamak gerekirse aşağıdaki iki formül de aynı, sadece OR yerine || kullanıldı: Yukarıdaki formüllerin okuması daha kolay olan bir alternatifi daha var: ( ) yerine { } kullanıldığına dikkat! Formüldeki filtre "boolean" tipinde bir filtre, dolayısıyla bunun internal … Devamını Oku…