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, Non-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 versions ultérieures et uniquement lorsqu’elles sont exécutées à partir du portail web. - La macro
@CurrentIteration +/- n
est prise en charge pour Azure DevOps Server 2019 et versions ultérieures, et uniquement lorsqu’elle est exécutée à partir du 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 en matière d’heure et de paramètres régionaux.
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. Pour améliorer les performances, limitez la portée de votre requête aux seuls résultats qui correspondent à la plage de dates que vous saisissez. Si vous débutez dans la création de requêtes, consultez Utiliser l’Éditeur de requête pour répertorier et gérer des requêtes.
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ée, consultez la section Grouper les clauses de la page Définir une requête d’élément de travail dans Azure Boards. 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 valeur de 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 d’équipe actuel)
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
.
Tout élément affecté à un sprint qui correspond au chemin d’itération actuel de l’équipe est trouvé. 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 Définir le chemin d'accès aux itérations (également appelées sprints) et Configurer les itérations de l'équipe. 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 les dates ont été définies pour celle-ci.
Pour modifier les paramètres d’équipe définis automatiquement par le système, choisissez-les en saisissant 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 +/- <i>n</i>
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 +/- <i>n</i>
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 Définir des chemins d’itération (sprint) et configurer des itérations d’équipe.
Consultez également Client restrictions on the use of the @CurrentIteration macros plus haut dans cet article.
L’image suivante montre comment répertorier tous les types d’éléments de travail Récit utilisateur et Bogue attribués à la fenêtre coulissante qui couvre les deux derniers sprints, le sprint actuel et les deux sprints suivants sélectionnés pour l’équipe Administrateur cloud et outils.
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. Cette requête ne peut être construite qu’avec 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 obtenir d’autres options d’interrogation des modifications apportées à l’étendue du sprint, consultez À propos des sprints, Scrum et gestion de projet, Modification de l’étendue du 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 :
Consultez également Interroger par affectation ou modifications de workflow, Champs Date et Identité.
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
- Créer des requêtes managées avec l’Éditeur de requête
- 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)
REST API
Pour interagir par programmation avec des requêtes, consultez l’une de ces ressources d’API REST :