Project kapsamlı sorgular

Azure DevOps Services | Azure DevOps Server 2020 | Azure DevOps Server 2019

Analytics'i Azure DevOps kullanarak, ilginiz olan iş öğelerini iade etmek için proje veya kuruluş kapsamlı sorgular oluşturabilirsiniz. Bu sorguları doğrudan tarayıcınızda çalıştırabilirsiniz.

Project kapsamı sorguları tek bir projeyle ilgili soruları yanıtlamaya yardımcı olurken, kuruluş kapsamı sorguları proje sınırlarını aşarak soruları yanıtlamanıza olanak sağlar. Kuruluş kapsamlı sorgular, proje izinlerinin eksik olması nedeniyle sorgunuza engel olmaması için daha geniş kullanıcı izinleri veya dikkatli kapsam kısıtlamaları gerektirir.

Not

Analytics hizmeti tüm hizmetler için otomatik olarak Azure DevOps Services. Üretimde kullanım için de desteklemektedir. Power BI analytics hizmetinin OData akışına tümleştirme ve erişim önizlemededir. Bunu kullanmanız ve bize geri bildirim sağlamanız için sizi teşvik ederiz. .

Not

Analytics hizmeti, Azure DevOps Server 2020 için tüm yeni proje koleksiyonlarında otomatik olarak yüklenir. Üretimde kullanım için de desteklemektedir. Power BI analytics hizmetinin OData akışına tümleştirme ve erişim önizlemededir. Bunu kullanmanız ve bize geri bildirim sağlamanız için sizi teşvik ederiz. Azure DevOps Server 2019'dan yükseltme yaptıysanız, yükseltme sırasında Analytics hizmetini yükleme seçeneği sağlanır.

Not

Analytics hizmeti, Azure DevOps Server 2019 için önizlemededir. Analytics'e bir proje koleksiyonu için etkinleştirerek veya yükleyerek erişin. Power BI analytics hizmetinin OData akışına tümleştirme ve erişim önizlemededir. Bunu kullanmanız ve bize geri bildirim sağlamanız için sizi teşvik ederiz.

Önkoşullar

Project kapsamlı sorgular

OData URL'sini desteklenen bir web tarayıcısına girerek bir sorgu oluşturursınız.

Proje düzeyi sorguların temel URL'si şu şekildedir:

https://analytics.dev.azure.com/{OrganizationName}/{ProjectName}/_odata/{version}/

Sağlanan örneklerde ve yerine kuruluş adını ve {OrganizationName}{ProjectName} sorgulamak istediğiniz projenin adını yazın.

https://{servername}:{port}/tfs/{OrganizationName}/{ProjectName}/_odata/{version}/

Not

Bu belgede gösterilen örnekler bir url'Azure DevOps Services temel Azure DevOps Server.

Sağlanan örneklerde aşağıdaki değiştirmeleri yapın:

  • analytics.dev.azure.com Ile {ServerName}:{Port}/tfs/
  • {OrganizationName} proje koleksiyonu adınızla (varsayılan değer DefaultCollection'dır)
  • {ProjectName} sorgusunu yapmak istediğiniz projenin adıyla.

Not

Değeri {version} olarak v1.0 biçimlendirildi. Desteklenen en son sürüm , v2.0 en son önizleme sürümü ise sürümüdür. v4.0-preview Daha fazla bilgi için bkz. OData API sürümü.

İş öğelerinin sayısını iade

Örneğin, aşağıdaki proje kapsamlı sorgu belirli bir proje için iş öğelerinin sayısını geri dönecektir:

https://analytics.dev.azure.com/{OrganizationName}/ProjectA/_odata/v1.0/WorkItems/$count

Not

Bir kuruluşta yer alan tüm projelere erişiminiz yoksa tüm sorgularınıza bir proje filtresi uygulamanız önerilir. Verileri Power BI Desktop veya Excel araçlarına çekmek için proje yolu söz dizimini kullanmak, tüm verilerinizin verilen proje tarafından kısıtlanmış olduğundan emin olmak için en iyi yoldur. Kuruluş kapsamındaki sorguları yalnızca iki veya daha fazla projeyle ilgili rapora ihtiyacınız olduğunda kullanmalarını öneririz.

Proje için tanımlanan alanları iade

Benzer şekilde, aşağıdaki sorgu dizesi belirli bir projenin alanlarını döndürür:

https://analytics.dev.azure.com/{OrganizationName}/ProjectA/_odata/v1.0/Areas

Kuruluş kapsamlı bir sorguda aşağıdaki filtreye eşdeğerdir:

https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/Areas?
  $filter=Project/ProjectName eq 'ProjectA'

$expand kullanma

Bir seçenekle proje kapsamlı bir sorgu $expand kullanırken başka filtreler sağlamanız gerekmez.

Örneğin, aşağıdaki proje kapsamlı filtre:

https://analytics.dev.azure.com/{OrganizationName}/ProjectA/_odata/v1.0/WorkItems?
  $expand=Parent

güvenliği zorlamak için otomatik olarak filtrelenir:

https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
  $filter=ProjectName eq 'ProjectA'
  &$expand=Parent($filter=ProjectName eq 'ProjectA')

Kuruluş kapsamlı sorgular

Kuruluş düzeyindeki sorguların Temel URL'si şu şekildedir:

https://analytics.dev.azure.com/{OrganizationName}/_odata/v1.0

Bir seçenekle kuruluş kapsamlı bir sorgu $expand kullanırken başka bir filtre sağlayabilirsiniz.

Örneğin, tüm iş öğelerinin öğelerini almak için bir kullanan $expand aşağıdaki kuruluş kapsamlı sorgu.

https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
  $filter=Project/ProjectName eq 'ProjectA'
  &$expand=Children

Çocukların belirtilen projeyle sınırlı olduğunu doğrulamak için başka bir filtre gerektirir:

https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
  $filter=Project/ProjectName eq 'ProjectA'
  &$expand=Children($filter=Project/ProjectName eq 'ProjectA')

Tüm iş öğelerinin üst öğelerini iade

Tüm iş öğelerinin üst öğelerini $expand almak için bir seçenek kullanan aşağıdaki sorgu.

https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
  $filter=Project/ProjectName eq 'ProjectA'
  &$expand=Parent

Üst öğenin belirtilen projeyle sınırlı olduğunu doğrulamak için başka bir filtre gerektirir:

https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
  $filter=Project/ProjectName eq 'ProjectA'
  &$expand=Parent($filter=Project/ProjectName eq 'ProjectA')

Diğer filtre olmadan, herhangi bir iş öğesinin üst öğesi okuma erişiminiz olmayan bir projedeki iş öğelerine başvurursa istek başarısız olur.

Project düzeyi güvenlik kısıtlamaları

Analiz, proje düzeyi güvenlikle ilgili sorgu söz dizimi üzerinde birkaç kısıtlama daha içerir.

veya anyall filtreleri, bir üzerinde temel Varlık için $expand geçerlidir. Bir filtreyi temel alan Project kullanırken filtreyi açıkça $expand yoksayabilirsiniz:

Örneğin, aşağıdaki sorgu:

https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
  $filter=ProjectName eq 'ProjectA'
  &$expand=Children($filter=Project/ProjectName eq 'ProjectA')

Şu şekilde yorumlanır:

https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
  $filter=ProjectName eq 'ProjectA'
  &$expand=Children

tüm projelere erişiminiz yoksa ve başarısız olur.

Kısıtlamayla ilgili bir çalışma yapmak için içinde ek bir ifade eklemeniz $filter gerekir:

https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
  $filter=ProjectName eq 'ProjectA' and Children/any(r: r/ProjectName eq 'ProjectA')
  &$expand=Children

kullanma yalnızca koleksiyonda tüm projelere erişiminiz varsa veya proje kapsamlı bir sorgu $level kullanırken de destek olur:

https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
  $expand=Children($levels=2;$filter=ProjectName eq 'ProjectA')

Analiz, diğer ad kullanan projeler için herhangi bir çapraz $it desteklemez. Örneğin, aşağıdaki sorgu, kök iş öğesinin ProjectName'ine $it diğer adını kullanarak başvurur ve bu da desteklenmiyor:

https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
  $expand=Links(
    $expand=TargetWorkItem;
    $filter=TargetWorkItem/Project/ProjectName eq $it/Project/ProjectName)

Sonraki adım