Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
In diesem Artikel wird erläutert, wie Analytics mehrere OData-Funktionen unterstützt. Nicht unterstützte Funktionen werden ebenfalls aufgelistet. OData (Open Data Protocol) ist ein ISO/IEC-genehmigter OASIS-Standard, der bewährte Methoden zum Erstellen und Verwenden 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 Dienste in Azure DevOps Services unterstützt. Power BI-Integration und Zugriff auf den OData-Feed des Analytics-Diensts sind allgemein verfügbar. Sie werden dazu ermutigt, den OData-Datenfeed für Analytics zu verwenden und Feedback zu geben.
Verfügbare Daten sind versionsabhängig. Die neueste unterstützte Version der OData-API ist v2.0, und die neueste Vorschauversion ist v4.0-preview. Weitere Informationen finden Sie unter OData-API-Versionsverwaltung.
Hinweis
Der Analysedienst wird automatisch installiert und in der Produktion für alle neuen Projektsammlungen für Azure DevOps Server 2020 und höhere Versionen unterstützt. Power BI-Integration und Zugriff auf den OData-Feed des Analytics-Diensts sind allgemein verfügbar. Sie werden dazu ermutigt, den OData-Datenfeed für Analytics zu verwenden und Feedback zu geben. Wenn Sie ein Upgrade von Azure DevOps Server 2019 durchführen, können Sie den Analysedienst während des Upgrades installieren.
Verfügbare Daten sind versionsabhängig. Die neueste unterstützte Version der OData-API 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 arbeitsaufgaben 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 wichtigsten Arbeitsaufgabentypen 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 wird eine Sequenz von Satztransformationen verwendet, die durch Schrägstriche getrennt werden, um auszudrücken, dass sie aufeinander folgenden angewendet werden. Das Ergebnis jeder Transformation ist die Eingabe für die nächste Transformation. In der folgenden Abfrage werden beispielsweise Arbeitsaufgaben gefiltert und dann nach Arbeitsaufgabentyp 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:
| Umwandlung | Hinweise |
|---|---|
aggregate |
Ermöglicht aggregation mit einer der folgenden Methoden $count, , average, max, , minsum |
compute |
Ermöglicht das Hinzufügen berechneter Eigenschaften |
expand |
Ermöglicht die Erweiterung durch angegebene Eigenschaften. |
filter |
Ermöglicht das Filtern des Eingabesatzes. Unterstützt dieselben Ausdrücke wie $filter |
groupby |
Ermöglicht das Gruppieren nach Eigenschaften |
Weitere Informationen finden Sie unter "Aggregierte Arbeitsverfolgungsdaten".
Unterstützte Funktionen
| Kanonische Funktion | Beschreibung |
|---|---|
cast |
Gibt den Ausdruck der aktuellen Instanz zurück, die in den angegebenen Typ umgegossen 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 mit dem Nth-Zeichen und dem Letzten Zeichen (wobei N der zweite ganzzahlige Parameterwert ist). |
tolower |
Gibt den Wert der Eingabeparameterzeichenfolge zurück, wobei alle Großbuchstaben in Kleinbuchstaben konvertiert wurden. |
toupper |
Gibt den Wert der Eingabeparameterzeichenfolge zurück, wobei alle Kleinbuchstaben in Großbuchstaben konvertiert werden. |
trim |
Gibt den Eingabeparameterzeichenfolgenwert mit allen führenden und nachfolgenden Leerzeichen zurück. |
year |
Gibt die Jahreskomponente des Parameterwerts Date oder DateTimeOffset zurück. |
month |
Gibt die Monatskomponente des Werts des Date- oder DateTimeOffset-Parameters zurück. |
day |
Gibt die Tageskomponente des Werts des Date- oder DateTimeOffset-Parameters 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 Offsetteil der Zeitzone des DateTimeOffset-Parameterwerts zurück. |
now |
Gibt den aktuellen Zeitpunkt (Datum und Uhrzeit mit Zeitzone) als DateTimeOffset-Wert zurück. |
maxdatetime |
Gibt den neuesten möglichen Zeitpunkt als DateTimeOffset-Wert zurück. |
mindatetime |
Gibt den frühesten mö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 werden.
Sie können beispielsweise Folgendes angeben:
/WorkItems?$filter=toupper(Title) eq 'HELP'
Sie können jedoch nicht die folgende Zeichenfolge eingeben:
/WorkItems?$select=WorkItemId,State,toupper(Title)
Nicht unterstützte Funktionen
bottomcountbottomsumbottompercent$crossjoinconcatcountdistinctfromisdefined$rollup$searchtopcounttopsumtoppercent