Power BI raporunuza durum ölçümü ekleme
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Bir iş öğesinin belirli bir iş akışı durumunda veya durum serisinde harcadığı süre, verimliliği anlamak için önemli bir unsurdur. Döngü Süresi ve Sağlama Süresi Analizi pencere öğeleri, bazı durum içi zaman ölçüleri sağlar. Ancak, bu pencere öğeleri istediğiniz ayrıntı düzeyine sahip olmayabilir.
Bu makalede, iş öğeleri tarafından harcanan zamanı durumların bir bileşiminde değerlendirmek için Veri Çözümleme İfadeleri (DAX) kullanan tarifler sağlanır. Özellikle, Aşağıdaki ölçü ve hesaplanmış sütunları Power BI raporlarınıza eklemeyi ve bunları kullanarak çeşitli eğilim grafikleri oluşturmayı öğrenirsiniz. Listelenen ilk alan dışındaki tüm alanlar hesaplanmış sütunlardır.
Sayı | Açıklama |
---|---|
İş Öğeleri Sayısı (ölçü) | İş öğesinin son gün girdisine göre ayrı iş öğelerinin sayısını hesaplar |
Durum Sıralama Düzeni | İş akışı Durumlarını Durum Kategorisi dizisine göre sıralamak için kullanılacak bir sütun ekler |
Önceki Tarih | Tarih sütununa göre önceki tarihi hesaplayan bir sütun ekler |
Gün olarak Tarih Farkı | Tarih ile Önceki Tarih sütunları arasındaki gün sayısını hesaplayan bir sütun ekler |
Eyalet son günüdür | Date değerinin iş öğesinin State'te olduğu son gün olup olmadığını belirleyen bir sütun ekler |
Gün olarak Durum Zamanı | Her Durumda iş öğesinin harcadığı gün sayısını hesaplayan bir sütun ekler |
Önceki Durum | Veri tablosundaki her satır için önceki durumu tanımlayan bir sütun ekler |
Durum Değiştirildi | bir iş öğesinin bir Durumdan diğerine geçtiği tarihi belirleyen bir sütun ekler |
Durum Akışı | bir iş öğesi bir Durumdan diğerine geçerken durum akışını gösteren bir sütun ekler |
Durum Değişikliği Sayısı | bir iş öğesinin bir Durumdan diğerine geçiş sayısını hesaplayan bir sütun ekler |
Durum Değişikliği Sayısı - İlk Tamamlandı | bir iş öğesinin tamamlandı durumuna ilk kez geçiş sayısını belirleyen bir sütun ekler. Başka bir deyişle, başka bir durumdan Tamamlandı durumuna geçtiğinde. |
Durum Değişikliği Sayısı - Önerilen Son | Bir iş öğesinin daha önce Önerilen durumunda olup olmadığını, sonraki bir Duruma geçtikten sonra belirleyen bir sütun ekler |
Gün olarak Durum Yeniden Başlatma Zamanı | Bir iş öğesinin yeniden başlatma durumunda harcadığı günleri hesaplayan bir sütun ekler |
Gün olarak Durum Yeniden Çalışma Zamanı | Bir iş öğesinin Tamamlandı dışında bir durumda harcadığı günleri hesaplayan bir sütun ekler |
Önemli
- Bu makalede gösterilen örneklere göre hesaplanmış sütun veya ölçü eklerken Görünüm Adı'nı Analiz görünümü veya veri tablosunun tablo adıyla değiştirin. Örneğin, Görünüm Adı yerine Etkin Hatalar yazın.
- Analiz, gün içi düzeltmeleri desteklemez. Bu örnekler, Analiz görünümüne başvururken Günlük aralık kullanılırken en duyarlıklara sahiptir.
- Tüm gün içi veya dönem içi (haftalık/aylık) düzeltmeler hesaplamalar tarafından yoksayılır. Bu, bir iş öğesinin bir günden daha kısa bir süre "Sürüyor" olduğu zaman "Sürüyor" olmayan bir iş öğesi gibi belirli senaryolar için beklenmeyen sonuçlara neden olabilir.
- Mümkün olduğunda ölçü oluşturmak yerine Power BI varsayılan toplamaları kullanılır.
- Bazı hesaplamalar, BLANK yerine her satıra sayısal bir değer eklenmesini sağlamak için +0 değerini içerir.
- Projeniz tarafından kullanılan iş akışı durumlarına göre bazı hesaplanmış sütun tanımlarını gözden geçirmeniz gerekebilir. Örneğin, projeniz Önerilen, Devam Ediyor ve Tamamlandı yerine Yeni, Etkin ve Kapalı kullanıyorsa.
- Bu makalede başvuruda bulunılan Tarih sütunu, Azure DevOps'ta yerel bir sütun değildir; Bu, Eyalet İçinde Zaman raporunu kolaylaştırmak için PowerBI içinde oluşturulan türetilmiş bir sütun. Bu sütunu, "Değiştirme Tarihi" veya "Durum Değiştirme Tarihi" gibi tarihle ilgili mevcut sütunları kullanarak oluşturabilirsiniz.
Önkoşullar
- Erişim: En az Temel erişimi olan bir projenin üyesi olun.
- İzinler: Varsayılan olarak, proje üyeleri Analytics'i sorgulama ve görünüm oluşturma iznine sahiptir.
- Hizmet ve özellik etkinleştirme ve genel veri izleme etkinlikleriyle ilgili diğer önkoşullar hakkında daha fazla bilgi için bkz . Analytics'e erişim izinleri ve önkoşulları.
Not
Bu makalede açıklanan tüm durum içi ölçüleri uygulamak için Analiz görünümlerinize, Power Query'ye veya OData sorgunuza şu alanları eklediğinizden emin olun: Varsayılan alanlara ek olarak Oluşturma Tarihi ve Durum Kategorisi: Alan Yolu, Atanan, Yineleme Yolu, Durum, Başlık, İş Öğesi Kimliği ve İş Öğesi Türü.
Ayrıca, Günlük ayrıntı düzeyini temel alan bir Analiz görünümü kullanmayı da göz önünde bulundurun. Bu makaledeki örnekler, 60 günlük Geçmiş ve Günlük ayrıntı düzeyinin seçilmesi dışında, Özel bir Analiz görünümüne dayalı olarak Power BI'da etkin hatalar raporu oluşturma bölümünde tanımlanan Etkin Hata Analizi görünümünü temel alır. Tamamlanmış veya kapalı iş öğelerini gözden geçirmek isteyip istemediğinizi de belirleyin.
İş Öğeleri Sayısı ölçüsü ekleme
Hızlı bir şekilde rapor oluşturmayı basitleştirmek için Analiz görünümlerini Power BI'daki varsayılan toplamalarla çalışacak şekilde tasarladık. Varsayılan toplama ile ölçü arasındaki farkı göstermek için basit bir iş öğesi sayısı ölçüsüyle başlayacağız.
Analiz görünümünüzü Power BI Desktop'a yükleyin. Ayrıntılar için bkz . Power BI Veri Bağlayıcısı ile bağlanma, Analiz görünümüne bağlanma.
Veri tablosunu seçin ve ardından Şeritteki Tablo araçları sekmesindeki Hesaplamalar bölümünde Yeni ölçü'yü seçin.
Varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin .
Work Items Count=CALCULATE(COUNTROWS ('View Name'),LASTDATE ('View Name'[Date]))
İş Öğeleri Sayısı ölçüsü, bu makalenin
CALCULATE
devamında daha ayrıntılı olarak açıklanan ,COUNTROWS
veLASTDATE
DAX işlevlerini kullanır.Not
Görünüm Adı'nı Analiz görünümünün tablo adıyla değiştirmeyi unutmayın. Örneğin, burada Görünüm Adı yerine Etkin hataları kullanıyoruz.
Ölçünün hesaplanmış sütundan farkı nedir?
Ölçü her zaman hesaplanmış sütunun tek bir satıra özgü olduğu tablonun tamamını değerlendirir. Daha fazla bilgi için bkz . DAX'ta Hesaplanan Sütunlar ve Ölçüler.
İş Öğesi Sayısı ölçüsünü, İş Öğesi Kimliği'ne göre varsayılan sayı toplamasıyla karşılaştırın. Aşağıdaki görüntü, ilk karta Kart görseli ve İş Öğesi Sayısı ölçüsü, ikinci karta da İş Öğesi Kimliği özelliği eklenerek oluşturulur.
Varsayılan toplamayı kullanarak doğru sayıyı almak için Geçerlidir filtresi 'True' değerine eşittir. Varsayılan toplamaya filtre uygulama deseni, bu makalede sağlanan örneklerin çoğunun temelini oluşturur.
Durum Sıralama Düzeni Ekle
Power BI, varsayılan olarak durumları bir görselleştirmede alfabetik olarak sıralanmış olarak gösterir. Zaman durumunu görselleştirmek istediğinizde ve Önerilen devam ettikten sonra gösterildiğinde bu yanıltıcı olabilir. Aşağıdaki adımlar bu sorunu çözmeye yardımcı olur.
Durum Kategorisi alanının Analiz görünümüne dahil olduğunu doğrulayın. Bu alan tüm varsayılan paylaşılan görünümlere eklenir.
Veri tablosunu seçin ve sonra Tablo araçları sekmesinde, şeridin Hesaplamalar bölümünde Yeni sütun'u seçin.
Varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin .
State Sort Order = SWITCH ( 'View Name'[State Category], "Proposed", 1, "InProgress", 2, "Resolved", 3, 4 )
Aşağıdaki örneğe bakın:
Not
Durum Kategorisi'nin sağladığından daha fazla ayrıntı düzeyine ihtiyacınız varsa tanımı düzeltmeniz gerekebilir. Durum Kategorisi, Durum özelleştirmelerinden bağımsız olarak tüm iş öğesi türlerinde doğru sıralama sağlar.
Veri görünümünü açın ve Durum sütununu seçin.
Sütun Araçları sekmesinde Sütuna Göre Sırala'yı ve ardından Durum Sıralama Düzeni alanını seçin.
Önceki Tarihi Ekle
Durum zamanlarını hesaplamak için bir sonraki adım, veri kümesindeki her veri satırı için önceki aralığın (gün, hafta, ay) eşlen olmasını gerektirir. Hesaplanmış sütun kullanan basit bir hesaplamadır. Normalde, bu sütunu gösterildiği gibi tanımlarsınız.
Date Previous =
PREVIOUSDAY ( 'View Name'[Date] )
Ancak bu yaklaşımın iki temel sorunu vardır:
- Yalnızca günlük dönemlerde çalışır.
- Verilerdeki boşlukları işlemez. Örneğin, bir iş öğesi projeler arasında taşınırsa.
Bu sorunları çözmek için hesaplanan sütunun Tarih alanını tarayarak önceki günü bulması gerekir.
Önceki Tarih hesaplanan sütununu eklemek için Tablo araçları sekmesinde Yeni Sütun'u seçin ve ardından varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin.
Date Previous =
CALCULATE (
MAX ( 'View Name'[Date] ),
ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
'View Name'[Date] < EARLIER ( 'View Name'[Date] )
)
Date Previous hesaplanan sütunu, MAX
bu makalenin devamında daha ayrıntılı olarak açıklanan üç DAX işlevi kullanır: , ALLEXCEPT
, ve EARLIER
. Sütun hesaplandığından, tablodaki her satır için çalışır ve her çalıştırıldığında söz konusu satırın bağlamı bulunur.
İpucu
Tarih ve Önceki Tarih alanlarının bağlam menüsünde Tarih 'i (Tarih Hiyerarşisi yerine) seçerek bu alanlar için tek bir tarih görüntüleyin.
Günlere Tarih Farkı Ekle
Önceki Tarih, her satır için önceki ve geçerli tarih arasındaki farkı hesaplar. Gün cinsinden Tarih Farkı ile, bu dönemlerin her biri arasındaki gün sayısını hesaplarız. Günlük anlık görüntüdeki çoğu satır için değer 1'e eşittir. Ancak, veri kümesinde boşluklar olan birçok iş öğesi için değer 1'den büyüktür.
Önemli
Tabloya Önceki Tarih hesaplanan sütununu eklemiş olmanız gerekir.
Önceki Tarih'in boş olduğu veri kümesinin ilk gününü göz önünde bulundurmanız önemlidir. Bu örnekte, hesaplamanın tutarlı olmasını sağlamak için bu satıra standart değer olan 1 değerini vereceğiz.
Modelleme sekmesinde Yeni Sütun'u seçin ve ardından varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin.
Date Diff in Days =
IF (
ISBLANK ( 'View Name'[Date Previous] ),
1,
DATEDIFF (
'View Name'[Date Previous],
'View Name'[Date],
DAY
)
)
Bu hesaplanmış sütun, bu makalenin ISBLANK
devamında açıklanan ve DATEDIFF
DAX işlevlerini kullanır.
Add Is Last Day in State
Bu sonraki adımda, belirli bir satırın belirli bir iş öğesinin durumundaki son günü temsil ediyor olup olmadığını hesaplayacağız. Power BI'da varsayılan toplamaları destekler. Sonraki bölümde gün olarak Durum Zamanı sütununu ekleyeceğiz.
Modelleme sekmesinde Yeni Sütun'u seçin ve ardından varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin.
Is Last Day in State =
ISBLANK (CALCULATE (
COUNTROWS ( 'View Name' ),
ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
'View Name'[Date] > EARLIER ( 'View Name'[Date] ),
'View Name'[State] = EARLIER ( 'View Name'[State] )
))
Gün olarak Durum Zamanı Ekle
Bir iş öğesinin belirli bir durumda harcadığı süre artık her iş öğesi için Günlerdeki Tarih Farkı toplanarak hesaplanabilir. Bu hesaplama, durumlar arasında birden çok kez geçiş olsa bile belirli bir durumda harcanan tüm süreyi içerir. Is Last Day In State kullanarak Tarih veya en son bilgileri kullanarak her satırı eğilim olarak değerlendirmek mümkündür.
Önemli
Tarih Farkını Gün sayısı olarak ve Son Gün Durumunda hesaplanmış sütunlarını tabloya eklemiş olmanız gerekir.
Modelleme sekmesinde Yeni Sütun'u seçin ve ardından varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin.
State Time in Days =
CALCULATE (
SUM ( 'View Name'[Date Diff in Days] ),
ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
'View Name'[Date] <= EARLIER ( 'View Name'[Date] ),
'View Name'[State] = EARLIER ( 'View Name'[State] )
) + 0
Günlerdeki Durum Saatlerine göre yığılmış sütun eğilim grafikleri oluşturma
Günlerdeki Durum Saati sütununu göstermek için aşağıdaki yığılmış sütun grafikleri oluşturulur. İlk grafik, zaman içindeki her durumdaki iş öğelerinin sayısını gösterir.
İkinci grafik, etkin iş öğelerinin belirli bir durumda olduğu ortalama günlerin eğilimini gösterir.
Gün olarak Durum Saati Ekleme - En Son (Son Gün Durumunda)
Tablodaki her iş öğesi için durum zamanlarını değerlendirirken veya Alan Yolu gibi bir alana göre filtrelendiğinde, toplamada Günlerdeki Durum Zamanı sütununu kullanmayın. Toplama, iş öğesinin durumunda olduğu her günün değerini kullanır. Örneğin, bir iş öğesi Pazartesi Devam Ediyor ise ve Perşembe günü Tamamlandı'ya taşındıysa, eyalet içi zaman üç gündür, ancak Günlerdeki Durum Saati sütununun toplamı altı gündür ve 1+2+3
bu yanlıştır.
Bu sorunu çözmek için Gün sayısı olarak Durum Saati'ni kullanın ve Son Gün Durumundaki "True" değerine eşit filtreyi uygulayın. Bir eğilim için gerekli olan tüm geçmiş verileri ortadan kaldırır ve her durum için yalnızca en son değere odaklanır.
Günlere Durum Zamanı Ekleme - Devam Ediyor
Önceki örneklerde, belirli bir iş öğesinin Gün sayısı yalnızca iş öğesi o durumdayken sayılır. Hedefiniz belirli bir iş öğesi sayısı için sürekli ortalamaya doğru durum bilgisi elde etmekse hesaplamayı değiştirmeniz gerekir. Örneğin, "Devam Ediyor" durumunu izlemek istiyorsak, Günlerdeki Durum Süresi - Devam Ediyor hesaplanmış sütununu ekleriz.
Modelleme sekmesinde Yeni Sütun'u seçin ve ardından varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin.
State Time in Days - In Progress =
CALCULATE (
SUM ( 'View Name'[Date Diff in Days] ),
ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
'View Name'[Date] <= EARLIER('View Name'[Date]),
'View Name'[State] = "In Progress"
) + 0
Not
Tanımı, projeniz tarafından kullanılan iş akışı durumlarına göre düzeltmeniz gerekebilir. Örneğin, bu makaledeki örneklerde kullanılan projede 'Devam Ediyor' iş akışı durumu kullanılır, ancak Çevik, Scrum ve CMMI işlemleri genellikle devam eden çalışmayı temsil etmek için 'Etkin' veya 'İşlendi' durumlarını kullanır. Genel bakış için bkz . İş akışı durumları ve durum kategorileri.
Aşağıdaki görüntüde, var olan her iş öğesi (solda gösterilir) için tüm zaman durumunun, yalnızca belirli bir gündeki belirli bir durumdaki iş öğelerini (sağda gösterilir) dikkate alma etkisini gösterir.
Birden çok durumun Gün içindeki Durum Zamanı eğilimi
"Sürekli" deseni kullanılarak birden çok durumda performansı analiz etmek de mümkündür. Ancak bu yaklaşım yalnızca bir eğilim grafiğiyle çalışır.
Modelleme sekmesinde Yeni Sütun'u seçin ve ardından varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin.
State Time in Days - Working States =
CALCULATE (
SUM ( 'View Name'[Date Diff in Days] ),
ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
'View Name'[Date] <= EARLIER('View Name'[Date]),
'View Name'[State] IN { "Committed", "In Progress" }
) + 0
Not
Tanımı, projeniz tarafından kullanılan iş akışı durumlarına göre düzeltmeniz gerekebilir. Örneğin, projeniz 'Kabul Edilen' veya 'Önerilen' yerine 'Etkin' kullanıyorsa.
Soldaki grafikte birleşik ortalama gösterilirken sağ tarafta her bir durum gösterilir.
Gün olarak Durum Saatini Alma- Birden çok durum için En Son
Eğilim oluştururken Gün sayısı olarak Durum Zamanı- En son hesaplanan sütununu kullanırsınız. Eyaletler üzerindeki bir filtreyle, Günlerdeki Durum Saati sütunu ve Son Gün Durumu , bir dizi durumda harcanan iş öğesi veya iş öğesi grubunun toplam süresini almak için basit bir yol sağlar.
Önceki Durumu Ekle
Date Previous hesaplanan sütunu, her iş öğesinin önceki durumu gibi geçmiş değerleri aramak için de kullanılabilir.
Modelleme sekmesinde Yeni Sütun'u seçin ve ardından varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin.
State Previous =
LOOKUPVALUE (
'View Name'[State],
'View Name'[Work Item Id], 'View Name'[Work Item Id],
'View Name'[Date], 'View Name'[Date Previous]
)
Bu hesaplanmış sütun, bu makalenin LOOKUPVALUE
devamında açıklanan öğesini kullanır.
İlk LOOKUPVALUE
parametre olan 'View Name'[State]
, [State] değerini döndürmeyi belirtir.
Sonraki parametresi, 'View Name'[Work Item Id], 'View Name'[Work Item Id]
yalnızca geçerli satır olarak eşleşen iş öğesi kimliğine sahip satırların dikkate alınması gerektiğini belirtir.
Son parametresi, 'View Name'[Date], 'View Name'[Date Previous]
döndürülen satırın tarihinin geçerli satırın [Önceki Tarih] değeriyle eşleşen bir [Tarih] içermesi gerektiğini belirtir. Anlık görüntüde, bu ölçütleri yalnızca bir satır karşılayabilir.
Durum Ekle Değiştirildi
Durum Önceki sütununu kullanarak, durum geçişinin gerçekleştiği her iş öğesi için satırları bayrakla işaretleyebiliriz. Aşamalı Değiştirme hesaplanmış sütununun dikkate alınması gereken iki özel nokta vardır:
- İş öğesinin Oluşturulma Tarihi olarak ayarladığımız *State Previous değerinin boş değerleri
- İş öğesi oluşturma işlemi durum geçişi olarak kabul edilir
Önemli
Tabloya Önceki Durum hesaplanan sütununu eklemiş olmanız gerekir.
Modelleme sekmesinde Yeni Sütun'u seçin ve ardından varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin.
State Changed =
IF (
ISBLANK ( 'View Name'[State Previous] ),
'View Name'[Created Date].[Date] = 'View Name'[Date],
'View Name'[State Previous] <> 'View Name'[State]
)
Hesaplanan sütun, satırın durum geçişi olup olmadığını tanımlayan boole değeridir. işlecini Not Equal To
kullanarak, önceki durumun geçerli durumla eşleşmediği satırları doğru şekilde yakalarsınız; bu da karşılaştırmanın beklendiği gibi True döndürdüğü anlamına gelir.
Durum Akışı Ekle
Önceki Durum ve Durum Değişti hesaplanmış sütunlarıyla, belirli bir iş öğesi için Durum Akışı'nı gösteren bir sütun oluşturabilirsiniz. Bu sütunun oluşturulması, bu makalenin amaçları doğrultusunda isteğe bağlıdır.
Önemli
Tabloya State Previous ve State Changed hesaplanmış sütunlarını eklemiş olmanız gerekir.
Modelleme sekmesinde Yeni Sütun'u seçin ve ardından varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin.
State Flow =
IF([State Changed], [State Previous], [State]) & " => " & [State]
Durum Değişikliği Sayısı Ekle
Daha karmaşık ölçülere geçtikçe, belirli bir iş öğesinin veri satırlarını karşılaştırmak için durum değişikliklerinin toplam sayısını gösteren bir gösterime sahip olmamız gerekir. Durum Değişiklik Sayısı hesaplanmış sütunu ekleyerek gösterimi elde ederiz.
Önemli
Durum Değişikliği hesaplanmış sütununu tabloya eklemiş olmanız gerekir.
Modelleme sekmesinde Yeni Sütun'u seçin ve ardından varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin.
State Change Count =
CALCULATE (
COUNTROWS ( 'View Name' ),
ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
'View Name'[Date] <= EARLIER ( 'View Name'[Date] ),
'View Name'[State Changed]
) + 0
Durum Değişikliği Sayısı Ekle - Gün olarak Önerilen Son ve Durum Yeniden Başlatma Zamanı
Günlerdeki Durum Yeniden Başlatma Süresi oldukça karmaşık bir hesaplamadır. İlk adım, bir iş öğesinin en son önerilen durumda olduğunu bulmaktır. Durum Değişiklik Sayısı - Önerilen Son hesaplanmış sütununu ekleyin.
Not
Projeniz tarafından kullanılan iş akışı durumlarına göre aşağıdaki tanımları düzeltmeniz gerekebilir. Örneğin, projeniz 'Önerilen' yerine 'Yeni' kullanıyorsa.
Modelleme sekmesinde Yeni sütun'u seçin ve varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin.
State Change Count - Last Proposed =
CALCULATE (
MAX ( 'View Name'[State Change Count] ),
ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
'View Name'[Date] <= EARLIER ( 'View Name'[Date] ),
'View Name'[State] = "Proposed"
)
Ardından geçmişe dönüp bu önerilen durumdan önce bazı etkin durumlar olup olmadığına bakın. Son olarak, iş öğesinin en son önerilenden önce etkin durumda olduğu tüm günleri topla.
Modelleme sekmesinde Yeni Sütun'u seçin ve ardından varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin.
State Restart Time in Days =
CALCULATE (
SUM ( 'View Name'[Date Diff in Days] ),
ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ),
'View Name'[Date] <= EARLIER ( 'View Name'[Date] ),
'View Name'[State Change Count] < EARLIER('View Name'[State Change Count - Last Proposed] ),
'View Name'[State] <"Proposed"
) + 0
Günlerdeki Durum Yeniden Başlatma Zamanı her veri satırı için güncelleştirildiğinden, belirli sprint'lerde yeniden çalışmayı değerlendirmek için bir eğilim oluşturabilir veya GeçerliDir'i kullanarak tek tek iş öğeleri için yeniden çalışmayı inceleyebilirsiniz.
Gün olarak Durum Yeniden Çalışma Zamanı Ekleme
Günlerdeki Durum Yeniden Başlatma Zamanı'na benzer şekilde, Günlerdeki Durum Yeniden Çalışma Zamanı, bir iş öğesinin Tamamlandı durum kategorisinde ilk kez olduğunu arar. Bu süreden sonra, bir iş öğesinin tamamlandı dışında bir durumda geçirdiği her gün yeniden çalışma olarak sayılır.
"Durum Değişikliği Sayısı - İlk Tamamlanan" sütununu oluşturun. Bu sütun, bir iş öğesinin başka bir durumdan Tamamlandı durumuna kaç kez geçtiğini izler.
State Change Count - First Completed = VAR CompletedState = "Completed" RETURN CALCULATE( COUNTROWS('YourTable'), FILTER( 'YourTable', 'YourTable'[State] = CompletedState && 'YourTable'[State Change Date] = MIN('YourTable'[State Change Date]) ) )
Modelleme sekmesinde Yeni Sütun'u seçin ve ardından varsayılan metni aşağıdaki kodla değiştirin ve onay işaretini seçin.
State Rework Time in Days = IF ( ISBLANK ( 'View Name'[State Change Count - First Completed] ), 0, CALCULATE ( SUM ( 'View Name'[Date Diff in Days] ), ALLEXCEPT ( 'View Name', 'View Name'[Work Item Id] ), 'View Name'[Date] <= EARLIER ( 'View Name'[Date] ), 'View Name'[State Change Count] <= EARLIER ( 'View Name'[State Change Count - First Completed] ), 'View Name'[State] IN {"Completed", "Closed", "Cut" } = FALSE() ) + 0 )
Not
Önceki tanımı projeniz tarafından kullanılan iş akışı durumlarına göre düzeltmeniz gerekebilir. Örneğin, projeniz Kapalı yerine Bitti kullanıyorsa vb.
DAX işlevleri
Bu bölümde, bu makalede eklenen hesaplanmış sütunları ve ölçüyü oluşturmak için kullanılan DAX işlevleri için ek bilgiler sağlanır. Ayrıca bkz. DAX, Akıllı zaman gösterimi işlevleri.
İşlev | Açıklama |
---|---|
ALLEXCEPT |
Belirtilen sütunlara uygulanan filtreler dışında tablodaki tüm bağlam filtrelerini kaldırır. Temelde, ALLEXCEPT ('View Name'', 'View Name'[Work Item Id]) tablodaki satırları yalnızca geçerli satırla aynı iş öğesi kimliğini paylaşan satırlara küçültür. |
CALCULATE |
Bu işlev neredeyse tüm örneklerin temelini oluşturur. Temel yapı, ifadeye uygulanan bir dizi filtrenin ardından gelen bir ifadedir. |
COUNTROWS |
Bu işlev, COUNTROWS ( 'View Name' ) filtreler uygulandıktan sonra kalan satır sayısını sayar. |
DATEDIFF |
İki tarih arasında kesişen aralık sınırlarının sayısını döndürür. DATEDIFF aralarındaki gün sayısını belirlemek için Önceki Tarihi Tarih'ten çıkarır. |
EARLIER |
Belirtilen sütunun geçerli değerini belirtilen sütunun dış değerlendirme geçişinde döndürür. Örneğin, 'View Name'[Date] < EARLIER ( 'View Name'[Date] ) veri kümesini yalnızca işlevi kullanılarak başvuruda bulunan geçerli satırın tarihinden önce oluşan satırlara küçültür EARLIER . EARLIER önceki tarihlere başvurmaz; hesaplanmış sütunun satır bağlamını özel olarak tanımlar. |
ISBLANK |
Bir değerin boş olup olmadığını denetler ve DOĞRU veya YANLIŞ döndürür. ISBLANK Geçerli satırı değerlendirerek Date Previous değerinin olup olmadığını belirler. Aksi takdirde, If deyimi Günlerdeki Tarih Farkını 1 olarak ayarlar. |
LASTDATE |
Filtreyi, tablodaki LASTDATE LASTDATE ( 'View Name'[Date] ) tüm satırlarda en yeni tarihi bulmak ve aynı tarihi paylaşmamış satırları ortadan kaldırmak için bir ifadeye uygularız. Analiz görünümü tarafından oluşturulan anlık görüntü tablosuyla, bu filtre seçilen dönemin son gününü etkili bir şekilde seçer. |
LOOKUPVALUE |
search_columnName ve search_value tarafından belirtilen tüm ölçütleri karşılayan satır için result_columnName değerini döndürür. |
MAX |
Bir sütundaki veya iki skaler ifade arasındaki en büyük sayısal değeri döndürür. Tüm filtreler uygulandıktan MAX ( 'View Name'[Date] ) sonra en son tarihi belirlemek için uygulamasını uygularız. |