Azure Devops & PowerBI Entegrasyonu

Dilan Altunışık
inventiv
Published in
8 min readOct 12, 2021

Bir konuyu anlamanın, pekiştirmenin en önemli yollarından birinin uygulama olduğunu düşünüyoruz. Bu sebeple daha önce tasarladığımız bir rapor üzerinden Azure Devops ve PowerBI entegrasyonunun nasıl yapılacağını örnek bir rapor üzerinden yapmak istiyoruz.

Organizasyon olarak işlerimizi Azure Devops üzerinden yürütüyoruz. Sık sık günlük tamamlanan işler, dönemsel eforlar, yıllık izin ve resmi tatiller gibi raporlara ihtiyaç duyuyoruz.

Burada sizlerle beraber Günlük Tamamlanan İşler Raporu’nu oluşturup düzenlemelerini yapacağız. Bu rapor sayesinde günlük eksik veya fazla girilen saatleri rapor üzerinden kontrol edip düzeltme işlemi yapabiliriz.

Azure Devops’ta proje bazında sorgular yazıp bu ihtiyacınızı giderebilirsiniz, ancak bizim gibi organizasyon bazında kullanılsın istiyorsanız ve birkaç projenin birleşiminden oluşan raporlar yaratmak istiyorsanız PowerBI tam da size göre.

Yapacağımız işleri özetlemek gerekirse, tüm projelerde “günlük tamamlanan işler” viewini oluşturup PowerBI tarafında kişi bazında resmi tatil ve izinleri çıkarmamız gerekecek. Bu şekilde kişi yarım gün izinliyse, raporu çektiğinde girmesi gereken eforu 8 değil de 4 olarak görebilecek. Bunun içinse elimizde resmi tatil ve yıllık izin verilerinin de olması gerekiyor. Biz Resmi tatil ve yıllık izinleri yürütmek için ayrı bir proje açıp work itemlarını konfigüre ettik. Bu projede de Resmi Tatil ve İzin adında 2 ayrı view oluşturacağız.

Hadi başlayalım!

  • Öncelikle Azure Devops’ta view oluşturma işlemini Analytics View alanından yapıyoruz. Analytics görünümleriyle, Analytics verilerine dayalı bir Power BI raporu için filtre ölçütlerini belirtmenin ve paylaşmanın basitleştirilmiş bir yolunu elde edersiniz. Analytics, Azure DevOps için raporlama platformu sağlar.

Rapor Oluşturabilmek İçin Önkoşullar

Bir Analytics görünümüne başvuran bir Power BI raporu oluşturmak için aşağıdaki ölçütleri karşılamanız gerekir:

  • Bir projenin üyesi olmalısınız.
  • Analiz görünümleri yalnızca Azure Boards verilerini (çalışma öğeleri) destekler. Pipelines gibi diğer veri türlerini desteklemez. Dolayısıyla Panolar etkinleştirilmelidir. Devre dışı bırakılırsa, Analytics görünümleri görüntülenmez.
  • Analytics View kullanmak için izniniz olması gerekir.

Analytics View’i etkinleştirmek için:

  1. Proje ayarlarına gidin.

2. Yetki vermek istediğiniz grubu seçtikten sonra aşağıdaki gibi delete edit veya view yetkilerini düzenleyebilirsiniz.

Görünüm Oluşturmak

  1. New View’dan yeni bir görünüm açıp, Power BI’da görüntülemek istediğiniz verileri şekillendirmek için sekmelerdeki formları doldurun.

2. General sekmesinden görünümün adını verdikten sonra dilerseniz bu raporla ilgili açıklama yazabilirsiniz.

  • General sekmesindeki Sharing bölümünden görünümünüzü özel veya paylaşılabilen seçenekleri çıkıyor. Biz organizasyon bazında bir rapor oluşturduğumuz için shared view seçtik.

3. Work items sekmesinden verilerinizin kapsamını belirlemek için iş öğesi alanlarına farklı filtreler ekleyebilirsiniz. Biz günlük tamamlanan işler raporu oluşturduğumuz için aşağıdaki düzenlemeleri yapıyoruz.

  • Tüm takımlar bu raporu kullanacağı için tüm takım projelerini ekliyoruz.
  • Günlük eforlarımızı taskların içine girdiğimiz için Backlogs and Work Items bölümünden work item olarak Task’ı ekliyoruz.
  • Sonrasında açık veya iptal edilen taskların rapora yansımasını istemediğimiz için Field Criteria bölümünden, State’i Close ve kapatılma sebebi Completed olan taskları ekliyoruz.

4. Bir sonraki sekme olan Fields, raporunuzda kullanacağınız alanları eklemenizi sağlar. Add butonundan yeni bir alan ekleyebileceğiniz gibi, yeni bir listeyle başlamak isterseniz Remove All butonuna tıklayabilirsiniz. Çöp kutusu butonundan tek tek silme işlemi de yapabilirsiniz.

  • Bizim oluşturacağımız rapor için aşağıdaki alanlara ihtiyacımız olduğundan bu alanları seçtik. Siz ihtiyacınıza göre seçim yapabilirsiniz.

5. History sekmesinden, görünümden ne kadar geçmiş verisinin kullanılabileceğini belirleyen seçenekleri seçersiniz.

  • Biz tüm verilerin yansımasını istediğimiz için All History seçeneğini tercih ettik. Oluşturduğumuz rapor organizasyon bazında her gün kullanılacağı için ise Granularity alanından Daily’i seçtik.

6. Son adım olan Verification, görünüme için bir test sorgusu çalıştırarak ve filtre kriterlerini doğrulayarak görünümünüzü doğrular. Bu işlemi yapmak için Verify view butonuna tıklamalısınız. Doğrulama süresi, görünümünüzde tanımlanan veri miktarına göre değişebilir.

Her proje için raporlama yapmak istiyorsanız, bu 6 adımı tüm projelerden tekrarlamalısınız.

Yukarıda bahsettiğimiz gibi, Günlük Tamamlanan İşler Raporu’muzdan izinleri ve resmi tatilleri çıkararak raporlama yapmak istiyoruz. Bunun için aşağıdaki işlemleri yaptık:

Yıllık izin ve resmi tatilleri yönettiğimiz bir proje oluşturarak Resmi Tatil ve İzin adında iki work item tipi yarattık.

Organizasyonumuzda resmi tatilleri ve çalışanların izinlerini yönetmekle sorumlu olan kişi için yetkilendirme yaptık.

Resmi Tatiller ve Yıllık İzinler adında yukarıdakine benzer şekilde 2 tane view oluşturduk.

Azure Devops tarafındaki işlerimizi tamamladık, şimdi sırada PowerBI’da raporu oluşturmak var!

Görünümü PowerBI’a Bağlama

  1. PowerBI uygulamasını daha önce kurduğunuzu varsayarak başlıyoruz. Açtığımız Power BI uygulamasında Giriş > Veri Al > Daha Fazla… şeklinde ilerliyoruz.

2. Gelen pencerede Azure Boards Only seçeneğini seçerek Bağlan diyoruz.

3. Kuruluş ve proje bilgilerini giriyoruz

4. Ardından oturum açılması gerekiyor.

5. Sonrasında karşınıza oluşturduğunuz görünümler(views) gelecektir.

6. İstediğiniz görünümleri seçip Veri Dönüştürme butonuna tıkladıktan sonra Azure’da Fields sekmesinden eklediğiniz verileriniz karşınıza gelecektir.

7. Bu adımdan sonra artık istediğiniz işlemleri yapabilirsiniz. Gereksiz kolonları silebilir, çoklanan satırları kaldırabilir ve örneğin tarih bilgisini gün/ay/yıl şeklinde bölebilirsiniz.

  • Raporumuzda kullanacağımız bütün viewler’i yukarıda anlattığımız şekilde bağladık. Artık bizim raporumuz için gereken düzenlemeleri yapmaya başlayacağız.

Data İşlemleri

  1. Filtreleme

Filtreleme yapılmak istenen tablomuzu seçiyoruz ve kaldırılmak istenilen sütuna tıklıyoruz. Kaldırılmak istenen verilerin tiklerini kaldırarak Tamam diyoruz.

2. Çoklananları Kaldırma

Çoklanan datayı kaldırmak için, datanın bulunduğu sütuna gidip sağ tıklayarak Yinelenenleri Kaldır diyoruz.

3. Kolon Kaldırma

Kaldırılmak istenen sütuna sağ tıklanarak Kaldır seçeneğine tıklıyoruz.

4. Tarih Dönüştürme

Tarihimiz, saat içeren formatta gelirse, gg/aa/yyyy şekline çevirmek için kolona sağ tıkladıktan sonra Dönüştür seçeneği altında Yalnızca Tarih’i seçiyoruz.

5.Referans Almak

İki ayrı tablodaki bir alanı tek bir tabloda toplamak için referans alma işlemini uyguladık. Öncelikle referans alınacak tabloya giderek sağ tıklıyoruz ve Başvuru‘yu seçiyoruz.

  • Biz burada tek bir kolonu kullanacağımız için ilgili kolona sağ tıklanarak Diğer Sütunları Kaldır seçeneğine tıklanır. Bu şekilde diğer tablodada aynı işlem yapılır.
  • Ardından oluşturduğumuz bu iki tabloyu birleştireceğiz. Bunun için ana tablo olacak tabloya gidilir. Ve üst menüde Giriş>Sorguları Ekle seçeneğine tıklanır.
  • Ve gelen pencerede ilgili tablo seçilir ve Tamam butonuna tıklanır. Ve çoklananları kaldırılır.
  • Tüm gerek duyduğumuz ayarlamaları yaptıktan sonra Kapat & Uygula seçeneğine tıklanarak kaydedilir.

Tablo İlişkileri

  • Aşağıdaki işaretlenen butondan da tabloların ilişkileri yönetilir.

Biz raporumuzda;

  • Tarih tablosundaki Date alanı ile Yıllık İzinler tablosundaki Tarih alanı
  • Tarih tablosundaki Date alanı ile Resmi Tatiller tablosundaki Tarih alanı
  • Tarih tablosundaki Date alanı ile Günlük Tamamlanan İşler TAKIM tablosundaki ClosedDate alanı
  • AssignTo tablosundaki Assigned To ile Günlük Tamamlanan İşler TAKIM tablosundaki Assigned To alanı(otomatik tanımlandı)

arasında ilişki kurduk. Sürükle bırak şeklinde tanımlama yapabiliyoruz.

Rapor Tasarımı

  1. Veriler ve ilişkiler düzenlendikten sonra artık rapor dizaynına geçebiliriz. Bunun için soldaki ilk butona tıklayalım.

2. Sağdaki Görsel Öğeler alanından istediğimiz grafik seçeneklerini ekleyebiliriz. İhtiyaç duyduğumuz şey kişi bazında filtreleme ve tarih alanı olduğu için dilimleyici seçiyoruz.

3. Sonrasında yine ihtiyacımız olan tablodan ihtiyacımız olan alanı seçiyoruz. Bu raporda bize kişiler gerekeceği için AssignTo tablosundan Assigned To alanını seçiyoruz.

4. İhtiyacımız olan bir diğer veri olan tarih bilgisi de ekliyoruz.

5. İhtiyaç duyulan alanlar eklendikten sonra dataların listeleneceği bir tablo eklenmeli. Görsel Öğeler alanından tabloyu seçiyoruz. Tabloda gösterilecek alanları da sağdaki tablolardan seçiyoruz.

6. Özel hesaplamalar yapma ihtiyacınız olursa hesaplamanın ekleneceği tabloya sağ tıklayıp Yeni Ölçü seçebilirsiniz.

7. Ardından ölçümüzün tanımı yapılacak. Örneğin biz toplam girilen eforu bulmak için aşağıdaki formülü yazdık.

8. Hesaplamaları yaptıktan sonra bu ölçüleri de tablonuzda gösterebilirsiniz. Son durumda bizim raporumuz aşağıdaki gibi oldu.

9. Ve bu tabloya ek olara, çalışan günlük 8 saatlik çalışma saatini doldurduysa tikli doldurmadıysa çarpı koyacak şekilde düzenleme yapalım. Bunun için önce bir hesaplama yazmamız gerekiyor. Tamamlanma durumu adında ve hesabı aşağıdaki gibi olacaktır. Yani 8 saat ve üzeri ise 1, değilse 0 döndürecek.

10. Ardından aşağıdaki ekran görüntüsündeki gibi Koşullu Biçimlendirme seçeneği ile alanımızı seçip Simgeler’i açık hale getirip Gelişmiş Denetimler menüsüne gidiyoruz.

11. Aşağıdaki şekilde düzenlemelerini yapıyoruz.

12. Artık tablo görüntümüz aşağıdaki gibi olacaktır.

Bizim tablomuz hazır! Bu adımdan sonrası Tasarım aşamasına girecektir. Ortaya çıkan raporu ihtiyacınıza göre görsel olarak düzenleyebilirsiniz.

İrem Kaplan ile hazırladığımız bu yazı, umarım sizlere faydalı olmuştur.

Kaynakça

https://docs.microsoft.com/en-us/azure/devops/report/powerbi/analytics-security?view=azure-devops&tabs=preview-page

https://docs.microsoft.com/en-us/azure/devops/report/powerbi/create-quick-report?view=azure-devops

https://docs.microsoft.com/en-us/azure/devops/report/powerbi/analytics-views-create?view=azure-devops

--

--