Bağlantılı iş öğelerini listeleme örnek sorgular ve raporlar
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Bu makalede, diğer iş öğelerine bağlı iş öğelerini listeleyen bir raporun nasıl oluşturulacağı gösterilmektedir. Örneğin, aşağıdaki rapor üst-alt bağlantı türüne sahip Kullanıcı Hikayeleri'ne bağlı Özelliklerin listesini gösterir.
Bağlantı türleri ve iş öğelerini bağlama hakkında daha fazla bilgi için bkz . Kullanıcı hikayelerini, sorunlarını, hatalarını ve diğer iş öğelerini bağlama.
Diğer örnek sorgular arasında başka bir hatanın Yinelenen bağlantısı olan hataları listeleme ve başka bir hataya Yinelenen bağlantı içermeyen hataları listeleme yer alır.
Not
Bu makalede, OData Sorguları kullanarak Örnek Raporlara Genel Bakış makalesini okuduğunuz ve Power BI hakkında temel bilgilere sahip olduğunuz varsayılır.
Ö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ı.
Örnek sorgular
Bağlantılı iş öğelerini filtrelemeyi gösteren çeşitli sorgular sağlanır. Bu sorguların tümü, geçerli verileri döndüren varlık kümesini belirtir WorkItems
.
Not
Filtre veya rapor amacıyla kullanılabilir özellikleri belirlemek için bkz . Azure Boards için meta veri başvurusu. sorgularınızı filtreleyebilir veya ile kullanılabilen EntitySet
veya NavigationPropertyBinding Path
değerlerinin Property
altındaki EntityType
değerlerden herhangi birini kullanarak özellikleri döndürebilirsiniz. Her EntitySet
bir EntityType
öğesine karşılık gelir. Her değerin veri türü hakkında daha fazla bilgi için ilgili EntityType
için sağlanan meta verileri gözden geçirin.
Özellikleri ve alt Kullanıcı Hikayelerini Döndürme
Aşağıdaki Power BI sorgusunu kopyalayıp doğrudan Veri>Al Boş Sorgu penceresine yapıştırın. Daha fazla bilgi için bkz . OData sorgularını kullanan örnek raporlara genel bakış.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?"
&"$filter=WorkItemType eq 'Feature' "
&"and State ne 'Closed' and State ne 'Removed' "
&"and startswith(Area/AreaPath,'{areapath}') "
&"&$select=WorkItemId,Title,WorkItemType,State,AreaSK "
&"&$expand=AssignedTo($select=UserName),Iteration($select=IterationPath),Area($select=AreaPath), "
&"Links( "
&"$filter=LinkTypeName eq 'Child' "
&"and TargetWorkItem/WorkItemType eq 'User Story'; "
&"$select=LinkTypeName; "
&"$expand=TargetWorkItem($select=WorkItemType,WorkItemId,Title,State) "
&") "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Değiştirme dizeleri ve sorgu dökümü
Aşağıdaki dizeleri değerlerinizle kullanın. Değiştirmenize köşeli ayraç {} eklemeyin. Örneğin, kuruluşunuzun adı "Fabrikam" ise yerine {organization}
Fabrikam
yerine değerini {Fabrikam}
yazın.
{organization}
- Kuruluşunuzun adı{project}
- Çapraz proje sorgusu için ekip projenizin adı veya "/{project}" ifadesini tamamen atla{areapath}
- Alan Yolunuz. Örnek biçim:Project\Level1\Level2
.
Sorgu dökümü
Aşağıdaki tabloda sorgunun her bölümü açıklanmaktadır.
Sorgu bölümü
Açıklama
$filter=WorkItemType eq 'Feature'
Kullanıcı Hikayelerini döndürme.
and State ne 'Closed' and State ne 'Removed'
Durumu Kapalı veya Kaldırılmış olarak ayarlanmış Özellikleri Atlayın.
and startswith(Area/AreaPath,'{areapath}')
yerine '{areapath}'
yalnızca belirli bir Alan Yolu altına Özellikler ekleyin.
Ekip adına göre filtrelemek için filter deyimini Teams/any(x:x/TeamName eq '{teamname})'
kullanın.
&$select=WorkItemId,Title,WorkItemType,State,AreaSK
Döndürülecek alanları seçin.
&$expand=AssignedTo($select=UserName), Iteration($select=IterationPath), Area($select=AreaPath),
, Iteration
ve Area
varlıklarını genişletmek AssignedTo
için kullanılacak alanları belirtin.
Links(
Links
Varlığı genişletin.
$filter=LinkTypeName eq 'Child'
Bağlantılı iş öğelerini yalnızca Alt bağlantı türüne sahip öğelere filtreleyin. Diğer örnekler: Parent, Child, Duplicate of, Duplicate of, Affects, Affected by.
and TargetWorkItem/WorkItemType eq 'User Story';
Yalnızca bağlantılı Kullanıcı Hikayeleri'ni ekleyin.
$select=LinkTypeName;
LinkTypeName
Döndürülecek özelliği seçin.
$expand=TargetWorkItem($select=WorkItemType, WorkItemId, Title, State)
Döndürülecek bağlı iş öğesinin özelliklerini seçin.
)
Yan tümcesini Links()
kapatın.
İlgili bağlantı türüyle bağlantılı Kullanıcı Hikayelerini döndürme
Aşağıdaki Power BI sorgusunu kopyalayıp doğrudan Veri>Al Boş Sorgu penceresine yapıştırın. Daha fazla bilgi için bkz . OData sorgularını kullanan örnek raporlara genel bakış.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?"
&"$filter=WorkItemType eq 'User Story' "
&"and State ne 'Closed' "
&"and startswith(Area/AreaPath,'{areapath}') "
&"&$select=WorkItemId,Title,WorkItemType,State,AreaSK "
&"&$expand=AssignedTo($select=UserName),Iteration($select=IterationPath),Area($select=AreaPath), "
&"Links( "
&"$filter=LinkTypeName eq 'Related' "
&"and TargetWorkItem/WorkItemType eq 'User Story'; "
&"$select=LinkTypeName; "
&"$expand=TargetWorkItem($select=WorkItemType,WorkItemId,Title,State) "
&") "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Teams tarafından filtrelenmiş bağlantılı Kullanıcı Hikayelerini döndürme
Aşağıdaki sorgu, bu makalede daha önce kullanılan sorguyla aynıdır, ancak Alan Yolu yerine Takım Adı'na göre filtrelenir.
Aşağıdaki Power BI sorgusunu kopyalayıp doğrudan Veri>Al Boş Sorgu penceresine yapıştırın. Daha fazla bilgi için bkz . OData sorgularını kullanan örnek raporlara genel bakış.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?"
&"$filter=WorkItemType eq 'User Story' "
&"and State ne 'Closed' "
&"and (Teams/any(x:x/TeamName eq '{teamname}) or Teams/any(x:x/TeamName eq '{teamname}) or Teams/any(x:x/TeamName eq '{teamname}) "
&"&$select=WorkItemId,Title,WorkItemType,State,Priority,Severity,TagNames,AreaSK "
&"&$expand=AssignedTo($select=UserName),Iteration($select=IterationPath),Area($select=AreaPath), "
&"Links( "
&"$filter=LinkTypeName eq 'Related' "
&"and TargetWorkItem/WorkItemType eq 'User Story'; "
&"$select=LinkTypeName; "
&"$expand=TargetWorkItem($select=WorkItemType,WorkItemId,Title,State) "
&") "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Başka bir hataya Yinelenen bağlantı içeren hataları döndürme
Aşağıdaki Power BI sorgusunu kopyalayıp doğrudan Veri>Al Boş Sorgu penceresine yapıştırın. Daha fazla bilgi için bkz . OData sorgularını kullanan örnek raporlara genel bakış.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?"
&"$filter=WorkItemType eq 'Bug' "
&"and State ne 'Closed' "
&"and startswith(Area/AreaPath,'{areapath}') "
&"and Links/any(x:x/LinkTypeName eq 'Duplicate' and x/TargetWorkItem/WorkItemType eq 'Bug') "
&"&$select=WorkItemId,Title,WorkItemType,State,Priority,Severity,TagNames "
&"&$expand=AssignedTo($select=UserName),Iteration($select=IterationPath),Area($select=AreaPath), "
&"Links( "
&"$filter=LinkTypeName eq 'Duplicate' "
&"and TargetWorkItem/WorkItemType eq 'Bug'; "
&"$select=LinkTypeName; "
&"$expand=TargetWorkItem($select=WorkItemType,WorkItemId,Title,State) "
&") "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Başka bir hataya Yinelenen bağlantısı olmayan hataları döndürme
Aşağıdaki Power BI sorgusunu kopyalayıp doğrudan Veri>Al Boş Sorgu penceresine yapıştırın. Daha fazla bilgi için bkz . OData sorgularını kullanan örnek raporlara genel bakış.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?"
&"$filter=WorkItemType eq 'Bug' "
&"and State ne 'Closed' "
&"and startswith(Area/AreaPath,'{areapath}') "
&"and not (Links/any(x:x/LinkTypeName eq 'Duplicate' and x/TargetWorkItem/WorkItemType eq 'Bug')) "
&"&$select=WorkItemId,Title,WorkItemType,State,Priority,Severity,TagNames "
&"&$expand=AssignedTo($select=UserName),Iteration($select=IterationPath),Area($select=AreaPath) "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
(İsteğe bağlı) Sorguyu yeniden adlandırma
Varsayılan sorgu etiketi olan Query1'i daha anlamlı bir şekilde yeniden adlandırabilirsiniz. Sorgu Ayarları bölmesinden yeni bir ad girmeniz yeterlidir.
Power Query Düzenleyicisi'de verileri dönüştürme
Raporu oluşturmadan önce, birkaç alan içeren kayıtları döndüren sütunları genişletmeniz gerekir. Bu örnekte, aşağıdaki kayıtları genişletmek isteyeceksiniz:
Links
Links.TargetWorkItem
Area
Iteration
AssignedTo
İş öğelerini genişletmeyi öğrenmek için bkz . Power BI raporları oluşturmak için Analiz verilerini dönüştürme.
(İsteğe bağlı) Alanları yeniden adlandırma
Sütunları genişlettikte, bir veya daha fazla alanı yeniden adlandırmak isteyebilirsiniz. Örneğin, sütunu AreaPath
Area Path
olarak yeniden adlandırabilirsiniz. Bunları veri tablosu görünümünde veya daha sonra raporu oluştururken yeniden adlandırabilirsiniz. Nasıl yapılacağını öğrenmek için bkz . Sütun alanlarını yeniden adlandırma.
Bu örnekte, aşağıdaki alanlar yeniden adlandırıldı:
Özgün alan adı | Yeniden Adlandır |
---|---|
Links.TargetWorkItem.ID | Hedef Kimliği |
LinksLinkTypeName | Bağlantı Türü |
Links.TargetWorkItem.State | Hedef Durumu |
Links.TargetWorkItem.Title | Hedef Başlık |
Sorguyu kapatma ve değişikliklerinizi uygulama
Tüm veri dönüşümlerinizi tamamladıktan sonra, sorguyu kaydetmek ve Power BI'daki Rapor sekmesine dönmek için Giriş menüsünden Kapat ve Uygula'yı seçin.
Bağlantılı iş öğelerini listelemek için tablo raporu oluşturma
Power BI'da Görselleştirmeler'in altında Tablo raporu'nu seçin.
Aşağıdaki alanları Sütunlar'a belirtilen sırayla ekleyin:
- Kimlik, sağ tıklayın ve Özetleme'yi seçin
- İl
- Başlık
- Hedef kimlik, sağ tıklayın ve Özetleme'yi seçin
- Bağlantı Türü
- Hedef Durum
- Hedef Başlık
Örnek rapor görüntülenir.