Partager via


Définir et modifier les champs des éléments de travail

Vous utilisez les champs d'élément de travail pour assurer le suivi des données d'un type d'élément de travail, définir les critères de filtre des requêtes et créer des rapports. Tout élément de données, à l'exception des champs de données système de base dans Team Foundation Server (TFS), que vous souhaitez suivre, utiliser pour définir le flux de travail ou afficher sur le formulaire pour un type d'élément de travail, doit être défini en tant que champ d'élément de travail. Vous pouvez définir des champs d'éléments de travail dans la définition d'un type d'élément de travail ou d'un flux de travail global.

Les champs d'élément de travail sont conservés pour une collection de projets d'équipe. Vous ajoutez des champs lorsque vous exécutez l'une des tâches suivantes :

  • Créer un projet d'équipe. Tous les champs inclus dans les définitions de types d'éléments de travail ou du flux de travail global et qui sont définis pour le modèle de processus sélectionné sont créés. Les champs système de base sont définis automatiquement pour chaque type d'élément de travail défini pour un projet d'équipe. Pour obtenir la liste de ces champs, consultez Référence des champs d'éléments de travail pour Visual Studio ALM.

  • Importer une définition pour un type d'élément de travail. Tous les nouveaux champs inclus dans la définition d'un type d'élément de travail sont ajoutés à la collection. Pour plus d'informations, consultez Référence de tous les éléments XML WITD.

  • Importer une définition de flux de travail global. Tous les nouveaux champs définis dans le flux de travail global sont ajoutés à la collection. Vous définissez un flux de travail global lorsque vous voulez conserver un ensemble de champs d'élément de travail utilisés par plusieurs types d'éléments de travail. Pour plus d'informations, consultez Personnaliser le flux de travail global.

  • Mapper une collection de projets à une instance de Project Web App (PWA). Après avoir installé les extensions Team Foundation Server pour Project Server, configurez l'intégration en mappant différents composants de Team Foundation. Lorsque vous mappez une collection, une définition de flux de travail global qui prend en charge plusieurs champs dans les champs Project Server est importée. Pour plus d'informations, consultez Champs Project Server ajoutés à TFS pour prendre en charge la synchronisation de données.

Tous les champs définis dans tous les types d'éléments de travail et les flux de travail globaux pour tous les projets d'équipe composent l'ensemble complet des champs définis pour la collection. Vous pouvez modifier l'attribut des champs, de même que renommer et supprimer des champs existants. Toutefois, ces types de modifications entraînent certains frais. Pour plus d'informations, consultez Personnaliser les objets de suivi de travail pour prendre en charge les processus de votre équipe.

Pour ajouter ou personnaliser un champ pour une collection, modifiez le contenu XML de la définition d'un type d'élément de travail ou d'un flux de travail global. Définissez chaque champ via un élément FIELD dans la section FIELDS de la définition pour un type d'élément de travail ou un flux de travail global. Pour plus d'informations sur la structure et l'emplacement de ces fichiers, consultez Référence de tous les éléments XML WITD et Personnaliser le flux de travail global.

Structure de la syntaxe FIELD (Définition)

Chaque élément FIELD (Définition) a un nom convivial qui est facultatif et un nom de référence qui est obligatoire. Le nom de référence doit être unique dans la collection. Pour plus d'informations, consultez Conventions d'affectation de noms pour les objets de suivi des éléments de travail.

Important

Vous pouvez modifier le nom convivial d'un champ à l'aide de l'outil en ligne de commande witadmin changefield.Toutefois, si vous renommez un champ, cela affecte tous les types d'éléments de travail dans l'ensemble des projets d'équipe de la collection.

Définissez un champ à l'aide de la syntaxe XML suivante dans le fichier de définition pour le type d'élément de travail.

<FIELD name="fieldDisplayName"
   refname="fieldReferenceName" type="String | Integer | Double | DateTime | PlainText | HTML | History | TreePath | GUID"
   syncnamechanges="true | false"
   reportingname="reportingDisplayName"
   reportingrefname="reportingReferenceName"
   reportable="Dimension | Detail | Measure" 
   formula="sum" >
   <ALLOWEDVALUES> . . . </ALLOWEDVALUES>
   <ALLOWEXISTINGVALUE />
   <CANNOTLOSEVALUE />
   <COPY />
   <DEFAULT />
   <EMPTY />
   <FROZEN />
   <HELPTEXT> . . . </HELPTEXT>
   <MATCH />
   <NOTSAMEAS />
   <PROHIBITEDVALUES /> . . . </PROHIBITEDVALUES>
   <READONLY />
   <REQUIRED />
   <SERVERDEFAULT />
   <SUGGESTEDVALUES /> . . . </SUGGESTEDVALUES>
   <VALIDUSER />
   <WHEN>> . . . </WHEN>
   <WHENNOT> . . . </WHENNOT>
   <WHENCHANGED> . . . </WHENCHANGED>
   <WHENNOTCHANGED> . . . </WHENNOTCHANGED>
</FIELD>

Pour plus d'informations, consultez Référence des éléments FIELD (Définition).

Types de données

Le type d'un champ définit le genre et la taille des données que vous pouvez stocker dans le champ. Un champ ne peut avoir qu'un seul type défini dans une collection de projets d'équipe. Cette restriction favorise l'utilisation par les organisations de champs communs aux projets et aux types d'élément de travail.

La liste suivante affiche les types de champs pris en charge :

Type de données

Description

DateTime

Spécifie une date basée sur le temps universel coordonné (UTC, Coordinated Universal Time).

Ajoutez un champ DateTime à un formulaire d'élément de travail à l'aide des attributs FieldControl DateTimeControl ou type.

Double

Spécifie une valeur à virgule flottante. Les champs Double sont fréquemment utilisés dans les filtres de requête et les listes de résultats

Ajoutez un champ Double à un formulaire d'élément de travail à l'aide de l'attribut de FieldControl type.

GUID

Spécifie un champ qui doit contenir un identificateur unique.

Vous ne pouvez pas ajouter de champ GUID à un formulaire d'élément de travail.

History

Prend en charge l'affichage des thèmes de discussion et le suivi d'autres données historiques.

Notes

Le champ System.History est le seul champ qui utilise ce type de données.Vous ne pouvez pas définir de champ personnalisé à l'aide de ce type de données.

Ajoutez le champ System.History à un formulaire d'élément de travail à l'aide de l'attribut de WorkItemLogControl type, qui prend en charge les contrôles au format RTF (Rich Text Format).

HTML

Prend en charge la capture des données de texte enrichi et l'utilisation de descriptions textuelles plus longues telles que la description d'un élément de travail. Un champ HTML diffère d'un champ PlainText en ce sens que le champ HTML est fortement typé en HTML pour des affichages enrichis d'informations.

Ajoutez un champ HTML à un formulaire d'élément de travail à l'aide de l'attribut de HTMLControl type, qui prend en charge les contrôles au format RTF (Rich Text Format).

Integer

Spécifie une valeur entière signée 32 bits. Les champs Integer sont fréquemment utilisés dans les filtres de requête et les listes de résultats

Ajoutez un champ Integer à un formulaire d'élément de travail à l'aide de l'attribut de FieldControl type.

PlainText

Prend en charge la saisie d'une chaîne de texte qui peut contenir plus de 255 caractères Unicode.

Ajoutez un champ PlainText à un formulaire d'élément de travail à l'aide de l'attribut de type FieldControl, qui se limite au texte brut, ou à l'aide de l'attribut de HTMLControl type, qui prend en charge les contrôles au format RTF.

String

Prend en charge la saisie d'une chaîne de texte qui peut contenir jusqu'à 255 caractères Unicode. Utilisez un champ de type String pour une étiquette ou toute autre chaîne de texte courte d'une ligne au maximum. Les champs de type String sont fréquemment utilisés dans les filtres de requête et les listes des résultats.

Ajoutez un champ String à un formulaire d'élément de travail à l'aide de l'attribut de FieldControl type.

TreePath

Spécifie un champ qui affiche des entrées selon une structure hiérarchique ou une arborescence, par exemple lors de l'affichage des chemins d'accès de zone et d'itération d'un produit.

Notes

Les champs System.AreaPath et System.IterationPath sont les seuls champs qui utilisent ce type de données.Vous ne pouvez pas définir de champ personnalisé à l'aide de ce type de données.

Ajoutez les champs System.AreaPath et System.IterationPath à un formulaire d'élément de travail à l'aide de l'attribut WorkItemClassificationControl type.

Attributs signalables

Certaines valeurs de champ sont particulièrement utiles pour la génération de rapports. À l'aide du langage de définition du type d'élément de travail, vous pouvez spécifier les attributs facultatifs suivants :

  • reportable. Affectez la valeur None, Detail, Dimension ou Measure à l'attribut signalable pour déterminer si et comment vous souhaitez inclure le champ dans les rapports. Les données des champs dont l'attribut signalable a une valeur autre que None sont exportées vers l'entrepôt de données et peuvent être intégrées dans les rapports.

    Lorsque vous ajoutez un champ existant à un type d'élément de travail, la valeur actuelle de l'attribut reportable est utilisée. Lorsque vous ajoutez un champ à un type d'élément de travail, la création de rapports est désactivée sauf si vous le spécifiez explicitement à l'aide de l'attribut reportable.

  • reportingname. Assignez une étiquette différente à un champ qui est utilisé lorsque les données apparaissent dans les rapports. Si vous ne spécifiez pas de valeur, le nom convivial assigné à l'attribut name est utilisé.

  • reportingrefname. Assignez un nom de référence différent à un champ qui est utilisé lorsque les données sont exportées vers l'entrepôt de données relationnelles. Si vous ne spécifiez pas de valeur, la valeur assignée à l'attribut refname est utilisée.

    Utilisez cet attribut pour fusionner ou différencier des champs inclus dans les rapports. Pour fusionner deux champs ayant des noms de référence distincts et étant définis dans des collections de projets différentes, vous assignez le même attribut reportingrefname à ces deux champs. Pour différencier deux champs ayant le même nom de référence et étant définis dans des collections de projets différentes, vous assignez un attribut reportingrefname distinct à chacun d'eux.

Après avoir défini un champ, vous pouvez utiliser la commande witadmin changefield à une invite de commandes pour modifier la valeur de tous les attributs, à l'exception de celle de l'attribut refname.

Pour plus d'informations sur les meilleures pratiques en matière d'étiquetage de champs à des fins de création de rapports, consultez Ajouter et modifier des champs d'éléments de travail pour prendre en charge la création de rapports.

Valeurs d'attribut signalable

Comme décrit dans le tableau suivant, vous pouvez assigner l'une des valeurs suivantes à l'attribut reportable : none, dimension, detail et measure.

Notes

Vous pouvez spécifier un attribut reportable pour un champ une fois qu'il a été utilisé pour un élément de travail.Une fois la valeur signalable définie, les nouvelles révisions de l'élément de travail qui sont copiées dans l'entrepôt contiendront la valeur du champ.Toutefois, les révisions déjà présentes dans l'entrepôt ne seront pas remplacées par les valeurs existantes.

Valeur d'attribut

Description

Detail

Utilisez le type Detail uniquement pour les champs Integer, Double, String ou DateTime.

Les données de ce champ sont déplacées dans les tables Élément de travail et Élément de travail actif de la base de données relationnelle de l'entrepôt, mais pas dans le cube SQL Server Analysis Services. Lorsque vous avez recours à ce type pour les champs de texte non restreints, vous pouvez utiliser ces derniers dans les rapports, sans trop augmenter la taille du cube.

Dimension

Utilisez le type Dimension uniquement pour les champs Integer, Double, String ou DateTime.

Les données de ce champ entrent dans la base de données relationnelle et le cube Analysis Services en tant qu'attribut de la dimension Élément de travail afin que les données puissent être utilisées pour filtrer les rapports. Utilisez ce type pour les champs contenant des listes de valeurs valides. Type d'élément de travail et État sont de bons exemples de dimension.

Measure

Utilisez uniquement le type Measure pour les champs Integer et Double. Les mesures sont les valeurs numériques contenues dans vos rapports.

Pendant le traitement du cube Analysis Services, les données sont calculées à l'avance sur les champs auxquels la valeur Measure est affectée. Par exemple, les groupes de mesures Élément de travail et Élément de travail actif contiennent des données cumulatives pour les champs suivants : Estimation d'origine, Heures restantes et Heures effectuées. Pour plus d'informations sur les groupes de mesures, consultez Perspectives et groupes de mesures fournis dans le cube Analysis Services pour Visual Studio.

Lorsque vous spécifiez Measure, vous devez spécifier sum pour l'attribut formula, qui renvoie la somme de chaque mesure référencée dans la requête.

None

Spécifiez None lorsque vous ne souhaitez pas inclure le champ dans les rapports. Cette valeur est l'affectation par défaut.

Exemples montrant comment spécifier la création de rapports

Exemple pour Detail

<FIELD refname="MyCorp.Summary" name="Summary" type="String" reportable="detail">

Exemple pour Dimension

<FIELD refname="MyCorp.Category" name="Category" type="String" reportable="dimension">

Exemple pour Measure

<FIELD refname="MyCorp.Cost" name="Cost" type="Integer" reportable="measure" formula="sum">

Champs indexés

Vous pouvez activer ou désactiver l'indexation pour un champ d'élément de travail à l'aide de 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é. 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 Gérer des champs d'éléments de travail (witadmin).

Éléments enfants FIELD (Définition)

Il existe plusieurs éléments enfants facultatifs que vous pouvez spécifier pour un champ d'élément de travail, par exemple :

  • Texte d'aide. Définit l'info-bulle ou l'aide qui s'affiche pour un champ sur le formulaire d'élément de travail (HELPTEXT).

  • Restrictions du champ. Spécifie un champ comme étant obligatoire, en lecture seule, vide, figé ou lié à un modèle spécifique (REQUIRED, READONLY, EMPTY, FROZEN, MATCH).

  • Remplissage automatique de valeur du champ. Spécifie une valeur pour le champ (DEFAULT, COPY, SERVERDEFAULT).

  • Liste de champs. Spécifie les valeurs autorisées, suggérées ou interdites. (ALLOWEDVALUES, SUGGESTEDVALUES, PROHIBITEDVALUES)

  • Conditions de champs. Applique une ou plusieurs règles à un champ lorsqu'un autre champ est modifié ou inchangé, lorsqu'un autre champ possède ou non une valeur spécifique, ou pour une autre condition (WHEN, WHENNOT, WHENCHANGED, WHENNOTCHANGED, CANNOTLOSEVALUE, NOTSAMEAS).

Pour plus d'informations, consultez Référence de tous les éléments XML FIELD.

Champs système et prédéfinis

Tous les champs système définis ont des noms de références qui commencent par System, par exemple System.AreaPath, System.AssignedTo, etc.

Les champs prédéfinis définis par les modèles de processus par défaut fournis par TFS 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 à Microsoft Project, à des fins d'intégration à Team Foundation Build et à des fins d'intégration à Team Foundation :

  • 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 champs prédéfinis qui sont définis pour les modèles de processus par défaut fournis par TFS, consultez Référence des champs d'éléments de travail pour Visual Studio ALM. Pour plus d'informations sur la spécification des noms de champs, consultez Conventions d'affectation de noms pour les objets de suivi des éléments de travail.

Attributs masqués et non modifiables et l'Explorateur de champ d'élément de travail

Outre les attributs que vous pouvez modifier pour un champ d'élément de travail, il existe un certain nombre d'attributs non modifiables et pratiquement masqués pour chaque champ. Vous pouvez rechercher les assignations de ces champs à l'aide de l'outil Explorateur de champ d'élément de travail. Ouvrez l'outil Explorateur de champ d'élément de travail dans l'outil puissant Process Editor.

Explorateur de champ d'élément de travail

Explorateur de champ d'élément de travail

Notes

L'outil puissant Process Editor fournit une interface graphique utilisateur pour personnaliser les modèles de processus Team Foundation Server.Vous pouvez utiliser cet outil pour importer et exporter des types d'éléments de travail, modifier le contenu du modèle de processus et explorer l'ensemble des champs définis pour une collection de projets d'équipe.Pour plus d'informations, consultez la page suivante sur le site web Microsoft : Team Foundation Server Power Tools.

Voir aussi

Référence

Gérer des champs d'éléments de travail (witadmin)

Concepts

Ajouter et modifier des champs d'éléments de travail pour prendre en charge la création de rapports

Référence de tous les éléments XML FIELD

Autres ressources

Modifier ou ajouter un champ pour prendre en charge les requêtes, les rapports et le flux de travail