İlk Raporu Hazırlamak

Veriyi almak bir iş, alınan veriyi ne yapacağımız da başka bir iş. “Nereden Başlamak Lazım?” isimli bir önceki yazımda Power BI veri modeline örnek bir excel dosyasındaki tek tablodan üç farklı tablo yaratmıştık. Neticede aşağıda gördüğünüz gibi bir modele ulaşmıştık. Tablo ve kolon isimlerini biraz değiştirdim, daha anlaşılır oldu.

Bu üç tablo ve ilişkiler ile bir matris de kurmuştuk ve kanal ve ülke bazında gösterim yapmıştık. Şimdi yeni bir matris yapalım ve yıllık toplamları bulalım. Matrisimizi aşağıdaki kolonlar ile oluşturalım. Bunların hepsi Satış tablosundan, Ülke ise Ülkeler tablosundan. Satış tablosunda da Ülke kolonu var ama onu gizlemiştik. Burada onu kullansanız da olur ama her veri modeli bu kadar basit olmayacağından her zaman boyut (dimension) tablosundaki kolonları kullanmaya alışmanızı tavsiye ederim.

Bu veriler ile elimize aşağıdaki gibi bir matris geçmiş olacak. Gördüğünüz üzere ilgili yıl ve ay içindeki her ülkenin satış toplamlarını görebiliyoruz. Yukarıda göreceğiniz gibi Değerler’de “Toplam Net Satış” seçili.

Toplam Net Satış’ın yanındaki küçük oka tıklayınca açılan menüden değeri nasıl görmek istediğimizi seçebiliriz.

Mesela Ortalama’yı seçersek matrisimizde her değer ortalamayı gösterir hale gelecektir. Bu şekilde sipariş sayısı, maksimum, minimum ve hatta standart sapma bile hesaplatabiliriz.

Diğer yandan değerleri kolonun yüzdesi, satırın yüzdesi ve toplamın yüzdesi gibi farklı formatlarda da gösterebiliriz. Buralarda biraz oynayarak değişikliklerin etkisini görebilirsiniz.

Buraya kadar güzel şeyler gördük ama matrisimizin tertibinde sıkıntımız var. Ayların sırası bozuk geliyor. Ay isimleri İngilizce olduğundan ilk bakışta anlaşılmamış olabilir ama 2013 yılında aralık, kasım, ekim, eylül gibi ters bir sıra denk gelmiş gibiyken, 2014 yılı nisan, ağustos, aralık diye gidiyor. Alfabetik sıra geliyor yani. Bu kadar basit bir sıralamayı yapmak için elbette Power BI’da bir çözüm mevcut. Öncelikle ekranımızın en solundaki görüntü tiplerinden Tablo görüntüsüne geçiyoruz. Satış tablomuzu seçiyoruz ve verilerimizi görüyoruz. Ay Adı kolonunu seçip yukarıdaki “Sütün Araçları” menüsünden “Sütuna göre sırala” düğmesine tıkladığımızda, bu veriyi neye göre sıralamak istediğimizi seçebiliyoruz.

Yukarıdaki ekran görüntüsünden görebileceğiniz gibi açılan listeden Ay Sayısı kolonunu seçtiğinizde ve rapor görünümüne döndüğünüzde artık matrisinizin ay isimlerine göre değil ay sırasına göre sıralandığını göreceksiniz. Bu özellik o kadar çok işinize yarayacak ki şaşarsınız. Tam bu nedenle satış tablosuna “Ay Sayısı” diye bir kolon eklemek her zaman faydalıdır.

Buraya kadar Excel’de alışkın olduğumuz Pivot Tablo benzeri bir deneyimi yaşadık. Aslında çok da zor değilmiş di mi? Gerçekten zor değil. Herkes basit raporları bu kadar hızlı bir şekilde yapabilir. Ama daha fazlasını öğrendiğinizde çok daha gelişmiş metriklere ulaşabilirsiniz.

Mesela Satış tablomuzun Ürünlerine bir bakalım. Yeni bir pivot tabloda yukarıdakine benzer şekilde yıl ve ürün bazlı toplam satışları toplamak oldukça kolay. Yanına Toplam Kar tutarını koymak da kolay. Şunu demek istiyorum.

Tertemiz veriler geldi. Peki Kar marjını bulmak istesek? Kar/Satış formülünü uygulamamız lazım. Bunun ilk akla geleni Excelde yaptığımız gibi yeni bir kolon açmak ve bu formülü uygulamak. Bunu burada da yapabiliriz tabi ama bu sefer pivot yaparken ağırlıklı oranları almak gibi bir derdimiz olacak. Düz ortalama alamayız, toplamı bulup toplamın oranını bulmak lazım. Bir sürü dert. İşte bu dert aslında DAX ile rahatça çözülebiliyor. DAX Power BI ve hatta Excel içinde dinamik metrikler yazabileceğiniz bir kodlama dili. Çok basit bir dil ama söylemek lazım detaylara girdikçe kapsamlar dolayısıyla oldukça da karmaşık olabiliyor.

Hadi gelin en basit ve çoğumuzun en çok işine yarayacak ve en çok kullanacağımız birkaç formülü uygulayalım da nasıl bir kolaylık olduğunu anlayalım. Üst menüde yan yana duran üç düğmeden ortada duran “Yeni Ölçü” seçimini yapacağız. Bu seçimleri Modelleme menüsü altında da bulabilirsiniz. “Yeni sütun”u seçerseniz yukarıda bahsettiğim gibi Excel’de yeni bir kolon açmış gibi olursunuz, onu yapmayın. Böyle bir kolona ihtiyacımız olmadığını birazdan anlayacaksınız.

Yeni Ölçü’ye tıkladığınızda Excel’den alışkın olduğumuz gibi yukarıda bir formül yazma kutusu açılacak. Bu kutuya aşağıdaki metni yazın. Yazarken programın biraz yardımcı olduğunu göreceksiniz, klavyeden yukarı, aşağı ve tab tuşları ile hızla kolon seçebilirsiniz.

Toplam Satış = SUM('Satış'[Net Satış])

Bu formülde basitçe Satış tablosundaki Net Satış kolonunda bulunan verileri topla diyoruz. Bu topladığını da Toplam Satış isimli bir ölçüye atıyoruz. Oldukça basit. Aynısını bir de Kar kolonu için yaparak toplam kar miktarımızı hesaplatabiliriz.

Toplam Kar = SUM('Satış'[Kar])

Şimdi bu iki kolonu da matrisimize ekleyelim, önceden bulduklarımızla fark olup olmadığını kontrol edelim.

İlk iki değeri yine toplam’dan ortalama’ya ya da minimum’a değiştirebiliriz ancak son ikisi artık bizim tanımladığımız “SUM” sonucunu verecek dinamik bir formül. Şimdi bunların yanına bir de Kar Marjı ekleyelim. Formül artık çok basit oldu, buyurunuz;

Kar Marjı = [Toplam Kar]/[Toplam Satış]

Bu metrik de dinamik olarak her seçimin toplam karını toplam satışına bölecek. Bunu da tablonuza ekleyip sonuca bakarsınız. Ben daha fazla ekran görüntüsü almamak için bir adım ileriye gidip kanal bazlı ürün karlılığını görecek şekilde bir düzenleme yapmak istiyorum.

Gördüğünüz gibi matrisin satırında ne varsa ona göre ve o detayda kar marjını görebiliyoruz. Artık verilerden emin olduğumuza göre sadece yeni ölçülerimizi tablomuzda bırakıp yılları sütunlara alalım, bakalım kanal ve ürün bazlı yıllık marjlar nasılmış.

Buraya kadar görebileceğiniz üzere Kar Marjı isimli ölçüyü bir kez yazınca her yerde kullanabiliyoruz. Şimdi bir adım daha ileriye gidelim, sadece Fransa’ya yapılan satışların marjını bulalım. Bunu yaparken sanki bir pivot tabloya ülkeleri eklemişiz ve sonra o kolondan France olanları filtrelemişiz gibi davranacağız, bunu DAX ile yazacağız. Elimizde zaten Kar Marjı formülü bulunduğundan aşağıdaki gibi bir formül işimizi görecek.

Fransa Kar Marjı = CALCULATE([Kar Marjı], FILTER('Ülkeler', 'Ülkeler'[Ülke] = "France"))

Burada diyoruz ki, git Ülkeler tablosundan Ülke kolonunda “France” yazanları filtrele. Bunu filtrelediğinde zaten veri modelindeki ilişkiler dolayısıyla Satış tablosu da filtrelenmiş olacak. Satış tablosundan değil de gidip Ülkeler tablosundan filtrelemek her yerde her zaman çalışacak formüller yazmanızı sağlar, iyidir. Bu filtreyi uyguladıktan sonra da gel bizim Kar Marjı formülünü tekrar hesapla ve Fransa Kar Marjı altına kaydet. Şimdi yine dinamik, ürüne ve yıla göre değişecek yeni bir kar marjı formülümüz oldu. Bunu da matrise ekleyince Fransa özelinde verimiz hazır.

Pivot tablolardaki kapsamı her değiştirdiğimizde sonuçlar da buna göre değişecek, ne kadar detaya inersek o kadar ince hesap yapacak bir formülümüz oldu.

Epey de uzun bir yazı oldu. Bir tane satış tablosundan bu kadar detaya inecek bir hale geldik, daha da güzel şeyler yaparız ama artık bir sonraki yazıya.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Time limit exceeded. Please complete the captcha once again.