Abfragen nach Titeln, IDs und Rich-Text-Feldern in Azure Boards und Azure DevOps
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Wenn Sie basierend auf einem Schlüsselwort, einem Ausdruck oder einem NULL-Textfeld nach Arbeitselementen suchen möchten, können Sie dazu nach einzeiligem Text (String), mehrzeiligem Text (PlainText) und Rich-Text-Feldern (HTML) filtern. Wenn Sie feststellen, dass Ihre Abfragen zu lange dauern, um Ergebnisse zurückzugeben, lesen Sie Erstellen einer Abfrage/Bewährte Methoden.
Unterstützte Operatoren und Makros
In Abfrageklauseln mit einem Text- oder Rich-Text-Feld können die in der folgenden Tabelle aufgeführten Operatoren und Makros verwendet werden.
Datentyp
Unterstützte Operatoren und Makros
Rich-Text (HTML)
Mehrzeilige Textzeichenfolgen (PlainText)
Contains Words
, Does Not Contain Words
, Is Empty
1, Is Not Empty
1
Einzelne Textzeichenfolge (String)
= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], Contains, Does Not Contain, In, Not In, In Group, Not In Group, Was Ever
Makros: [Any]
(gültig mit dem Feld Arbeitselementtyp) und @Project
2 (gültig mit dem Feld Teamprojekt).
ID
= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], In, Not In, Was Ever
Makros: @Follows
, @MyRecentActivity
, @RecentMentions
und @RecentProjectActivity
(gültig mit dem Feld ID und den Operatoren In
und Not In
), @Project
2 (gültig mit dem Feld Teamprojekt).
Felder Zustand und Arbeitselementtyp
= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field],
Enthält,
Enthält nicht,
In,
Nicht in,
In Gruppe,
Nicht in Gruppe,
War schon einmal **Macros**:
[Any]` (gültig mit beiden Feldern).
Hinweis
- Die Operatoren
Is Empty
undIs Not Empty
werden für Azure DevOps Server 2019 RC2 und höher unterstützt - Standardmäßig filtert das System automatisch basierend auf dem aktuellen Projekt. Weitere Informationen finden Sie unter Projektübergreifende Abfrage.
Verwenden von Contains words
zum Abfragen übereinstimmender Zeichenfolgen
Wenn Sie nach einer übereinstimmenden Zeichenfolge filtern möchten, verwenden Sie den Operator Contains Words
anstelle von Contains
. Der Operator Contains Words
führt eine Volltextsuche für das angegebene Feld aus, was in den meisten Fällen schneller ist. Die Zeichenfolge darf maximal 100 Zeichen enthalten.
Der Operator Contains
führt dagegen einen Tabellenscan aus, der nicht nur langsamer ist, sondern auch mehr CPU-Zyklen verbraucht. Diese CPU-Zyklen werden auf die Ratenbegrenzung für Ihren Ressourcenverbrauch angerechnet.
Hinweis
Der Contains Words
Operator verwendet den Index für die Volltextsuche von SQL. Wenn ein neuer Wert in einem langen Textfeld gespeichert wird, führt SQL Server Folgendes aus:
- Aufteilen des Ausdrucks in einzelne Wörter
- Entfernen Sie alle allgemeinen Wörter, die einer Suche keinen wirklichen Wert hinzufügen (z. B. „ein“ oder „ist“ auf Deutsch)
- Wandeln Sie Wörter in ihren gemeinsamen Stamm um (z. B. Laufen, lief und Läufer würden in „Lauf“ umgewandelt, da sie alle Variationen dieses Worts sind)
- Speichern Sie diese eindeutigen Schlüsselwörter in einem Index.
Wenn ein Benutzer dann eine Abfrage für dieses Feld mithilfe des Contains Words
-Operators ausführt, wird die Suche für die eindeutigen Schlüsselwörter ausgeführt, die im Index gespeichert sind. Bei langen Textfeldern ist die Suche wesentlich effizienter und schneller als bei einer Substring-Suche. SQL definiert ein „Wort“ standardmäßig als Satz von Zeichen zwischen Interpunktion. Beispielsweise kennzeichnen Punkte das Ende eines Worts, aber der Punkt wird nicht als Teil des Worts betrachtet. Da der Index für die Volltextsuche Schlüsselwörter anstelle exakter Ausdrücke enthält, erhalten Sie letztendlich alle Ergebnisse, die dieselben Schlüsselwörter enthalten, wie durch die Indizierung bestimmt.
Schlüsselwort- oder ausdrucksbasierte Abfrage mit Platzhaltern
Verwenden Sie Enthält oder Enthält Wörter, um Elemente aufzulisten, die partiell oder genau den Wörtern oder dem Ausdruck entsprechen, die bzw. den Sie eingeben.
Wählen Sie Enthält oder Enthält nicht aus, um nach genauen oder partiellen Übereinstimmungen mit einem Wort oder einem Ausdruck zu suchen. Wählen Sie Enthält Wörter oder Enthält keine Wörter aus, um nach genauen Übereinstimmungen mit einem Ausdruck zu suchen bzw. das Platzhalterzeichen (*) zu verwenden. Bei Verwendung dieser Operatoren wird der Index für die Volltextsuche verwendet.
Geben Sie z. B. Enthält Wörter und inform* an, um nach einem Textfeld zu filtern, das informieren, Information oder informativ enthält.
Tipp
Informationen zur Gruppierung von AND/OR
-Klauseln finden Sie unter Erstellen und Speichern von verwalteten Abfragen – Gruppenklauseln. Um die WIQL-Syntax für eine Abfrage anzuzeigen, installieren Sie die WIQL-Erweiterung für den Abfrage-Editor, mit der Sie die WIQL-Version eines beliebigen Abfrage-Editor-Eintrags anzeigen können.
Abfragen nach bestimmten Wörtern unter Ausschluss anderer Wörter
Verwenden Sie die Operatoren Enthält Wörter und Enthält keine Wörter, um Elemente auflisten, die genau mit den eingegebenen Wörtern oder dem eingegebenen Ausdruck übereinstimmen, und andere Wörter oder Ausdrücke auszuschließen. Sie können diese Operatoren kombinieren und mit dem Platzhalterzeichen (*) verwenden.
Im folgenden Beispiel filtern diese Operatoren die Arbeitselemente nach den Elementen, die das Wort Phase enthalten, aber nicht das Wort Phasor.
Abfragen von nicht definierten Feldwerten
Sie können Arbeitselemente mit einem nicht definierten Feldwert finden, indem Sie den Gleichheitsoperator (=
) verwenden und den Wert für das Feld leer lassen. Die folgenden Filter listen beispielsweise alle Arbeitselemente des Typs „Aufgabe“ auf, deren Feld „Aktivität“ leer ist.
Um Arbeitselemente basierend auf einem Feld aufzulisten, das nicht leer ist, verwenden Sie den NOT-Operator (<>
), und lassen Sie den Wert leer.
Abfragen von leeren oder nicht leeren HTML-Feldern
Sie können Arbeitsaufgaben mit leeren Beschreibungen ermitteln. Die Verwendung von Ist leer oder Ist nicht leer mit einem HTML-Feld ermöglicht das Auflisten von Arbeitselementen mit leeren oder nicht leeren Rich-Text-Feldern. Sie geben mit diesem Operator keinen Wert an.
Die folgenden Abfragefilter listen beispielsweise alle Arbeitselemente mit Einträgen im Feld Beschreibung auf.
Filtern nach Sonderzeichen
Um nach einer URL oder einem Ausdruck zu filtern, der Sonderzeichen wie /
oder -
enthält, verwenden Sie einen umgekehrten Schrägstrich als Escapezeichen für diese Zeichen. Die folgenden Beispiele zeigen, wie Sie nach einer URL und nach einem Ausdruck mit einem Gedankenstrich filtern:
Filtern nach einer URL: Suchen Sie nach einem Arbeitselementtitel, der den Ausdruck
https://example.com/path-to-resource
enthält.- Abfrage:
Title ~ "https:\/\/example.com\/path-to-resource"
- Ergebnisse: Gibt alle Arbeitselemente mit der exakten URL im angegebenen Feld zurück.
- Abfrage:
Filtern nach einem Ausdruck mit einem Gedankenstrich: Suchen Sie nach einem Arbeitselementtitel, der
"your-phrase-with-dash"
enthält.- Abfrage:
Title ~ "feature-update\-2023"
- Ergebnisse: Gibt alle Arbeitselemente zurück, die den exakten Ausdruck mit Bindestrichen im angegebenen Feld enthalten.
- Abfrage:
Hinweis
Sie können keine Arbeitselemente abfragen, an die keine Tags angefügt sind. Sie können auf unserer Entwicklercommunity-Seite Be able to search for empty tags (Möglichkeit zur Suche nach leeren Tags) für diese Featureanforderung stimmen.
Kategoriebasierte Abfragen
Um Arbeitselemente auf Grundlage der Kategorie zu filtern, der sie angehören, verwenden Sie den Operator In Gruppe. Die folgenden Filterkriterien geben z. B. alle Arbeitselemente zurück, die sich im aktuellen Projekt befinden, dem Teammitglied zugewiesen sind und per Definition der Kategorie „Fehler“ angehören.
Welche Elemente werden in den Kategorien „Anforderung“ oder „Aufgabe“ angezeigt?
Im Folgenden werden die Standardzuweisungen der Arbeitselementtypen zu den einzelnen Kategorien für jeden Prozess aufgeführt.
Prozess | Anforderungskategorie | Aufgabenkategorie |
---|---|---|
Standard | Problem | Aufgabe |
Agilität | User Story | Aufgabe |
Scrum | Product Backlog Item, Fehler | Aufgabe |
CMMI | Anforderung | Aufgabe |
Jedes Team kann festlegen, ob der Arbeitselementtyp „Fehler“ in der Kategorie „Anforderung“ oder „Aufgabe“ angezeigt wird. Weitere Informationen finden Sie unter Anzeigen von Fehlern in Backlogs und Boards. Sie können einem Backlog benutzerdefinierte Arbeitselementtypen hinzufügen. Weitere Informationen finden Sie unter Hinzufügen oder Ändern eines Arbeitselementtyps – Hinzufügen eines benutzerdefinierten Arbeitselementtyps zu einem Backlog oder Board.
Abfragen von Arbeitselementen, denen Sie folgen
Sie können das Makro @Follows zusammen mit anderen Abfragefiltern verwenden, um eine Liste nach Arbeitselementen zu filtern, denen Sie folgen.
Die folgende Abfrage zeigt beispielsweise, wie Sie aktive Arbeitselemente, denen Sie folgen, projektübergreifend abfragen. Sie verwenden das Feld „ID“ und den Operator „In“ mit dem Makro @Follows.
Abfragen der letzten Arbeitselementaktivität
Sie können die folgenden Makros verwenden, um Arbeitselemente basierend auf den letzten Aktivitäten aufzulisten:
- @MyRecentActivity: Listet Elemente auf, die Sie kürzlich angezeigt oder geändert haben.
- @RecentMentions: Listet Elemente auf, denen Sie in den letzten 30 Tagen mit @mention hinzugefügt wurden.
- @RecentProjectActivity: Listet Elemente auf, die kürzlich in Ihrem Projekt erstellt oder geändert wurden.
Geben Sie das Feld ID und entweder den Operator In oder Nicht in an.
Die folgende Abfrage zeigt beispielsweise, wie Sie Arbeitselemente abfragen, die Sie kürzlich angezeigt oder geändert haben.
Allgemeine Felder für die meisten Arbeitselementtypen
In der folgenden Tabelle werden allgemeine Felder beschrieben, die zum Filtern von Abfragen verwendet werden. Die ID-Felder identifizieren Arbeitselemente in einer Liste eindeutig. Verwenden Sie das Feld Titel zur Unterscheidung des Arbeitselements von allen anderen Arbeitselementen desselben Typs. Das Feld Beschreibung und andere Rich-Text-Felder (Datentyp = HTML) enthalten zusätzliche Informationen, die zum Implementieren von Arbeiten und Nachverfolgen von Änderungen erforderlich sind. Nachdem ein Arbeitselement erstellt wurde, können Sie alle Felder mit Ausnahme von ID ändern. Beim Hinzufügen und Speichern eines Arbeitselements weist das System eine ID zu, die nicht geändert werden kann.
Hinweis
Das System indiziert automatisch alle Felder mit langem Text vom Datentyp PlainText und HTML für die Volltextsuche. Dazu zählen die Felder Titel, Beschreibung und Reproduktionsschritte. Weitere Informationen sowie Server- und Sortierungsanforderungen für lokale Azure DevOps-Bereitstellungen finden Sie unter Felder, Operatoren, Werte und Variablen für Abfragen – Volltext- und partielle Wortsuchen.
Feldname
Beschreibung
Arbeitsaufgabentyp
Akzeptanzkriterien 1
Eine Beschreibung der Kriterien, die erfüllt werden müssen, bevor der Fehler oder das Product Backlog Item geschlossen werden kann.
Vor Beginn der Bearbeitung eines Fehlers oder eines Product Backlog Items sollten die Kriterien für die Kundenakzeptanz so eindeutig wie möglich definiert werden. Durch Gespräche zwischen dem Team und den Kunden zur Festlegung der Akzeptanzkriterien wird sichergestellt, dass das Team über die Kundenerwartungen im Bilde ist. Die Akzeptanzkriterien können als Grundlage für Akzeptanztests verwendet werden, damit Sie effektiver auswerten können, ob ein Element zufriedenstellend abgeschlossen wurde.
Verweisname = Microsoft.VSTS.Common.AcceptanceCriteria, Datentyp = HTML
Fehler, Epic, Feature, Product Backlog Item (Scrum)
Beschreibung 1, 2
Verwenden Sie dieses Feld, um ausführliche Informationen zu einem Arbeitselement bereitzustellen.
Verweisname = System.Description, Datentyp = HTML
Alle
ID
Der eindeutige Bezeichner, der einem Arbeitselement zugewiesen wurde. Die Arbeitselement-IDs sind in allen Projekten und innerhalb einer Projektsammlung eindeutig.
Verweisname = System.Id, Datentyp = Integer
Alle
Reproduktionsschritte (oder „Zu reproduzierende Schritte“) 1
Die erforderlichen Schritte zum Reproduzieren des unerwarteten Verhaltens. Zeichnen Sie ausreichende Informationen auf, sodass andere Teammitglieder sowohl die vollständigen Auswirkungen des Problems verstehen als auch sicherstellen können, dass der Fehler behoben wurde. Zu diesem Eintrag gehören Aktionen zum Finden oder Reproduzieren des Fehlers und des erwarteten Verhaltens.
Verweisname=Microsoft.VSTS.TCM.ReproSteps, Datentyp=HTML
Bug
Lösung
Beschreibt, wie ein Impediment gelöst wurde.
Verweisname = Microsoft.VSTS.Common.Resolution, Datentyp = HTML
Hindernis (Scrum)
Systeminfo1
Informationen zur Software und zur Systemkonfiguration, die für den Fehler, die Codeüberprüfung oder das Feedback relevant sind.
Verweisname = Microsoft.VSTS.TCM.SystemInfo, Datentyp = HTML
Fehler, Codereviewanforderung, Feedbackanforderung
Teamprojekt
Das Projekt, zu dem ein Arbeitselement gehört. Fügen Sie einer Abfrage dieses Feld hinzu, wenn Sie Ihre Liste nach Elementen in einem oder mehreren Projekten filtern möchten. Weitere Informationen finden Sie unter Beispiel-Abfragen, Abfragen über alle Projekte.
Verweisname = System.TeamProject, Datentyp = String
Alle
Titel
Eine kurze Beschreibung mit einer Zusammenfassung der Arbeitsaufgabe, anhand derer Teammitglieder sie von anderen Arbeitsaufgaben in einer Liste unterscheiden können.
Verweisname = System.Title, Datentyp = String
Alle
Arbeitselementtyp
Der Name des Arbeitselementtyps. Arbeitselementtypen werden basierend auf dem Prozess definiert, den Sie beim Erstellen Ihres Projekts verwenden. Weitere Informationen finden Sie unter Prozesse und Prozessvorlagen und Hinzufügen oder Ändern eines Arbeitselementtyps.
Um Arbeitselemente basierend auf ihrer Kategoriezuweisung zu filtern, können Sie die Operatoren In Gruppe und Nicht in Gruppe verwenden und in der Dropdownliste eine Kategorie auswählen.
Verweisname = System.WorkItemType, Datentyp = String
All
Hinweis
Nach dem Upgrade auf Team Foundation Server 2012 wurde der Typ des Felds „Beschreibung“ von „PlainText“ in HTML geändert. Mithilfe des Befehls witadmin changefield können Sie den Datentyp für dieses Feld wiederherstellen. Weitere Informationen finden Sie unter Verwalten von Arbeitselementfeldern [witadmin].
Verwandte Artikel
- Abfrage-Editor
- Add work items (Hinzufügen von Arbeitselementen)
- Arbeitselement-Feldindex
- Informationen zu verwalteten Abfragen
REST-API
Informationen zur programmgesteuerten Interaktion mit Abfragen finden Sie in den folgenden REST-API-Ressourcen:
- Azure DevOps Services REST API Reference (Referenz zur Azure DevOps Services-REST-API)
- Abfragen
- Work Item Query Language
- Programmgesteuertes Abrufen von Arbeitselementen mit Abfragen