Abfragen nach Datum oder aktueller Iteration in Azure Boards
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
In diesem Artikel erfahren Sie, wie Sie Arbeitselemente auf der Grundlage des Zeitpunkts auflisten, zu dem sie erstellt, geschlossen, aufgelöst oder geändert wurden. Sie können ein Datum angeben oder ein unterstütztes Makro verwenden. Verwenden Sie das Makro @Today
, und geben Sie eine zuzügliche oder abzügliche Anzahl von Tagen für relative Datumsangaben an. Verwenden Sie @CurrentIteration
für Abfragen, die Arbeitselemente basierend auf ihrer Zuweisung zum aktuellen Sprint eines Teams auflisten.
Suchen Sie z. B. Arbeitsaufgaben, die in den letzten drei Tagen geändert wurden, mit der folgenden Abfrage.
Außerdem können Sie das Makro CurrentIteration +/- _n_
verwenden, um Abfragen basierend auf einem gleitenden Fenster von Teamiterationen zu erstellen.
Unterstützte Operatoren und Makros
Abfrageklauseln, die ein Feld DateTime oder das Feld Iteration Path angeben, können die in der folgenden Tabelle aufgeführten Operatoren und Makros verwenden.
Datentyp
Unterstützte Operatoren und Makros
DateTime
= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], In, Not In, Was Ever
Makros: @StartOfDay
, @StartOfWeek
, @StartOfMonth
, @StartOfYear
und @Today
.
Sie können +/- _n_
mit jedem der unterstützten Makros verwenden.
TreePath
=, <>, unter, nicht unter
Makros: @CurrentIteration
1 und @CurrentIteration +/- n
2 sind bei Verwendung mit dem Feld Iterationspfad gültig.
Hinweise:
- Die Makros
@StartOfDay
,@StartOfWeek
,@StartOfMonth
und@StartOfYear
werden für Azure DevOps Server 2019.1 und höhere Versionen unterstützt. Sie werden nur unterstützt, wenn sie über das Webportal ausgeführt werden. - Das Makro
@CurrentIteration +/- n
wird für Azure DevOps Server 2019 und höhere Versionen unterstützt. Es wird nur unterstützt, wenn es über das Webportal ausgeführt wird.
Tipp
Der Operator WasEver
kann mit dem Feld Iterationspfad verwendet werden, jedoch nur, wenn er über die WIQL-Syntax (Work Item Query Language) definiert wird. Ein Beispiel finden Sie unter WIQL-Syntax (Work Item Query Language) – Syntaxreferenz.
Datums- und Uhrzeitmuster
Das Datums- und Uhrzeitmuster, das Sie für DateTime-Felder eingeben, muss mit dem Muster übereinstimmen, das Sie über Ihr Profil auswählen. Informationen zum Anzeigen oder Ändern Ihrer Auswahl finden Sie unter Festlegen von Benutzereinstellungen.
Clienteinschränkungen bezüglich der Verwendung der @CurrentIteration-Makros
Auf den folgenden Clients können Sie das Makro @CurrentIteration
in einer Abfrage verwenden:
- Webportal, das eine Verbindung mit Azure Boards herstellt
- Visual Studio 2019 oder höhere Versionen, die mit Azure Boards verbunden sind
- Die REST-API
Sie können das @CurrentIteration +/- n
Makro in einer Abfrage gegen Azure Boards, Azure DevOps Server 2019 und spätere Versionen sowie mit einer REST-API, die das Team als Parameter enthält, verwenden. z. B. @CurrentIteration('[Project]\Team')
.
Ein Fehler tritt auf, wenn Sie eine Abfrage öffnen, die das Makro @CurrentIteration
in früheren Versionen von Visual Studio oder von Microsoft Excel oder Microsoft Project aus enthält. Außerdem können Sie das Makro nicht beim Kopieren oder Klonen von Testsammlungen und Testfällen, beim Definieren von Warnungen oder mit REST-APIs verwenden.
Datumsbasierte Abfragen
Filtern Sie Arbeitsaufgaben nach dem Datum, an dem sie geändert wurden, oder nach einem bestimmten Zeitraum. Beschränken Sie den Umfang Ihrer Abfrage. Dieser Ansatz kann sich positiv auf die Leistung auswirken, da nur Ergebnisse zurückgegeben werden, die dem von Ihnen angegebenen Datumsbereich entsprechen. Wenn Sie mit dem Erstellen von Abfragen noch nicht vertraut sind, lesen Sie die Informationen unter Definieren einer Arbeitselementabfrage.
Nicht alle Felder sind für alle Arbeitselementtypen gültig. Gehen Sie zu Date Fields für die Felder, die Sie in Abfragen einbeziehen können, und die Arbeitselement-Typen, für die sie gelten.
Tipp
- Denken Sie daran, Daten in das Feld Datumsmuster einzugeben, das Sie für Ihr persönliches Profil eingerichtet haben.
- Informationen zum Gruppieren von
AND/OR
-Klauseln finden Sie unter Gruppieren von Klauseln. Um die WIQL-Syntax für eine Abfrage anzuzeigen, installieren Sie die WIQL-Editor-Erweiterung, mit der Sie die WIQL-Version eines beliebigen Abfrage-Editor-Eintrags sehen können.
Filtern nach
Diese Abfrageklauseln einschließen
Artikel, die in den letzten 30 Tagen erstellt wurden.
Artikel, die an einem bestimmten Datum geändert wurden.
Heute beschlossene Sache.
Posten, die innerhalb eines bestimmten Zeitraums abgeschlossen wurden.
Elemente, die nicht abgeschlossen sind. Datum des Abschlusses ist null.
Artikel, deren Status innerhalb der letzten Woche aktualisiert wurde.
Während des aktuellen Sprints abgeschlossene Aufgaben. Das Makro <xref href="CurrentIteration" data-throw-if-not-resolved="False" data-raw-source="@CurrentIteration"></xref>
bezieht sich auf den für den aktuellen Teamkontext definierten Sprint.
Erstellen von datumsbasierten Abfragen nach Tages-, Wochen-, Monats- oder Jahresbeginn
Die folgenden Beispiele zeigen, wie Sie die StartOf...
-Makros verwenden können, um nach Arbeitselementen mit verschiedenen Offsets zu filtern. Weitere Informationen finden Sie unter WIQL-Syntax (Work Item Query Language).
Hinweis
Erfordert Azure DevOps Server 2019, Update 1 oder höher.
Zum Filtern nach
Diese Abfrageklauseln einschließen
In den letzten zwei Wochen geschlossene Wanzen.
Elemente, die in den letzten 10 Tagen geändert wurden.
Die Arbeiten sollen in den nächsten drei Monaten abgeschlossen werden.
Nicht alle Felder sind für alle Arbeitselementtypen gültig. Gehen Sie zu Date Fields für die Felder, die Sie in Abfragen einbeziehen können, und die Arbeitselement-Typen, für die sie gelten.
Erstellen von Abfragen für die aktuelle Iteration Ihres Teams
Wenn Ihr Team Scrum-Prozesse befolgt, planen Sie die Erledigung von Arbeitselementen in Sprints. Mit dem Makro @CurrentIteration
können Sie den Fortschritt von Anforderungen, Fehlern und anderen Arbeiten verfolgen, die im aktuellen Sprint abgeschlossen werden sollen. Weitere Informationen finden Sie unter Verwalten von Sprintzeitachsen.
Die Abfrage findet jedes Element, das einem dem aktuellen Iterationspfad für das Team entsprechenden Sprint zugewiesen ist. Wenn ein Team beispielsweise an Sprint 5 arbeitet, gibt die Abfrage Elemente zurück, die Sprint 5 zugewiesen sind. Arbeitet das Team später an Sprint 6, gibt dieselbe Abfrage Elemente zurück, die Sprint 6 zugewiesen sind.
Hinweis
Damit das Makro @CurrentIteration
funktioniert, muss das Team einen Iterationspfad ausgewählt haben, dessen Datumsbereich das aktuelle Datum einschließt. Weitere Informationen finden Sie unter Auswählen von Teamsprints und Festlegen des Standarditerationspfads. Abfragen, die dieses Makro enthalten, sind zudem nur gültig, wenn sie über das Webportal ausgeführt werden.
Siehe auch Client restrictions on the use of the @CurrentIteration macros weiter oben in diesem Artikel.
Azure Boards fügt einen Team-Parameter hinzu, wenn Sie die Makros @CurrentIteration oder @CurrentIteration +/- n auswählen. Der Team-Parameter stammt aus Ihrem aktuellen Team-Kontext.
Tipp
Wenn das Makro @CurrentIteration
nicht funktioniert, überprüfen Sie, ob die erwartete Iteration für Ihr Team ausgewählt ist und ob Termine für sie festgelegt wurden. Weitere Informationen finden Sie unter Auswählen von Teamsprints.
Um den automatisch vom System festgelegten Teamparameter zu ändern, wählen Sie den Parameter aus, indem Sie den Namen des Teams in das Parameterfeld unterhalb des Makros @CurrentIteration eingeben.
Erstellen einer Abfrage mit einem gleitenden Fenster der Iterationen Ihres Teams
Verwenden Sie das Makro @CurrentIteration +/- n
, wenn Sie die Arbeit verfolgen wollen, die ein Team für kommende Sprints geplant hat, und um zu verstehen, welche Arbeit in früheren Sprints nicht abgeschlossen wurde.
Hinweis
Damit das Makro @CurrentIteration +/- n
funktioniert, muss das Team Iterationspfade ausgewählt haben, die die Kriterien von +/- n
erfüllen. Die Datumsbereiche müssen das aktuelle Datum für die @CurrentIteration
umfassen. Weitere Informationen zur Teamauswahl von Iterationspfaden finden Sie unter Auswählen von Teamsprints und Festlegen des Standarditerationspfads.
Siehe auch Client restrictions on the use of the @CurrentIteration macros weiter oben in diesem Artikel.
In der folgenden Abbildung wird gezeigt, wie sie alle Arbeitselementtypen für User Storys und Fehler auflisten, die dem gleitenden Fenster zugewiesen sind. Das Fenster umfasst die letzten beiden, den aktuellen und die nächsten beiden Sprints, die für das Cloud-Admin- und Tools-Team ausgewählt wurden.
Um dieses Makro zu verwenden, muss das angegebene Team eine Reihe von Sprints auswählen, die den für das Makro eingegebenen Wert +/- n
umfassen.
Auflisten von Arbeitselementen, die aus einem Sprint verschoben wurden
Listen Sie Arbeitselemente auf, die für einen Sprint definiert wurden, aber später verschoben wurden, indem Sie eine Abfrage mit einer Klausel verwenden, die den Operator Was Ever
für das Feld Iterationspfad enthält. Sie können diese Abfrage nur unter Verwendung der WIQL-Syntax erstellen. Bearbeiten Sie die WIQL-Syntax im Query Editor, indem Sie die WIQL Editor Marketplace-Erweiterung installieren.
Die folgende Syntax fragt beispielsweise Arbeitselemente ab, die die folgenden Kriterien erfüllen:
- Definiert im aktuellen Projekt.
- Der Arbeitselement-Typ ist gleich User Story oder Bug.
- Arbeitsaufgaben sind unter dem Fabrikam Fiber Web Team Area Path.
- Die Arbeitselemente befinden sich nicht im Status
Closed
,Completed
,Cut
oderResolved
. - Nicht im aktuellen Iterationspfad für das Fabrikam Fiber Web Team.
- Wurden dem aktuellen Iterationspfad für das Fabrikam Fiber Web Team zugeordnet.
- Sind jetzt der aktuellen Iteration +1 für das Fabrikam Fiber Web Team zugeordnet.
- Innerhalb der letzten 30 Tage (der Dauer des Sprints) geändert wurden.
SELECT
[System.Id],
[System.WorkItemType],
[System.AssignedTo],
[System.Title],
[System.State],
[System.Tags],
[System.IterationPath],
[System.AreaPath]
FROM workitems
WHERE
[System.TeamProject] = @project
AND [System.WorkItemType] IN ('User Story', 'Bug')
AND [System.AreaPath] UNDER 'FabrikamFiber\Web'
AND NOT [System.State] IN ('Completed', 'Closed', 'Cut', 'Resolved')
AND NOT [System.IterationPath] = @currentIteration('[FabrikamFiber]\Web <id:cdf5e823-1179-4503-9fb1-a45e2c1bc6d4>')
AND (
EVER (
[System.IterationPath] = @currentIteration('[FabrikamFiber]\Web <id:cdf5e823-1179-4503-9fb1-a45e2c1bc6d4>')
)
AND [System.IterationPath] = @currentIteration('[FabrikamFiber]\Web <id:cdf5e823-1179-4503-9fb1-a45e2c1bc6d4>') + 1
AND [System.ChangedDate] >= @today - 30
)
ORDER BY [System.Id]
Die Syntaxansicht im Abfrage-Editor sieht wie hier dargestellt aus.
Hinweis
Der Abfrage-Editor zeigt ein Informationssymbol neben dem Was Ever
-Operator an, das auf ein Problem mit der Klausel hinweist. Die Abfrage wird aber trotzdem ausgeführt und Sie können Abfragediagramme erstellen. Um die Abfrage zu ändern, müssen Sie den WIQL Editor verwenden.
Auflisten von Arbeitselementen, die einem Sprint nach dem Startdatum hinzugefügt wurden
Um neu erstellte Arbeitselemente aufzulisten, die einem Sprint nach seinem Startdatum hinzugefügt wurden, verwenden Sie eine Abfrage wie die im folgenden Screenshot. Diese Abfrage filtert nach Arbeitselementen, die dem aktuellen Sprint zugewiesen sind, aber nach dem Startdatum des Sprints erstellt wurden. Verwenden Sie die Klausel created Date = @Today - 28
.
Weitere Optionen zum Abfragen von Änderungen am Sprintbereich finden Sie unter Sprintbereichsänderung.
Datums- und Iterationspfadfelder
Verwenden Sie Datum Felder, um Ihre Abfragen zu filtern. Manche Felder werden mit Informationen aufgefüllt, wenn ein Arbeitselement von einem Zustand in einen anderen übergeht. Einige dieser Felder werden im Arbeitselementformular nicht angezeigt, werden aber für die in der folgenden Tabelle aufgeführten Arbeitselementtypen nachverfolgt.
Feldname
Beschreibung
Arbeitselementtypen
Aktiviertes Datum (Anmerkungen 1 und 2)
Das Datum und die Uhrzeit, zu der das Arbeitselement erzeugt wurde oder zu der sein Status von Closed
, Completed
oder Done
in einen New
- oder Active
-Status geändert wurde.
Verweisname = Microsoft.VSTS.Common.ActivatedDate, Datentyp = DateTime
Fehler, Änderungsanforderung, Epic, Feature, Problem, Product Backlog Item, Anforderung, Review, Risiko, Freigegebener Schritt, Aufgabe, Testfall, User Story
Datum ändern
Das Datum und die Uhrzeit der Änderung eines Arbeitselements.
Verweisname = System.ChangedDate, Datentyp = DateTime
Alle
Schließungsdatum (Hinweis 2)
Das Datum und die Uhrzeit, zu der ein Arbeitselement abgeschlossen wurde.
Verweisname = Microsoft.VSTS.Common.ClosedDate, Datentyp = DateTime
Alle
Erstellt am
Das Datum und Uhrzeit, zu der ein Arbeitselement erstellt wurde.
Verweisname = System.CreatedDate, Datentyp = DateTime
Alle
Due Date
Das geplante Fälligkeitsdatum, bis zu dem ein Problem behoben wird.
Verweisname = Microsoft.VSTS.Scheduling.DueDate, Datentyp = DateTime
Problem (Agile)
Fertigstellungsdatum (Hinweis 3)
Das Datum und die Uhrzeit für den Abschluss der Aufgabe gemäß dem Zeitplan.
Verweisname = Microsoft.VSTS.Scheduling.FinishDate, Datentyp = DateTime
Anforderung, Aufgabe, Testplan, User Story
Iterationspfad
Gruppiert Arbeitselementen nach benannten Sprints oder Zeiträumen. Die Iteration muss ein gültiger Knoten in der Projekthierarchie sein. Sie definieren Iterationspfade für ein Projekt und wählen Iterationspfade für ein Team.
Verweisname = System.IterationPath, Datentyp = TreePath
Alle
Lösungsdatum (Hinweise 1 und 2)
Das Datum und die Uhrzeit, zu der das Arbeitselement in den Status Resolved
versetzt wurde.
Verweisname = Microsoft.VSTS.Common.ResolvedDate, Datentyp = DateTime
Fehler, Änderungsanforderung, Epic, Feature, Problem, Product Backlog Item, Anforderung, Review, Risiko, Freigegebener Schritt, Aufgabe, Testfall, User Story
Startdatum (Hinweis 3)
Das Datum und die Uhrzeit für den Start der Aufgabe gemäß dem Zeitplan.
Hinweis
Lieferpläne verwendet die Felder Startdatum und Zieldatum, um die Spanne von Features, Epics und anderen Portfolio-Backlog-Elementen anzuzeigen.
Verweisname = Microsoft.VSTS.Scheduling.StartDate, Datentyp = DateTime
Epic, Feature, Anforderung, Aufgabe, Testplan, User Story
Datum der Zustandsänderung
Das Datum und die Uhrzeit der Änderung des Werts des Felds State .
Verweisname = Microsoft.VSTS.Common.StateChangeDate, Datentyp = DateTime
Alle
Zieldatum
Das Datum, bis zu dem ein Feature, Arbeitselement oder Problem abgeschlossen oder gelöst werden soll.
Hinweis
Lieferpläne verwendet die Felder Startdatum und Zieldatum, um die Spanne von Features, Epics und anderen Portfolio-Backlog-Elementen anzuzeigen.
Verweisname = Microsoft.VSTS.Scheduling.TargetDate, Datentyp = DateTime
Epic, Feature
Hinweise:
Weitere Informationen finden Sie auch unter Abfragen nach Zuweisungs- oder Workflowänderungen.
Damit diese Felder für einen Arbeitselement-Typ definiert werden können, müssen sie in den Abschnitt
WORKFLOW
der Arbeitselement-Typ-Definition aufgenommen werden. Diese Syntax ist zum Beispiel in der Definition vonFIELDS
enthalten, wenn man in den StatusResolved
wechselt.<FIELD refname="Microsoft.VSTS.Common.ResolvedDate" /> <SERVERDEFAULT from="clock" /> </FIELD >
Startdatum- und Enddatum-Werte werden berechnet, wenn Sie einen Projektplan in Project erstellen und dann diesen Plan mit Aufgaben synchronisieren, die in Azure Boards gespeichert sind. Diese Felder erscheinen zwar nicht auf dem Arbeitselement-Formular, werden aber für die Rückstände und Aufgaben, die mit Rückständen verknüpft sind, berechnet. Sie können ihre schreibgeschützten Werte in den Ergebnissen einer Abfrage oder in Excel anzeigen.
Wichtig
Microsoft Project Integration und der Befehl
TFSFieldMapping
werden nicht unterstützt für:- Visual Studio 2019 und Azure DevOps Office-Integration 2019.
- Azure DevOps Server 2019 und höher, einschließlich Azure DevOps Services.
Die volle Unterstützung für die Integration von Microsoft Excel wird beibehalten und erlaubt den Massenimport und die Aktualisierung von Arbeitsaufgaben. Alternativen zur Verwendung von Microsoft Project sind:
- Lieferpläne
- Marketplace-Erweiterungen wie Project Connect oder GANTT-Diagramm.
Verwandte Artikel
- Abfragen nach Zuweisung oder Workflowänderungen
- Definieren von Iterationspfaden (Sprints) und Konfigurieren von Teamiterationen
- Definieren einer Arbeitselementabfrage in Azure Boards
- Abfragefelder, Operatoren und Makros
- Arbeitselementfelder und -attribute
- WIQL-Syntax (Work Item Query Language)
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