Unterstützte OData-Funktionen und -Klauseln

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

In diesem Artikel wird beschrieben, wie Analytics mehrere OData-Funktionen unterstützt. Nicht unterstützte Funktionen werden ebenfalls aufgeführt. OData (Open Data Protocol) ist ein ISO/IEC-genehmigter OASIS-Standard, der bewährte Methoden zum Erstellen und Nutzen von REST-APIs definiert. Weitere Informationen finden Sie in der OData-Dokumentation.

Hinweis

Der Analysedienst wird automatisch aktiviert und in der Produktion für alle Azure DevOps Services unterstützt. Die Power BI-Integration und der Zugriff auf den OData-Feed des Analysediensts sind allgemein verfügbar. Wir empfehlen Ihnen, es zu verwenden und uns Feedback zu geben. Verfügbare Daten sind versionsabhängig. Die neueste unterstützte Version ist v2.0, und die neueste Vorschauversion ist v4.0-preview. Weitere Informationen finden Sie unter OData-API-Versionsverwaltung.

Hinweis

Der Analytics-Dienst wird automatisch installiert und in der Produktion für alle neuen Projektsammlungen für Azure DevOps Server 2020 und höhere Versionen unterstützt. Die Power BI-Integration und der Zugriff auf den OData-Feed des Analysediensts sind allgemein verfügbar. Wir empfehlen Ihnen, es zu verwenden und uns Feedback zu geben. Wenn Sie ein Upgrade von Azure DevOps Server 2019 durchgeführt haben, können Sie den Analytics-Dienst während des Upgrades installieren.

Verfügbare Daten sind versionsabhängig. Die neueste unterstützte Version ist v2.0, und die neueste Vorschauversion ist v4.0-preview. Weitere Informationen finden Sie unter OData-API-Versionsverwaltung.

Hinweis

Der Analytics-Dienst befindet sich für Azure DevOps Server 2019 in der Vorschauphase. Sie können es für eine Projektsammlung aktivieren oder installieren . Die Power BI-Integration und der Zugriff auf den OData-Feed des Analysediensts befinden sich in der Vorschau. Wir empfehlen Ihnen, es zu verwenden und uns Feedback zu geben.

Verfügbare Daten sind versionsabhängig. Die neueste unterstützte Version ist v2.0, und die neueste Vorschauversion ist v4.0-preview. Weitere Informationen finden Sie unter OData-API-Versionsverwaltung.

Unterstützte Klauseln

  • $apply
  • $compute
  • $count
  • $expand
  • $filter
  • $orderby
  • $select
  • $skip
  • $top

Wenn mehrere Klauseln in einer Abfrage verwendet werden, werden sie in der oben angegebenen Reihenfolge angewendet. Die Reihenfolge der Klauseln in der Abfragezeichenfolge wird ignoriert. In der folgenden Abfrage werden arbeitselemente beispielsweise zuerst gruppiert und aggregiert. Als Nächstes werden die Gruppen gefiltert. Danach werden die gefilterten Gruppen sortiert. Schließlich werden die ersten fünf Datensätze zurückgegeben. Die Abfrage gibt die fünf obersten Arbeitselementtypen zurück, die mindestens 100 Mal verwendet werden.

WorkItems?$filter=Count ge 100&$apply=groupby((WorkItemType), aggregate($count as Count))&$orderby=Count&top=5

Unterstützung von Aggregationserweiterungen

Es benötigt eine Sequenz von Mengentransformationen, die durch Schrägstriche getrennt sind, um auszudrücken, dass sie nacheinander angewendet werden. Das Ergebnis jeder Transformation ist die Eingabe für die nächste Transformation. In der folgenden Abfrage werden z. B. Arbeitselemente gefiltert und dann nach Arbeitselementtyp und -zustand gruppiert. Als Nächstes werden die Gruppen gefiltert und erneut gruppiert.

Hinweis

OData-Aggregationserweiterungen sind relativ neu und werden von einigen Clienttools noch nicht vollständig unterstützt.

Workitems?$apply=filter(State ne 'Closed')/groupby((WorkItemType, State), aggregate($count as Count))/filter(Count gt 100)/groupby((State),aggregate(Count with max as MaxCount))  

Die folgenden Transformationen werden unterstützt:

Transformation Notizen
aggregate Ermöglicht die Aggregation mit einer der folgenden Methoden $count, average, max, , min, sum
compute Ermöglicht das Hinzufügen berechneter Eigenschaften.
expand Ermöglicht die Erweiterung um angegebene Eigenschaften.
filter Ermöglicht das Filtern des Eingabesatzes. Unterstützt die gleichen Ausdrücke wie $filter
groupby Ermöglicht die Gruppierung nach Eigenschaften.

Weitere Informationen finden Sie unter Aggregieren von Arbeitsnachverfolgungsdaten.

Unterstützte Funktionen

Kanonische Funktion BESCHREIBUNG
cast Gibt einen Ausdruck des aktuellen instance zurück, der in den angegebenen Typ umgewandelt wird.
contains Gibt true zurück, wenn der zweite Parameterzeichenfolgenwert eine Teilzeichenfolge des ersten Parameterzeichenfolgenwerts ist, andernfalls wird false zurückgegeben.
endswith Gibt true zurück, wenn der erste Parameterzeichenfolgenwert mit dem zweiten Parameterzeichenfolgenwert endet, andernfalls wird false zurückgegeben.
startswith Gibt true zurück, wenn der erste Parameterzeichenfolgenwert mit dem zweiten Parameterzeichenfolgenwert beginnt, andernfalls wird false zurückgegeben.
length Gibt die Anzahl der Zeichen im Parameterwert zurück.
indexof Gibt die nullbasierte Zeichenposition des ersten Vorkommens des zweiten Parameterwerts im ersten Parameterwert oder -1 zurück, wenn der zweite Parameterwert nicht im ersten Parameterwert auftritt.
substring Gibt eine Teilzeichenfolge des ersten Parameterzeichenfolgenwerts zurück, beginnend am N.-Zeichen und endend beim letzten Zeichen (wobei N der zweite ganzzahlige Parameterwert ist).
tolower Gibt den Zeichenfolgenwert des Eingabeparameters zurück, wobei alle Großbuchstaben in Kleinbuchstaben konvertiert wurden.
toupper Gibt den Zeichenfolgenwert des Eingabeparameters zurück, wobei alle Kleinbuchstaben in Großbuchstaben konvertiert werden.
trim Gibt den Zeichenfolgenwert des Eingabeparameters mit allen führenden und nachfolgenden Leerzeichen zurück.
year Gibt die Jahreskomponente des Date- oder DateTimeOffset-Parameterwerts zurück.
month Gibt die Month-Komponente des Date- oder DateTimeOffset-Parameterwerts zurück.
day Gibt die Day-Komponente des Date- oder DateTimeOffset-Parameterwerts zurück.
date Gibt den Datumsteil des DateTimeOffset-Parameterwerts zurück.
time Gibt den Zeitteil des DateTimeOffset-Parameterwerts zurück.
totaloffsetminutes Gibt die signierte Anzahl von Minuten im Zeitzonenoffsetteil des DateTimeOffset-Parameterwerts zurück.
now Gibt den aktuellen Zeitpunkt (Datum und Uhrzeit mit Zeitzone) als DateTimeOffset-Wert zurück.
maxdatetime Gibt den letzten möglichen Zeitpunkt als DateTimeOffset-Wert zurück.
mindatetime Gibt den frühestmöglichen Zeitpunkt als DateTimeOffset-Wert zurück.

OData-Funktionen werden in einer $filter -Klausel verwendet, aber nicht in einer $select -Klausel, wie sie in einer SQL-Anweisung verwendet würden.

Sie können beispielsweise Folgendes angeben:

/WorkItems?$filter=toupper(Title) eq 'HELP' 

Sie können jedoch die folgende Zeichenfolge nicht eingeben:

/WorkItems?$select=WorkItemId,State,toupper(Title)

Nicht unterstützte Funktionen

  • bottomcount
  • bottomsum
  • bottompercent
  • $crossjoin
  • concat
  • countdistinct
  • from
  • isdefined
  • $rollup
  • $search
  • topcount
  • topsum
  • toppercent