LASTDATE, FIRSTDATE

LASTDATE hemen her projede en az bir kez ihtiyaç duyabileceğimiz fonksiyonlardan. İsimden tahmin edilebileceği gibi ekürisi de var: FIRSTDATE. LASTDATE ( 'TabloAdı'[Tarih Sütunu] ) ve döndürdüğü şey, gördüğü mevcut filter context'teki en son tarihtir. Dönen tarih, tek bir değer dönüyor olsa da bir tablodur, . Dolayısıyla bizden parametre olarak tablo isteyen başka fonksiyonlarla birlikte kullanılabilir. … Devamını Oku…

Tabloları Birleştirme, Append ve Dizin Okuma

Power Query 'de tabloları birleştirmenin bir diğer şekli, tabloları alt alta, uçuca ekleme veya Power Query jargonuna göre "append" etme. Önceki yazıda bahsettiğim diğer tablo birleştirme şekli olan "merge" SQL'deki join'lere karşılık geliyor. Bu ise UNION karşılığı. Tabloları alt alta birleştirme ihtiyacı duyduğumuz bir kaç net durum var: Örneğin farklı şubelerin/birimlerin doldurduğu formatı ve yapısı … Devamını Oku…

Tabloları Birleştirme – Merge, Join Tipleri

Veri kaynaklarında bulunan tabloları zaman zaman birleştirme ihtiyacı duyarız. Bazı ERP tasarımlarında da şöyle durumlar var: Misal, faturanın tutar bilgisi bir tabloda, miktar bilgileri bir başka tabloda, aradaki ilişki de Tarih + Belge Numarası + Belge Tipi gibi sütunların kombinasyonu üzerinden tutuluyor. Önce basit bir örnekle başlayayım. Farklı / aynı tarihlerde iki farklı transaction tablosu … Devamını Oku…

Expanded Tables – Giriş

Expanded Tables, DAX'ın üzerinde koştuğu en önemli konseptlerden biri. Aslında davranışını neredeyse biliyoruz, hem ilişkilerin çalışma şeklinden dolayı, hem de RELATED gibi fonksiyonlardan dolayı. Diğer temel konseptlere de göz atmak isterseniz buradan: Filter Context, Row Context, Context Transition. Modeldeki tablolar ve ilişkiler aşağıdaki gibi: Çok basit SUM alan temel [Satışlar] metriği ile birlikte Alt Kategorilerin … Devamını Oku…

Power BI Projeleriniz İçin Öneriler

Yazının başlığını ne koyarsam daha doğru olur diye biraz düşündüm açıkçası, bugüne kadar gelen sorular, içinde bulunduğum projeler, Power BI ile bir şeyler yapmaya henüz yeni başlamış ve SQL bilgisi yüksek profiller, kullanılan ERP sistemini avcunun içi gibi bilenler, kendi alanına hakim power-user iş kullanıcılarını düşününce bazı gözlemlerimi ve değerlendirmelerimi aktarmak isterim. En sık karşılaştığım … Devamını Oku…

Asimetrik Raporlar, Excel Named Sets

Asimetrik rapor ne demek tanımlamadan önce Power BI 'daki matrisin varsayılan davranışına bir bakalım. Aşağıdaki gibi bir veri setimiz var: 2018 ve 2019 yıllarına ait satış verisi var, fakat bütçe sadece 2019 yılı için var. Basit SUM'larla ve bölme işlemiyle satışları, bütçeyi ve gerçekleşmeyi hesaplayıp aşağıdaki gibi bir matrise düşürüyorum. Yukarıdaki matris ! Satışlar, Bütçe … Devamını Oku…

Seçili Rapor Filtreleri

Power BI 'da kullanıcı ihtiyaçları arasında zaman zaman karşılaştığım bir durum var: Seçilen filtreleri raporun bir yerinde göstermek ve seçilen filtrelerin tamamını bir anda sıfırlamak. Rapor filtrelerini genelde "slicer" olarak ekliyoruz ve çoğunlukla da bir rapor tasarım unsuru olarak kullanıyoruz. Rapora eklediğimiz filtreleri zaten sayfada görüyoruz diyeceksiniz -ki benzer talepler geldiğinde benim de ilk tepkim … Devamını Oku…

Senaryo Analizi, Parametrik What If

Raporlarımızdaki metriklerin bazen parametrelere bağlı olarak nasıl değişeceğini görmek isteriz. Örneğin fiyatları %5 arttırsak, ciro-karlılık ne kadar etkilenecek, maliyetleri %5 düşürebilsek sonuçlar ne olacak? Çoklu para birimli bir bütçe yaptıysak kur değerine bir aralık vermek isteyebiliriz. Yani, senaryo analizi yapmak isteriz. Power BI 'da senaryo analizi için bir yapısı uzun süredir var. Aşağıdaki gibi basit … Devamını Oku…

Azure Analysis Service ve Azure AD B2B

Şunu itiraf etmeliyim, tüm konsantrasyonum Power BI ve ilgili Azure servisleri olmasına rağmen hızına yetişmekte hakikaten zorlandığım bir geliştirme hızı var. Yakın zamanda gelen bir kaç önemli özelliği bile kaçırmışım, bunu da son yaptığımız webinar'da Mustafa Aşıroğlu sayesinde farkettim. Gene itiraf etmeliyim, e-posta-mesaj yoluyla sorulan sorulara olabildiğince hızlı dönüş yapmaya çalışıyorum ama bunlara da son … Devamını Oku…

Embedding

Sık gelen sorulardan bir tanesi, Power BI raporlarını bir başka uygulamada, özellikle de bir web sitesi altında gösterebilirmiyiz sorusu. Soruyu soran kurum / kişilerin amacı genellikle çok sayıda kullanıcı olması durumunda Pro lisans olmadan rapor paylaşımında bulunmak, örneğin bir eğitim kurumusunuz diyelim ve binlerce öğrenci yüzlerde akademisyen var, powerbi.com servisini kullandırmak istediğinizde paylaşıma girdiği ve … Devamını Oku…

Row Level Security

Row level security, ya da kısa yazılışıyla RLS, veri modeline erişen kullanıcının kimliğine göre modeli sağlayan bir özellik. Diyelim bir satış modelimiz var ve gayet güzel raporlar hazırladık. Sonraki ihtiyaç genelde şöyle bir şeye benziyor: Marmara bölge müdürü girdiğinde sadece Marmara bölgesine ait satışları, Ege bölge müdürü girdiğinde sadece Ege bölgesine ait satışları görsün, ama … Devamını Oku…

Hesaplanmış Sütun Olarak RANKX

Daha önce RANKX'in metrik olarak kullanımına ilişkin üç farklı yazı eklemiştim, 1, 2, 3, bu sefer de hesaplanmış sütun olarak kullanımına ilişkin örnekler vereceğim. Çünkü bu fonksiyon filter context, row context ve hesaplanmış sütun kavramlarının çalışma mantığını anlamak açısından çok güzel bir örnek. Ve DAX tamamen bu konseptler üzerinde dönüyor. Metrik olarak kullanımı kısaca özetlemek … Devamını Oku…

Kategoriler Dax

Groups, Bins

Power BI ile hazırlamış olalım veya olmayalım, tüm raporlarda kullanıcı ihtiyaç ve talepleri genelde çok benzer: Bir matristeki rakamları incelerken 1000 tane ürünü altalta görmek istemeyiz, en yüksek veya en düşük -diyelim- 30 ürüne odaklanmak isteriz. Görsellerde görüntülediğimiz ürün kategorileri, satış ekibi, müşteri sınıfı ya da masraf merkezi gibi modelimizde bulunan sütunları/değerleri gruplamak da benzer … Devamını Oku…

Quick Measures

Power BI 'ın modelleme dili olan DAX basit bir dil. Fakat -zaman zaman- kolay bir dil değil. Her dil gibi kendine özgü bir mantığı ve yapısı var. İyi haber şu ki, herhangi bir projede bize lazım olan metriklerin büyük çoğunluğunu yazmak hiç de zor değil. Bu durumu açık sınıf eğitimlerine katılan kullanıcıların yaptıklarına bakarak demiyorum … Devamını Oku…

Power BI + AI

Power BI her ay güncelleniyor, durağan bir uygulama kesinlikle değil. Son dönemde duyurulan yeniliklerden biri yakın zamanda gelecek olan AI (yapay zeka) özellikleri. Veri bilimi ve makine öğrenimiyle ilgilenenlerin kayıtsız kalmaması gereken yenilikler. Önce mevcut durumdaki kabiliyetlere değineyim: Quick Insights : Yaklaşık bir yıldan biraz daha uzun bir süredir kullanımda, ilk çıktığında çok limitli bir … Devamını Oku…

Zaman Hesaplamaları -4, Hafta Karşılaştırma

Aynen kümülatif zaman fonksiyonlarında olduğu gibi, dönem karşılaştırma fonksiyonlarında da haftalık hesaplama için kullanabileceğimiz doğrudan bir fonksiyon yok. En esnek DATEADD fonksiyonunda dönem (interval) olarak gün, ay, çeyrek veya yıl seçebiliyoruz. Hafta yok. Haftanın standart bir tanımı yok, gerekçesi de bu. Kullandığım tarih tablosunda ilgili günün yılın hangi haftasına ait olduğunu gösteren bir "Hafta No" … Devamını Oku…

Zaman Hesaplamaları -3, Dönem Karşılaştırma

Tüm modellerde, zamanla ilgili kümülatif hesaplamalara ek olarak dönem karşılaştırma metrikleri de istisnasız lazım oluyor. Önceki aya göre, önceki yıla göre, önceki yılın göre gibi metrikler her modelin içermesi gereken metriklerden. Uyarımı son kez tekrarlayayım, Tarih tablosu her modelin vazgeçilmez tablosudur ve özel bir tablodur. Transaction tablolarındaki tüm tarihleri içermesi tek başına yetmez, transaction tablolarında … Devamını Oku…

Zaman Hesaplamaları -2, Kümülatifler

Önceki yazıda aylık, çeyrek bazında ve yıllık kümülatifleri kolaylıkla bulduk, çünkü hepsine karşılık gelen bir"time intelligence" fonksiyonu var. Fakat haftalık kümülatife doğrudan karşılık gelen bir fonksiyon yok! Bunun bir kaç sebebi var: Hafta tanımı sabit bir tanım değil, ilk hafta her yılın 1 Ocak günü mü başlıyor, yoksa ilk Pazartesi mi başlıyor, Şubat'ın 29 çektiği … Devamını Oku…

Zaman Hesaplamaları -1, Kümülatifler

İstisnasız tüm Power BI modellerinde bize lazım olan metrik gruplarından biri de zamana göre karşılaştırma metrikleri; önceki aya göre artış, önceki yıla göre varyans ya da geçen yılın tamamına göre neredeyiz gibi metrikler. Zaman periyotlarına göre -ki periyot gün, ay, çeyrek ya da yıl olabilir- karşılaştırma için bize lazım olan fonksiyon grubu "time intelligence" grubundaki … Devamını Oku…

ISINSCOPE ve Rasyolar , % of Parent

Daha önce ALL ve ALLSELECTED fonksiyonlarını kullanarak rasyolarla ilgili bir yazı yazmıştım. Matristeki dip toplama göre % hesaplaması gayet kolay. Kolay olmayan, matriste birden fazla hiyerarşi olması durumunda, yüzdeyi her bir grup için kendi içinde ayrı ayrı hesaplamak. İdi. Power BI 'ın Kasım güncellemesinde gelen ISINSCOPE fonksiyonu ile bu da kolaylaştı. Örnek metriklere geçmeden önce, Analyze … Devamını Oku…

Kategoriler Dax