Requête par date ou itération actuelle dans Azure Boards
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Dans cet article, découvrez comment répertorier les éléments de travail en fonction de leur date de création, de clôture, de résolution ou de modification. Vous pouvez spécifier une date ou utiliser une macro prise en charge. Utilisez la macro @Today
et spécifiez un nombre de jours plus ou moins pour les dates relatives. Pour les requêtes qui répertorient les éléments de travail en fonction de leur affectation au sprint actuel d’une équipe, utilisez @CurrentIteration
.
Vous pouvez, par exemple, rechercher les éléments de travail qui ont été modifiés au cours des trois derniers jours à l’aide de la requête suivante.
En outre, vous pouvez utiliser la macro CurrentIteration +/- _n_
pour créer des requêtes basées sur une fenêtre glissante d’itérations d’équipe.
Opérateurs et macros pris en charge
Les clauses de requête qui spécifient un champ DateHeure ou le champ Chemin de l’itération peuvent utiliser les opérateurs et les macros répertoriés dans le tableau suivant.
Type de données
Opérateurs et macros pris en charge
Date/Heure
= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], In, Not In, Was Ever
Macros : @StartOfDay
, @StartOfWeek
, @StartOfMonth
, @StartOfYear
et @Today
.
Vous pouvez utiliser +/- _n_
avec chacune des macros prises en charge.
TreePath
=, Sous <>, Pas sous
Macros : @CurrentIteration
1 et @CurrentIteration +/- n
2 valables avec le champ Chemin d’itération.
Remarques :
- Les macros
@StartOfDay
,@StartOfWeek
,@StartOfMonth
et@StartOfYear
sont prises en charge pour Azure DevOps Server 2019.1 et les versions ultérieures. Elles ne sont prises en charge que lorsqu’elles sont exécutées depuis le portail web. - La macro
@CurrentIteration +/- n
est prise en charge pour Azure DevOps Server 2019 et les versions ultérieures. Elle est uniquement prise en charge lorsqu’elle est exécutée depuis le portail web.
Conseil
L’opérateur WasEver
peut être utilisé avec le champ Chemin d’itération , mais uniquement lorsqu’il est défini par le biais de la syntaxe WIQL. Pour obtenir un exemple, consultez Référence de la syntaxe WIQL (Work Item Query Language).
Modèle de date et d’heure
Le modèle de date et d’heure que vous entrez pour les champs DateTime doit correspondre à celui que vous sélectionnez dans votre profil. Pour afficher ou modifier votre sélection, consultez Définir les préférences utilisateur.
Restrictions du client sur l’utilisation des macros @CurrentIteration
Vous pouvez utiliser la macro @CurrentIteration
dans une requête à partir des clients suivants :
- Portail web qui se connecte à Azure Boards
- Visual Studio 2019 ou versions ultérieures connectées à Azure Boards
- L’API REST
Vous pouvez utiliser la macro @CurrentIteration +/- n
dans une requête sur Azure Boards, Azure DevOps Server 2019 et versions ultérieures et avec une API REST qui inclut l’équipe en tant que paramètre. par exemple @CurrentIteration('[Project]\Team')
.
Une erreur se produit si vous ouvrez une requête qui contient la macro @CurrentIteration
dans les versions antérieures de Visual Studio ou à partir de Microsoft Excel ou de Microsoft Project. Vous ne pouvez pas utiliser la macro lors de la copie ou du clonage de suites de tests et de cas de test, de la définition d’alertes ou avec des API REST.
Requêtes basées sur la date
Filtrez les éléments de travail en fonction de la date à laquelle ils ont été modifiés ou sur une période spécifique. Limitez la portée de votre requête. Cette approche peut aider à améliorer les performances en ne renvoyant que les résultats correspondant à la plage de dates incluse. Si vous êtes novice dans la création de requêtes, consultez Définir une requête d’élément de travail.
Tous les champs ne sont pas valides pour tous les types d’éléments de travail. Accédez aux champs de date pour l’ensemble de champs que vous pouvez inclure dans les requêtes et les types d’éléments de travail auxquels ils s’appliquent.
Conseil
- Souvenez-vous d’entrer des dates dans le champ Modèle de date que vous définissez pour votre profil personnel.
- Pour comprendre comment les clauses
AND/OR
sont groupées, consultez Regrouper des clauses. Pour afficher la syntaxe WIQL d’une requête, installez l’extension de l’éditeur WIQL, qui vous permettra de voir la version WIQL de n’importe quelle entrée d’Éditeur de requête.
Filtrer sur
Inclure ces clauses de requête
Éléments créés au cours des 30 derniers jours.
Éléments modifiés à une date précise.
Éléments résolus aujourd’hui.
Éléments fermés au cours d’une période spécifiée.
Éléments qui ne sont pas fermés. La date de fermeture est nulle.
Éléments dont l’état a été mis à jour au cours de la semaine dernière.
Éléments fermés pendant le sprint actuel. La macro <xref href="CurrentIteration" data-throw-if-not-resolved="False" data-raw-source="@CurrentIteration"></xref>
fait référence au sprint défini pour le contexte de l’équipe actuelle.
Créer des requêtes basées sur des dates de début de jour, de semaine, de mois ou d’année
Les exemples suivants montrent comment utiliser les macros StartOf...
pour filtrer les éléments de travail avec différents décalages. Pour plus d’informations, consultez Syntaxe du langage WIQL (Work Item Query Language).
Remarque
Nécessite Azure DevOps Server 2019 Mise à jour 1 ou version ultérieure.
Filtrer sur
Inclure ces clauses de requête
Bogues fermés au cours des deux dernières semaines.
Éléments modifiés au cours des 10 derniers jours.
Fonctionnalités prévues pour être terminées dans les trois prochains mois.
Tous les champs ne sont pas valides pour tous les types d’éléments de travail. Accédez aux champs de date pour l’ensemble de champs que vous pouvez inclure dans les requêtes et les types d’éléments de travail auxquels ils s’appliquent.
Créer des requêtes pour l’itération actuelle de votre équipe
Si votre équipe suit les processus Scrum, vous planifiez l’exécution du travail dans les sprints. Vous pouvez suivre la progression des exigences, des bogues et d’autres tâches à terminer dans le sprint actuel à l’aide de la macro @CurrentIteration
. Pour plus d’informations, consultez Gérer les calendriers de sprints.
La requête trouve tout élément assigné à un sprint qui correspond au chemin d’itération actuel de l’équipe. Par exemple, si une équipe se trouve sur Sprint 5, la requête retourne les éléments affectés au Sprint 5. Plus tard, lorsque l’équipe travaille dans Sprint 6, la même requête retourne les éléments affectés au Sprint 6.
Remarque
Pour que la macro @CurrentIteration
fonctionne, l’équipe doit avoir sélectionné un chemin d’itération dont la plage de dates englobe la date actuelle. Pour plus d’informations, consultez Sélectionner les sprints d’équipe et définir le chemin d’itération par défaut. En outre, les requêtes qui contiennent cette macro sont valides uniquement lorsqu’elles sont exécutées à partir du portail web.
Consultez également Client restrictions on the use of the @CurrentIteration macros plus haut dans cet article.
Azure Boards ajoute un paramètre d’équipe lorsque vous sélectionnez les macros @CurrentIteration ou @CurrentIteration +/- n. Le paramètre de l’équipe est dérivé de votre contexte d’équipe actuel.
Conseil
Si la macro @CurrentIteration
ne fonctionne pas, vérifiez que l’itération attendue est sélectionnée pour votre équipe et que des dates ont été définies pour celle-ci. Pour plus d’informations, consultez Sélectionner les sprints d’équipe.
Pour modifier le paramètre d’équipe que le système définit automatiquement, choisissez-le en entrant le nom de l’équipe dans le champ de paramètre ajouté sous la macro @CurrentIteration.
Créer une fenêtre glissante de la requête d’itérations de votre équipe
Utilisez la macro @CurrentIteration +/- n
pour suivre le travail planifié par une équipe pour les sprints à venir et pour comprendre le travail qui n’a pas été réalisé dans les sprints précédents.
Remarque
Pour que la macro @CurrentIteration +/- n
fonctionne, l’équipe doit avoir sélectionné des chemins d’itération qui répondent aux critères +/- n
. Les plages de dates doivent englober la date actuelle de @CurrentIteration
. Pour plus d’informations sur la sélection des chemins d’itération par l’équipe, consultez Sélectionner les sprints d’équipe et définir le chemin d’itération par défaut.
Consultez également Client restrictions on the use of the @CurrentIteration macros plus haut dans cet article.
L’image suivante montre comment lister tous les types d’éléments de travail User Story et Bug qui sont assignés à la fenêtre glissante. La fenêtre couvre les deux derniers, l’actuel et les deux prochains sprints sélectionnés pour l’équipe Cloud Admin et Tools.
Pour utiliser cette macro, l’équipe spécifiée doit sélectionner un ensemble de sprints couvrant la valeur +/- n
saisie pour la macro.
Répertorier des éléments de travail déplacés hors du sprint
Répertoriez les éléments de travail qui ont été définis pour un sprint, mais qui ont ensuite été déplacés en utilisant une requête dont une clause contient l’opérateur Was Ever
pour le champ Chemin de l’itération. Vous pouvez uniquement construire cette requête en utilisant la syntaxe WIQL. Modifiez la syntaxe WIQL dans l’Éditeur de requête en installant l’extension de la Place de marché de l’éditeur WIQL.
Par exemple, les requêtes syntaxiques suivantes pour les éléments de travail répondent aux critères suivants :
- Défini dans le projet actuel.
- Le type d’élément de travail est Récit utilisateur ou Bogue
- Les éléments de travail se trouvent sous le chemin de zone de l’équipe Fabrikam Fiber Web.
- Les éléments de travail ne sont pas dans un état
Closed
,Completed
,Cut
ouResolved
. - Pas dans le chemin d’itération actuel pour l’équipe Fabrikam Fiber Web.
- Ont été affectés au chemin d’itération actuel pour l’équipe Fabrikam Fiber Web
- Sont à présent affectés à l’itération actuelle +1 pour l’équipe Fabrikam Fiber Web.
- Ont été modifiés au cours des 30 derniers jours (la durée du sprint).
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]
L’affichage Éditeur de requête de la syntaxe s’affiche comme indiqué.
Remarque
L’Éditeur de requête affiche une icône d’informations en regard de l’opérateur Was Ever
, indiquant un problème avec la clause. Toutefois, la requête s'exécute toujours et vous pouvez créer des graphiques de requête. Pour modifier la requête, vous devez utiliser l’éditeur WIQL.
Répertorier les éléments de travail ajoutés à un sprint après la date de début
Pour répertorier les éléments de travail nouvellement créés ajoutés à un sprint après sa date de début, utilisez une requête similaire à celle présentée dans l’image suivante. Cette requête fonctionne en filtrant les éléments de travail affectés au sprint actuel, mais créés après le début de la date de sprint. Utilisez la clause created Date = @Today - 28
.
Pour d’autres options pour interroger les changements de portée des sprints, consultez Changement de portée de sprint.
Champs Date et Chemin d’itération
Utilisez les champs de date pour filtrer vos requêtes. Plusieurs de ces champs sont renseignés dès qu’un élément de travail change d’état. Plusieurs de ces champs n’apparaissent pas dans le formulaire d’élément de travail, mais ils sont suivis pour les types d’éléments de travail répertoriés dans le tableau suivant.
Nom de champ
Description
Types d’éléments de travail
Date d’activation (Notes 1 et 2)
Date et heure auxquelles l’élément de travail a été créé ou auxquelles son état a été passé de Closed
, Completed
ou Done
à New
ou Active
.
Reference name=Microsoft.VSTS.Common.ActivatedDate, Data type=DateTime
Bogue, Demande de modification, Épopée, Fonctionnalité, Problème, Élément de backlog de produit, Exigence, Révision, Risque, Étape partagée, Tâche, Cas de test, Récit utilisateur
Date de modification
Date et heure auxquelles un élément de travail a été modifié.
Nom de référence=System.ChangedDate, Type de données=DateTime
Tous
Date de fermeture (Note 2)
Date et heure auxquelles un élément de travail a été fermé.
Nom de référence=Microsoft.VSTS.Common.ClosedDate, Type de données=DateTime
Tous
Date de création
Date et heure auxquelles un élément de travail a été créé.
Nom de référence=System.CreatedDate, Type de données=DateTime
Tous
Due Date
Date d'échéance prévue pour un problème à résoudre.
Reference name=Microsoft.VSTS.Scheduling.DueDate, Data type=DateTime
Problème (Agile)
Date de fin (Remarque 3)
Date et heure auxquelles la planification indique que la tâche est terminée.
Reference name=Microsoft.VSTS.Scheduling.FinishDate, Data type=DateTime
Exigence, Tâche, Plan de test, Récit utilisateur
Chemin de l’itération
Groupe des éléments de travail par durées ou périodes de sprint nommées. L'itération doit être un nœud valide dans la hiérarchie de projet. Vous définissez des chemins d’itération pour un projet et sélectionnez des chemins d’itération pour une équipe.
Reference name=System.IterationPath, Data type=TreePath
Tous
Date résolue (Notes 1 et 2)
Date et heure auxquelles l’élément de travail a été passé à l’état Resolved
.
Reference name=Microsoft.VSTS.Common.ResolvedDate, Data type=DateTime
Bogue, Demande de modification, Épopée, Fonctionnalité, Problème, Élément de backlog de produit, Exigence, Révision, Risque, Étape partagée, Tâche, Cas de test, Récit utilisateur
Date de début (Remarque 3)
Date et heure auxquelles la planification indique que la tâche commence.
Remarque
Plans de livraison utilise les champs Date de début et Date cible pour afficher l’étendue des fonctionnalités, des épopées et d’autres éléments du backlog du portefeuille.
Reference name=Microsoft.VSTS.Scheduling.StartDate, Data type=DateTime
Épopée, Fonctionnalité, Exigence, Tâche, Plan de test, Récit utilisateur
Date de modification d'état
Date et heure de modification de la valeur du champ État .
Nom de référence=Microsoft.VSTS.Common.StateChangeDate, Type de données=DateTime
Tous
Date limite
Date à laquelle une fonctionnalité, un élément de travail ou un problème doit être terminé ou résolu.
Remarque
Plans de livraison utilise les champs Date de début et Date cible pour afficher l’étendue des fonctionnalités, des épopées et d’autres éléments du backlog du portefeuille.
Reference name=Microsoft.VSTS.Scheduling.TargetDate, Data type=DateTime
Épopée, Fonctionnalité
Remarques :
Voir aussi Requête par assignation ou changements de flux de travail.
Pour que ces champs soient définis pour un type d’élément de travail, ils doivent être inclus dans la section
WORKFLOW
de la définition du type d’élément de travail. Par exemple, cette syntaxe est incluse dans la définitionFIELDS
lors de la transition vers un étatResolved
.<FIELD refname="Microsoft.VSTS.Common.ResolvedDate" /> <SERVERDEFAULT from="clock" /> </FIELD >
Les valeurs des champs Date de début et Date de fin sont calculées si vous créez un plan de projet dans Project, puis synchronisez ce plan avec les tâches stockées dans Azure Boards. Ces champs n’apparaissent pas sur le formulaire d’élément de travail, mais ils sont calculés pour les tâches et les éléments de backlog qui sont liés aux éléments de backlog. Vous pouvez consulter leurs valeurs en lecture seule dans les résultats à partir d’une requête ou d’Excel.
Important
L’intégration de Microsoft Project et la commande
TFSFieldMapping
ne sont pas prises en charge pour :- Visual Studio 2019 et Azure DevOps Intégration Office 2019.
- Azure DevOps Server 2019 et versions ultérieures, y compris Azure DevOps Services.
La prise en charge complète de l'intégration de Microsoft Excel est maintenue, ce qui permet l'importation et la mise à jour en masse des éléments de travail. Les alternatives à l’utilisation de Microsoft Project sont les suivantes :
- Plans de livraison
- Extensions de la place de marché comme Project Connect ou le diagramme GANTT
Articles connexes
- Interroger par affectation ou modifications de workflow
- Définir les chemins de l’itération (sprint) et configurer les itérations d’équipe
- Définir une requête d’élément de travail dans Azure Boards
- Champs, opérateurs et macros de requête
- Champs et attributs d’élément de travail
- Syntaxe du langage de requête d’élément de travail (WIQL)
API REST
Pour interagir par programmation avec des requêtes, consultez l’une de ces ressources d’API REST :