Champs et attributs des éléments de travail dans Azure Boards

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Les champs des éléments de travail sont utilisés pour suivre des informations. Ils sont définis pour une organisation et partagés entre tous les projets de celle-ci. Deux outils permettent de passer en revue les champs créés pour l’organisation. Ils sont disponibles pour les modèles de processus XML hérités et hébergés.

Les champs des éléments de travail sont utilisés pour suivre des informations. Les champs sont définis pour une collection et partagés entre tous les projets de cette collection. Deux outils permettent de passer en revue les champs créés pour la collection.

Pour obtenir une description de chacun des champs définis avec un processus système, consultez Index des champs d’éléments de travail.

Prérequis

  • Pour afficher les champs d’une organisation ou d’une collection, vous devez être membre du groupe d’applications Utilisateurs valides de la collection de projets ou disposer de l’autorisation Afficher les informations de niveau instance définie sur Autoriser pour l’organisation ou la collection.

Recensement et passage en revue des champs

Pour recenser ou passer en revue les champs, vous pouvez utiliser l’un des outils suivants, en fonction de votre modèle de processus (héritage, XML hébergé ou XML local). Pour obtenir un index des champs définis dans les processus par défaut, consultez Index des champs d’éléments de travail.

Outil Héritage XML hébergé XML local
Portail web : Recensement des champs hérités et définis sur mesure ✔️ ✔️1
Explorateur de champs des éléments de travail ✔️ ✔️ ✔️
Outil en ligne de commande witadmin listfields ✔️ ✔️ ✔️

Notes

  1. Pris en charge uniquement pour les processus par défaut (Agile, CMMI et Scrum).

Types de données et noms des champs

Chaque type d’élément de travail spécifie les champs définis pour les éléments de travail qui y font référence. Un champ est associé à un certain nombre d’attributs, dont la plupart sont fixés par le système et ne sont pas modifiables.

Chaque champ est défini par les trois attributs suivants.

Pour obtenir une description de chaque attribut de champ et savoir comment les recenser, consultez Attributs de champ et Recensement des attributs de champ plus loin dans cet article. Pour une vue d’ensemble des types d’éléments de travail et des éléments de travail, consultez Suivi du travail avec des récits utilisateur, problèmes, bogues, fonctionnalités et epics.

Définition et contexte d’utilisation des champs

Chaque type d’élément de travail est associé à 31 champs système ainsi qu’à d’autres champs qui lui sont propres. Les éléments de travail permettent de planifier et de suivre un projet.

Chaque champ prend en charge le suivi d’une information sur le travail à effectuer. Les valeurs affectées à un champ sont stockées dans le magasin de données de suivi du travail, dont vous pouvez déterminer l’état et les tendances à l’aide de requêtes.

Pour obtenir la description et connaître le contexte d’utilisation de chaque champ défini dans les grands processus système (Agile, De base, Scrum et CMMI), consultez Index des champs d’éléments de travail.

Noms de champs

Un nom de champ d'élément de travail identifie uniquement chaque champ d'élément de travail. Assurez-vous que le nom de vos champs respecte les règles suivantes :

  • Il doit être unique dans la collection de comptes ou de projets.
  • Il doit comporter 128 caractères Unicode maximum.
  • Il ne doit pas contenir ni espaces de début et de fin, ni espaces consécutifs.
  • Il doit contenir au moins un caractère alphabétique.
  • Il ne doit pas contenir les caractères suivants : .,;'`:~\/\*|?"&%$!+=()[]{}<>.

Étant donné que les champs personnalisés sont définis pour une organisation ou une collection, il n’est pas possible d’ajouter à un processus un champ personnalisé portant le même nom qu’un champ ajouté à un autre processus.

Pour plus d’informations, consultez Restrictions de nommage et conventions d’affectation de noms.

Champs système et prédéfinis

Le nom de référence de tous les champs système définis commence par System (par exemple System.AreaPath et System.AssignedTo).

Les champs prédéfinis par le processus par défaut commencent par Microsoft.VSTS et se distinguent ensuite selon leur utilisation. Voici des exemples de champs prédéfinis utilisés communément, à des fins de planification et d’intégration à Office Project, d’intégration à Team Foundation Build et d’intégration à la gestion des cas de test :

  • Microsoft.VSTS.Common.Priority
  • Microsoft.VSTS.Scheduling.DueDate
  • Microsoft.VSTS.Build.FoundIn
  • Microsoft.VSTS.TCM.Steps

Pour obtenir une vue d’ensemble de tous les champs système et prédéfinis des processus et modèles de processus par défaut, consultez Index des champs d’éléments de travail. Pour plus d’informations sur la spécification des noms de champs, consultez Restrictions de nommage.

Champs personnalisés

Étant donné que les champs personnalisés sont définis pour une organisation ou une collection de projets, il n’est pas possible d’ajouter à un processus un champ personnalisé portant le même nom qu’un champ ajouté à un autre processus.

Lorsque vous ajoutez des champs personnalisés, tenez compte des limites suivantes :

  • 64 champs maximum peuvent être définis pour chaque type d’élément de travail.
  • 512 champs maximum peuvent être définis pour chaque processus.

Le type de données d’un champ définit le genre et la taille des données qui peuvent y être stockées. Un champ ne doit présenter qu’un seul type défini dans une collection de projets. Cette restriction favorise l'utilisation par les organisations de champs communs aux projets et aux types d'élément de travail.

Lorsqu’un champ personnalisé est ajouté à un processus hérité, Azure DevOps affecte un nom de référence qui commence par Custom, suivi du nom du champ sans les espaces. Si, par exemple, vous ajoutez un champ nommé DevOps Triage, le nom de référence est Custom.DevOpsTriage. Aucun espace n’est autorisé dans le nom de référence.

Identification du type de données du champ

Pour afficher le type de données des champs définis dans votre organisation, ouvrez la page Processus > Champs.

Capture d’écran de la page Paramètres de l’organisation > Processus > Champs.

Si votre collection de projets applique le modèle de processus d’héritage pour personnaliser le suivi du travail, vous pouvez afficher le type de données des champs en ouvrant la page Processus > Champs.

Capture d’écran de la page Paramètres de la collection > Processus > Champs.

Si vous suivez le modèle de processus XML local, vous pouvez rechercher le type de données à partir de l’index des champs d’éléments de travail. Il est également possible d’ouvrir l’Explorateur de champs des éléments de travail pour passer en revue les champs définis et leurs affectations d’attributs, ou d’utiliser la commande witadmin listfields pour recenser les attributs de champ. Pour plus d’informations, consultez Explorateur de champs des éléments de travail et Attributs de champ de liste plus loin dans cet article.

Page web Processus > Champs

Pour passer en revue la liste des champs définis pour une organisation ou un regroupement, ouvrez Paramètres de l’organisation > Processus > Champs.

  1. Sélectionnez le logo Azure DevOps pour ouvrir Projets. Choisissez ensuite Paramètres de l’organisation.

    Capture d’écran de la sélection de Paramètres de l’organisation.

  2. Ensuite, choisissez Processus.

    Capture d’écran de la sélection de Processus.

    Notes

    Si Processus ne s’affiche pas, cela signifie que vous travaillez dans la version 2018 ou une version antérieure de TFS. La page Processus n’est pas prise en charge. Vous devez utiliser les fonctionnalités compatibles avec le modèle de processus XML local.

  3. Ensuite, choisissez Champs.

    Les champs recensés correspondent à tous les champs définis pour l’organisation ou la collection. Sont inclus tous les champs personnalisés et tous les champs définis pour les processus système.

    Capture d’écran de Créer une copie d’un processus hérité sélectionné.

    Notes

    Si Champs ne s’affiche pas, cela signifie que votre collection suit le processus XML local. La page Champs n’est pas prise en charge pour ce processus.

    Pour obtenir la description et connaître le contexte d’utilisation de chaque champ, ainsi que son nom de référence, vous pouvez le rechercher à partir de l’index des champs d’éléments de travail. Il est également possible de récupérer le nom de référence des champs avec l’API REST Types d’éléments de travail – Liste.

Explorateur de champ d'élément de travail

Pour rechercher les affectations de ces champs, vous pouvez utiliser l’outil Explorateur de champs des éléments de travail.

Capture d’écran de l’Explorateur de champs des éléments de travail.

Pour accéder à l’Explorateur de champs des éléments de travail, vous devez installer l’outil Éditeur de processus. En fonction de la version de Visual Studio que vous avez installée, utilisez l’une des extensions suivantes pour obtenir l’outil Éditeur de processus.

  • Visual Studio 2019 &2022 : À l’heure actuelle, aucune extension d’éditeur de modèle de processus spécifique n’est disponible. Toutefois, vous pouvez toujours personnaliser des modèles de processus à l’aide d’autres outils tels que n’importe quel éditeur de texte ou éditeur XML. Vous pouvez également utiliser le portail web Azure DevOps pour certaines personnalisations, en particulier pour les processus hérités.
  • Visual Studio 2017 :Éditeur de modèle de processus TFS. Vous pouvez également utiliser cette version de l’éditeur de processus pour modifier les formulaires d’éléments de travail de l’ancien style. Elle ne permet en revanche pas de modifier les formulaires associés aux nouveaux formulaires web.
  • Visual Studio 2015 :TFS Power Tools.

Attributs de champ

Il existe pour chaque champ d’élément de travail de nombreux attributs masqués et non modifiables. Le tableau suivant décrit chaque attribut. Les attributs portent des noms différents selon qu’ils sont obtenus avec l’API RESTChamps – Obtenir ou affichés avec l’outil Explorateur de champs des éléments de travail (WIFE).

Les attributs affectés à un champ dépendent de la plateforme et de la version utilisées. Par exemple, certains ne sont pas pris en charge avec le processus d’héritage. Pour rechercher le nom de référence d’un champ, consultez Index des champs d’éléments de travail.

Attribut

Type d'attribut

Description


REST :
WIFE : AllowedValues

collection

Récupère la collection des valeurs valides d’un champ qui contient des valeurs de liste déroulante. Vous pouvez modifier cela en spécifiant une liste déroulante ou une liste globale (locale).
Modifiable = oui.

REST : canSortBy
WIFE : CanSortBy

boolean

Indique si ce champ peut être utilisé pour trier les résultats de la requête.
Modifiable = non.

REST : description
WIFE : HelpText

string

Description du champ, qui définit également le texte d’aide affiché lorsque l’on pointe sur le champ dans le formulaire d’élément de travail.
Modifiable = oui.

REST :
WIFE : ID

Integer

ID interne du champ.
Modifiable = non.

REST :
WIFE : IsCloneable

boolean

Indique si la valeur définie pour le champ est copiée lorsque l’utilisateur choisit de copier un élément de travail. Par exemple, les champs Titre, Étiquettes et Description sont copiés, mais pas les champs ID ni Historique.
Modifiable = non.

REST :
WIFE : IsComputed

boolean

Indique si la valeur définie par ce champ est calculée par le système (True) ou non (False). Parmi les champs calculés figurent ceux qui sont définis par le système, par exemple ID, Date de révision, Date de modification et Nombre de liens externes.
Modifiable = non.

REST :
WIFE : IsCoreField

boolean

Indique si ce champ est spécifié pour tous les types d’éléments de travail.
Modifiable = non.

REST :
WIFE : IsEditable

boolean

Indique si les utilisateurs peuvent modifier ce champ (True) ou non (False). Parmi les champs non modifiables figurent ceux qui sont définis par le définis par le système, notamment ID, Révision, Créé par et Modifié par.
Modifiable = non.

REST : isIdentity
WIFE : IsIdentity

boolean

Indique si ce champ constitue un champ d’identité. Les champs d’identité consistent en des champs de type chaîne utilisés pour stocker les identités utilisateur.
Modifiable = non.

REST :
WIFE : IsIndexed1

boolean

Indique si ce champ est indexé pour prendre en charge la recherche.
Modifiable = non.

REST :
WIFE : IsLongText

boolean

Indique que le champ peut contenir plus de 255 caractères, par exemple les champs affectés à un type de données Texte brut, HTML ou Historique.
Modifiable = non.

REST : isPicklist2 WIFE :

boolean

Indique si le champ est associé à une liste déroulante. La valeur est True lorsqu’un champ personnalisé est défini pour Azure DevOps et que le type sélectionné est Picklist (chaîne) ou Picklist (entier). Elle est égale à False pour les champs hérités qui spécifient des listes déroulantes.
Modifiable = non.

REST : isPicklistSuggested2 WIFE :

boolean

Indique si le champ permet aux utilisateurs d’entrer leurs propres valeurs pour une liste déroulante. La valeur est True lorsqu’un champ personnalisé est défini pour Azure DevOps, que le type Picklist (chaîne) ou Picklist (entier) est sélectionné et que la case Autoriser les utilisateurs à définir leurs propres valeurs est cochée.
Modifiable = oui.

REST : isQueryable
WIFE : IsQueryable

boolean

Indique si le champ figure dans l’ensemble de champs que vous pouvez ajouter pour filtrer une requête d’élément de travail (True) ou non (False). La plupart des champs peuvent être interrogés.
Modifiable = non.

REST :
WIFE : IsReportable 3

boolean

Indique si l’attribut compatible avec les rapports est défini ou réglé sur une valeur autre que None. Cet attribut est modifiable pour les environnements locaux.
Modifiable = oui.

REST :
WIFE : IsUsedInGlobalWorkflow

boolean

Indique si le champ est défini dans un workflow global.
Modifiable = non.

REST :
WIFE : IsUserNameField

boolean

Indique si le champ est utilisé pour afficher un champ d’identité.
Modifiable = non.

REST : name
WIFE : Name

string

Nom convivial attribué au champ. Il n’est pas modifiable pour Azure DevOps, mais il peut être changé en local à l’aide de la commande witadmin changefield.
Modifiable = en local uniquement.

REST : picklistId
WIFE : HelpText

GUID

Identificateur de la liste déroulante si le champ en est une, Null sinon. Une valeur GUID unique est affectée lorsqu’un champ personnalisé est défini pour Azure DevOps et que le type sélectionné est Picklist (chaîne) ou Picklist (entier).
Modifiable = non.

REST :
WIFE : ProhibitedValues

collection

Collection des valeurs interdites d’un champ qui les spécifie. Seuls les déploiements locaux permettent de définir des valeurs interdites.
Modifiable = en local uniquement.

REST : readOnly
WIFE :

boolean

Indique si le champ est défini sur lecture seule. Pour Azure DevOps Services, seuls les champs personnalisés peuvent être mis en lecture seule. Les champs système ne sont pas modifiables.
Modifiable = oui.

REST : referenceName
WIFE : ReferenceName

string

Nom de référence d’un champ.
Modifiable = non.

REST :
WIFE : ReportingAttributes3

Détail, Dimension ou Mesure, selon que vous souhaitez ou non inclure le champ dans les rapports et, le cas échéant, de quelle manière. Les données des champs dont cet attribut possède une valeur autre que None sont exportées vers l’entrepôt de données et peuvent être incluses dans les rapports SQL.
Modifiable = en local uniquement.

REST :
WIFE : ReportingName3

string

Étiquette d’un champ lorsque les données s’affichent dans des rapports SQL. Si aucune valeur n’est spécifiée, le nom convivial du champ est utilisé.
Modifiable = en local uniquement.

REST :
WIFE : ReportingReferenceName3

string

Autre nom de référence d’un champ qui est utilisé lorsque les données sont exportées vers l’entrepôt de données relationnel. Si aucune valeur n’est spécifiée, le nom de référence du champ est utilisé.
Modifiable = en local uniquement.

REST : supportedOperations
WIFE :

set

Ensemble d’opérateurs de requête valides qui peuvent être utilisés en référence à ce champ. Pour obtenir de brèves informations de référence sur les opérations prises en charge en fonction du type de données, consultez Brèves informations de référence sur les requêtes et Opérateurs et macros pris en charge pour chaque type de données.
Modifiable = non.

REST :
WIFE : SupportsTextQuery

boolean

Indique si le champ prend en charge les requêtes textuelles telles que Contient les mots et Ne contient pas les mots.
Modifiable = non.

REST :
WIFE : SystemType

string

Type de données du champ, faisant référence au nom du système tel que System.DateTime ou System.String.
Modifiable = non.

REST : type
WIFE : FieldType

string

Type de données du champ, par exemple Booléen, DateHeure, Entier ou Chaîne. Pour en obtenir la liste complète et une description, consultez Champs, opérateurs et macros de requête.
Modifiable = non.

REST : usage
WIFE : Usage

string

Spécifie si le champ est destiné à être utilisé avec des objets d’éléments de travail (WorkItem) ou des objets de lien d’élément de travail (WorkItemLink). L’usage de la plupart des champs est WorkItem. Pour obtenir la liste complète des valeurs d’utilisation, consultez Récupération de champs et FieldUsage.
Modifiable = non.

Notes

  1. Dans le cas de déploiements locaux, il est possible d’activer l’indexation d’un champ pour améliorer le temps de réponse des requêtes lors du filtrage sur ce champ. Pour plus d’informations, consultez Champs indexés plus loin dans cet article.
  2. Les attributs isPicklist et isPicklistSuggested ne sont affectés qu’aux champs personnalisés définis pour un processus hérité. Le modèle de processus hérité est pris en charge pour Azure DevOps Server 2019 (et versions ultérieures). Pour plus d’informations, consultez Modèle de processus hérité.
  3. Les attributs de création de rapports ne sont valides que pour les déploiements locaux dont les projets ont été configurés de façon à prendre en charge SQL Server Reporting et SQL Server Analysis Services.

Attributs signalables

Les attributs de création de rapports ne sont valides que pour les déploiements locaux dont les projets ont été configurés de façon à prendre en charge SQL Server Reporting et SQL Server Analysis Services. Pour plus d’informations, consultez Ajouter des rapports à un projet.

Pour obtenir une description de chaque attribut compatible avec les rapports, consultez [Ajout et modification des champs des éléments de travail pour prendre en charge la création de rapports](/previous-versions/azure/devops/reference/xml/add-or-modify-work-item-fields-to-support-reporting).

Pour obtenir la liste des champs qui possèdent des attributs compatibles avec les rapports définis par défaut, consultez Informations de référence sur les champs compatibles avec les rapports.

Champs indexés

Pour activer ou désactiver l’indexation d’un champ d’élément de travail, utilisez la commande witadmin indexfield. Lorsque vous activez l'indexation pour un champ, vous pouvez augmenter les performances de recherche des éléments de travail dont les requêtes spécifient le champ concerné. Par défaut, les champs suivants sont indexés : Assigné à, Date de création, Modifié par, État, Raison, ID de zone, ID d'itération et Type d'élément de travail.

Si vous ajoutez un champ personnalisé que vous utilisez dans un bon nombre de vos requêtes d'élément de travail, vous pouvez activer l'indexation pour ce champ. Pour plus d’informations, consultez Gestion des champs des éléments de travail (witadmin).

Recensement des attributs de champ

Pour recenser les attributs affectés à un champ, utilisez l’API REST Champs – Obtenir. Entrez le nom de votre organisation à la place de OrganizationName.

https://dev.azure.com/OrganizationName/_apis/wit/fields/FieldReferenceName

Par exemple, figurent ici les attributs du chemin d’itération, en spécifiant le nom de référence (System.IterationPath) pour l’organisation Fabrikam.

https://dev.azure.com/fabrikam/_apis/wit/fields/System.IterationPath

Données renvoyées :

{
"name": "Iteration Path",
"referenceName": "System.IterationPath",
"description": "The iteration within which this bug will be fixed",
"type": "treePath",
"usage": "workItem",
"readOnly": false,
"canSortBy": true,
"isQueryable": true,
"supportedOperations": [
{
"referenceName": "SupportedOperations.Under",
"name": "Under"
},
{
"referenceName": "SupportedOperations.NotUnder",
"name": "Not Under"
},
{
"referenceName": "SupportedOperations.Equals",
"name": "="
},
{
"referenceName": "SupportedOperations.NotEquals",
"name": "<>"
},
{
"referenceName": "SupportedOperations.In",
"name": "In"
},
{
"name": "Not In"
}
],
"isIdentity": false,
"isPicklist": false,
"isPicklistSuggested": false,
"url": "https://dev.azure.com/mseng/_apis/wit/fields/System.IterationPath"
}

Pour recenser les attributs affectés à un champ, utilisez l’API REST Champs – Obtenir. Entrez le nom de votre organisation à la place de OrganizationName. Pour commencer à utiliser REST, consultez Informations de référence sur l’API REST Azure DevOps Services.

https://{ServerName:Port}/tfs/{Collection}/_apis/wit/fields/FieldReferenceName?api-version={version}

Par exemple, figurent ici les attributs du chemin d’itération, en spécifiant le nom de référence (System.IterationPath) pour le serveur Fabrikam.

https://fabrikam:8080/tfs/DefaultCollection/_apis/wit/fields/System.IterationPath?api-version=4.1

Données renvoyées :

{
"name": "Iteration Path",
"referenceName": "System.IterationPath",
"description": "The iteration within which this bug will be fixed",
"type": "treePath",
"usage": "workItem",
"readOnly": false,
"canSortBy": true,
"isQueryable": true,
"supportedOperations": [
{
"referenceName": "SupportedOperations.Under",
"name": "Under"
},
{
"referenceName": "SupportedOperations.NotUnder",
"name": "Not Under"
},
{
"referenceName": "SupportedOperations.Equals",
"name": "="
},
{
"referenceName": "SupportedOperations.NotEquals",
"name": "<>"
},
{
"referenceName": "SupportedOperations.In",
"name": "In"
},
{
"name": "Not In"
}
],
"isIdentity": false,
"isPicklist": false,
"isPicklistSuggested": false,
"url": "https://fabrikam:8080/tfs/DefaultCollection/_apis/wit/fields/System.IterationPath?api-version=4.1"
}

Recensement des attributs à l’aide de l’outil en ligne de commande witadmin

Pour recenser les attributs de champ sélectionnés (notamment le type de données, les attributs compatibles avec les rapports et l’indexation), utilisez la commande witadmin listfields.

Par exemple, vous pouvez entrer la commande suivante afin de recenser les attributs définis pour un champ spécifié, par exemple Microsoft.VSTS.Common.Issue.

witadmin listfields /collection:http://fabrikam:8080/tfs/DefaultCollection /n:Microsoft.VSTS.Common.Issue  

Des informations sur les champs et les attributs apparaissent pour le champ nommé, comme le montre l'exemple suivant.

Field: Microsoft.VSTS.Common.Issue  
Name: Issue  
Type: String  
Reportable As: dimension  
Use: Adventure Works (Shared Steps), AW Future (Shared Steps), AW Current (Shared Steps)  
Indexed: False  

Le paramètre Use indique le nom de chaque projet et le type d’élément de travail dans lequel le champ est utilisé.

Ajout et modification des champs

Pour ajouter des champs à un processus, vous les associez à un ou plusieurs types d’éléments de travail. Pour plus d’informations, consultez Personnaliser un processus d’héritage.

Vous pouvez ajouter ou modifier les champs contenus dans un type d’élément de travail ou insérer un type d’élément de travail personnalisé. Pour plus d’informations, consultez l’article suivant :

Vous pouvez modifier le nom, l’index et les attributs de rapport de n’importe quel champ (à l’exception des champs système) en utilisant l’outil en ligne de commande witadmin. Pour plus d’informations, consultez Gestion des champs des éléments de travail (witadmin).