Megosztás:


Projekt- és szervezeti hatókörű lekérdezések

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Az Azure DevOps-hez készült Analytics használatával olyan lekérdezéseket hozhat létre, amelyek egy projektre, szervezetre vagy gyűjteményre terjednek ki. Ezeket a lekérdezéseket közvetlenül a böngészőben vagy a Power BI-ban is futtathatja.

A projekthatókörű lekérdezések segítenek megválaszolni az egyetlen projekttel kapcsolatos kérdéseket, míg a szervezeti és gyűjtemény hatókörű lekérdezések lehetővé teszik a projekthatárokat átlépő kérdések megválaszolásához. A szervezeti és gyűjtemény hatókörű lekérdezésekhez szélesebb körű felhasználói engedélyekre vagy gondos hatókörkezelési korlátozásokra van szükség annak érdekében, hogy a lekérdezés ne legyen letiltva az engedélyek hiánya miatt.

Feljegyzés

Az Elemzési szolgáltatás automatikusan engedélyezve van és támogatott éles környezetben az Azure DevOps Services összes szolgáltatásához. Az Analytics szolgáltatás OData-hírcsatornájánakPower BI-integrációja és hozzáférése általánosan elérhető. Javasoljuk, hogy használja az Analytics OData-hírcsatornát, és küldjön visszajelzést.

A rendelkezésre álló adatok verziófüggők. Az OData API legújabb támogatott verziója v2.0, és az előzetes verzió v4.0-preview. További információ: OData API-verziószámozás.

Feljegyzés

Az Analytics szolgáltatás automatikusan települ és éles környezetben is támogatott az Azure DevOps Server 2020 és újabb verziók esetén minden új projektgyűjtemény számára. Az Analytics szolgáltatás OData-hírcsatornájánakPower BI-integrációja és hozzáférése általánosan elérhető. Javasoljuk, hogy használja az Analytics OData-hírcsatornát, és küldjön visszajelzést. Ha az Azure DevOps Server 2019-ről frissít, a frissítés során telepítheti az Analytics szolgáltatást.

A rendelkezésre álló adatok verziófüggők. Az OData API legújabb támogatott verziója v2.0, és az előzetes verzió v4.0-preview. További információ: OData API-verziószámozás.

Előfeltételek

Kategória Követelmények
hozzáférési szintek - projekt tagja.
- Legalább alapszintű hozzáférést.
Jogosultságok Alapértelmezés szerint a projekttagok jogosultak az Analytics lekérdezésére és nézetek létrehozására. A szolgáltatás- és szolgáltatás-engedélyezéssel, valamint az általános adatkövetési tevékenységekkel kapcsolatos egyéb előfeltételekről további információt az Analytics eléréséhez szükséges engedélyek és előfeltételek című témakörben talál.

Fontos

Ha nem fér hozzá egy szervezet összes projektjéhez, alkalmazzon egy projektszűrőt az összes lekérdezésre. Amikor adatokat importál ügyféleszközökbe, például Power BI-be vagy Excelbe, használja a projekt elérési út szintaxisát, hogy biztosítsa, minden adat az adott projektre vonatkozzon. Csak akkor használjon szervezeti hatókörű vagy gyűjtemény hatókörű lekérdezéseket, ha két vagy több projektről kell jelentést tennie.

Projekt hatókörű lekérdezések

Egy lekérdezést úgy hozhat létre, hogy beírja az OData URL-címét egy támogatott webböngészőbe.

Egy projektszintű OData-lekérdezés alap URL-címe az alábbi szintaxisban látható.

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

A megadott példákban cserélje le a {OrganizationName} és {ProjectName} helyére a lekérdezni kívánt szervezet és projekt nevét.

Feljegyzés

A cikkben szereplő további példák az Azure DevOps Services URL-címén alapulnak. Cserélje le az Azure DevOps Server URL-címét a példák használatára.

Munkaelemek számának visszaadása

Az alábbi projekthatókörű lekérdezés például egy adott projekt munkaelemeinek számát adja vissza.

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

A Fabrikam Fibre-projekt lekérdezése például 7126 munkaelemet ad vissza. A törölt munkaelemek nem szerepelnek a darabszámban.

https://analytics.dev.azure.com/fabrikam/Fabrikam Fiber/_odata/v1.0/WorkItems/$count

7126

Projektterület elérési útjainak visszaadása

Hasonlóképpen, a következő lekérdezési sztring egy adott projekt területeit adja vissza:

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

Ez egyenértékű a következő szűrővel egy szervezeti hatókörű lekérdezésen:

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

A Fabrikam Fibre-projekt lekérdezése például egy terület elérési útjának összes tulajdonságát visszaadja, mivel a lekérdezésben nincs $select operátor alkalmazva.

https://analytics.dev.azure.com/fabrikam/Fabrikam Fiber/_odata/v1.0/Areas

Az alábbi példa egyetlen terület elérési útjának visszaadott adatait mutatja be.

ProjectSK	"56af920d-393b-4236-9a07-24439ccaa85c"
AreaSK	"26be05fd-e68a-4fcb-833f-497f6bee45f2"
AreaId	"26be05fd-e68a-4fcb-833f-497f6bee45f2"
AreaName	"Service Delivery"
Number	55373
AreaPath	"Fabrikam Fiber\\Service Delivery"
AreaLevel1	"Fabrikam Fiber"
AreaLevel2	"Service Delivery"
AreaLevel3	null
AreaLevel4	null
AreaLevel5	null
AreaLevel6	null
AreaLevel7	null
AreaLevel8	null
AreaLevel9	null
AreaLevel10	null
AreaLevel11	null
AreaLevel12	null
AreaLevel13	null
AreaLevel14	null
Depth	1

A $expand lehetőség használata

Ha projekthatókörű lekérdezést használ egy $expand beállítással, nem kell más szűrőket megadnia.

Például a következő projekthatókörű szűrő:

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

A rendszer automatikusan szűri a biztonság kikényszerítéséhez:

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

Szervezeti hatókörű lekérdezések

A szervezeti szintű lekérdezések alap URL-címe az alábbi módon jelenik meg:

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

Ha szervezeti hatókörű lekérdezést használ egy $expand beállítással, egy másik szűrőt kell megadnia.

Például a következő szervezeti hatókörű lekérdezés egy `$expand` használatával lekéri az összes munkaelem gyermekeit.

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

Egy másik szűrőre van szükség annak ellenőrzéséhez, hogy a gyermekek a megadott projektre vannak-e korlátozva:

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

Az összes munkaelem szülőjének visszaadása

A következő lekérdezés az $expand lehetőséggel kérdezi le az összes munkaelem szülőjét.

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

Egy másik szűrőre van szükség annak ellenőrzéséhez, hogy a szülő a megadott projektre van-e korlátozva:

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

A további szűrő nélkül a kérés meghiúsul, ha bármely munkaelem szülője olyan projektbeli munkaelemekre hivatkozik, amelyekhez nem rendelkezik Olvasás hozzáféréssel.

Projektszintű biztonsági korlátozások

Az Analytics a projektszintű biztonsághoz kapcsolódó lekérdezési szintaxisra vonatkozó néhány további korlátozással rendelkezik.

A any vagy all szűrő az alapentitásra vonatkozik a $expand-en. Projekten alapuló szűrők esetén kifejezetten figyelmen kívül hagyjuk a szűrőt:$expand

Például a következő lekérdezés:

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

A következőképpen értelmezi:

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

Sikertelen, ha nem férsz hozzá az összes projekthez.

A korlátozás megkerüléséhez egy további kifejezést kell hozzáadnia a $filterkövetkezőhöz:

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

A használat $level csak akkor támogatott, ha rendelkezik hozzáféréssel a gyűjtemény összes projektéhez, vagy ha projekthatókörű lekérdezést használ:

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

Az Elemzés nem támogat semmilyen keresztszintű hivatkozást a $it záradékot használó projektek esetén. A következő lekérdezés például a főmunkaelemre ProjectName való hivatkozást $it alias használatával szemlélteti, amely nem támogatott:

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

Következő lépés