Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure DevOps Server | Azure DevOps Server 2022
Votre projet comprend 100 champs de données ou plus, selon le processus utilisé pour le créer, tel que Agile, Basic, Scrum ou CMMI. Chaque élément de travail est lié à un type d’élément de travail (WIT), et les données que vous pouvez suivre correspondent aux champs affectés à ce WIT. Vous pouvez mettre à jour les données d’élément de travail en modifiant le champ de données dans un élément de travail.
Remarque
Si vous utilisez le modèle de processus hérité, consultez Ajouter un champ personnalisé à un type d’élément de travail.
Vous pouvez modifier des champs existants ou ajouter des champs personnalisés pour suivre d’autres données. Par exemple, vous pouvez personnaliser une liste déroulante dans un menu déroulant, définir une valeur par défaut ou restreindre les valeurs qu’un champ peut accepter.
Sélectionnez des listes définies de différentes manières, comme par le biais de l’interface utilisateur, des flux de travail WIT ou en ajoutant des comptes d’utilisateur à un projet, comme indiqué dans le tableau suivant.
| Définition WIT | Modification de ligne de commande (processus XML local) |
|---|---|
|
-
Personnaliser une liste de sélections - Ajouter des règles à un champ - Ajouter un champ personnalisé - Modifier l’étiquette de champ sur le formulaire - Ajouter un contrôle personnalisé |
-
Champs de liste - Modifier un attribut de champ - Supprimer un champ - Indexer un champ |
Prérequis
| Catégorie | Exigences |
|---|---|
| Champs de liste | Disposez de l’autorisation Afficher les informations au niveau du projet pour le projet dans la collection, définie à Autoriser. |
| Ajouter ou personnaliser un champ | Être membre du groupe Administrateurs de projet ou disposer de l’autorisation Modifier les informations au niveau du projet sur Autoriser. |
| Supprimer, renommer ou modifier un champ | Être membre du groupe de sécurité Administrateurs Team Foundation ou du groupe de sécurité Administrateurs du regroupement de projets . |
Pour être ajouté en tant qu’administrateur, modifiez les autorisations au niveau de la collection de projets.
Méthodes par lesquelles les champs d’élément de travail sont ajoutés
Les champs d’élément de travail suivent les données d’un type d’élément de travail, définissent des critères de filtre de requête et génèrent des rapports. Tout élément de données que vous souhaitez suivre, à l’exception des champs système, doit être défini comme champ d’élément de travail. Vous pouvez définir des champs au sein d’un type d’élément de travail (WIT) ou d’une définition de flux de travail globale.
Les champs d’élément de travail sont conservés au niveau de la collection de projets et sont ajoutés dans les scénarios suivants :
- Création d’un projet : les champs définis dans le modèle de processus sélectionné pour les wiTs ou les flux de travail globaux sont créés. Les champs système principaux sont automatiquement inclus pour chaque type d’élément de travail. Pour obtenir la liste des champs système principaux, consultez l’index de champ Élément de travail. Pour plus d’informations sur les modèles, consultez Modèles de processus.
- Importation d’une définition WIT : les nouveaux champs définis dans la définition WIT sont ajoutés à la collection. En savoir plus dans toutes les informations de référence sur les éléments XML WITD.
- Importation d’une définition globale de flux de travail : les nouveaux champs définis dans le flux de travail global sont ajoutés à la collection. Les flux de travail globaux autorisent les champs partagés entre plusieurs types d’éléments de travail. Pour plus d’informations, consultez Personnaliser le flux de travail global .
L’ensemble complet de champs d’une collection inclut tous les champs définis dans les wiTs et les flux de travail globaux dans tous les projets. Vous pouvez modifier des attributs, renommer ou supprimer des champs, mais ces modifications peuvent affecter les serveurs locaux et les rapports.
Pour ajouter ou personnaliser un champ, modifiez le contenu XML de la définition WIT. Définissez chaque champ à l’aide d’un élément FIELD dans la section FIELDS . Pour plus d’informations, consultez toutes les informations de référence sur les éléments XML FIELD.
Ajouter un champ, appliquer une règle ou modifier un attribut
Pour ajouter un champ personnalisé, ajouter des règles de champ ou modifier l’étiquette d’un champ sur un formulaire d’élément de travail, modifier le WIT ou les types qui utilisent le champ. Suivez la séquence de personnalisation qui correspond à votre modèle de processus.
Pour modifier un attribut de champ ou renommer un champ, utilisez l’outil de ligne de commande witadmin . Sinon, pour modifier un champ, vous ajoutez ou modifiez les règles associées au champ dans une définition WIT.
Modifier un fichier de définition WIT
Pour ajouter des règles ou ajouter un champ personnalisé, exporter, modifier, puis importer le fichier de définition WIT.
Conseil
Avec witadmin, vous pouvez importer et exporter des fichiers de définition. D’autres outils que vous pouvez utiliser incluent l’éditeur de processus (nécessite que vous ayez installé une version de Visual Studio). Installez l’éditeur de modèle de processus à partir de la Place de marché Visual Studio.
Pour suivre les données, vous ajoutez le champ au fichier de définition WIT, à l’exception des champs système, qui sont des champs dont le nom de référence commence par System.. Les champs système sont automatiquement définis pour tous les WIT, même s’ils ne sont pas inclus dans la définition WIT. Pour plus d’informations, consultez l’index du champ Élément de travail.
Ajouter une case à cocher ou un champ booléen
Utilisez la syntaxe suivante pour ajouter un champ booléen dans la section FIELDS de la définition WIT.
<FIELD name="Triage" refname="Fabrikam.Triage" type="Boolean" >
<DEFAULT from="value" value="False" />
<HELPTEXT>Triage work item</HELPTEXT>
</FIELD>
Ajoutez ensuite la syntaxe suivante dans la section FORM pour que le champ apparaisse sur le formulaire.
<Control Label="Triage" Type="FieldControl" FieldName="Fabrikam.Triage" />
Le champ apparaît sous la forme d’une case à cocher dans le formulaire.
Personnaliser une liste de sélections
Les listes de sélection sont des valeurs énumérées affichées dans les menus déroulants des formulaires d’élément de travail et dans la colonne Valeur de l’éditeur de requête. Pour personnaliser une liste de sélection pour la plupart des champs de chaîne ou d’entier, modifiez la définition WIT. Par exemple, utilisez le code XML suivant pour ajouter un champ résolution personnalisé avec une liste de sélections.
Champ personnalisé et liste de sélection
<FIELD name="Resolution" refname="MyCompany.Resolution" type="String">
<ALLOWEDVALUES>
<LISTITEM value="By Design" />
<LISTITEM value="Duplicate" />
<LISTITEM value="External" />
<LISTITEM value="Fixed" />
<LISTITEM value="Not Repro" />
<LISTITEM value="Postponed" />
<LISTITEM value="Won't Fix" />
</ALLOWEDVALUES>
</FIELD>
Les règles vous permettent de combiner des listes, de restreindre les personnes pouvant accéder à une liste et de définir des conditions quand une liste apparaît sur le formulaire d’élément de travail. Vous pouvez utiliser les attributs expanditems et filteritems pour contrôler si une liste de distribution affiche des membres individuels ou filtre des éléments spécifiques.
Pour simplifier la maintenance, utilisez des listes globales pour les listes partagées entre les réseaux WIT ou les projets. Les listes globales réduisent les efforts nécessaires pour mettre à jour les listes partagées. Si des parties d’une liste doivent différer entre les wiT ou les projets, vous pouvez définir une liste globale pour des parties spécifiques d’une liste de sélection. Pour plus d’informations, consultez Définir des listes de sélection et Définir des listes globales.
Ajouter des règles à un champ
Pour ajouter un champ personnalisé ou appliquer des règles à un champ, modifiez la définition WIT. Vous pouvez restreindre des règles à des utilisateurs ou des groupes spécifiques à l’aide des attributs pour ou not afin de définir à qui la règle s’applique ou qui elle exclut.
Par exemple, l’extrait de code suivant applique une règle que seuls les membres de l’équipe de gestion, un groupe personnalisé, peuvent modifier le champ Stack Rank après la création d’un élément de travail :
<FIELD name="Stack Rank" refname="Microsoft.VSTS.Common.StackRank" type="Double" reportable="dimension">
<FROZEN not="[project]\Management Team" />
<HELPTEXT>Work first on items with lower-valued stack rank. Set in triage.</HELPTEXT>
</FIELD>
Vous pouvez appliquer des règles aux champs pour effectuer les actions suivantes :
| Action | Élément XML |
|---|---|
| Ajoutez un info-bulle à un champ. | HELPTEXT |
| Définissez ou limitez les valeurs qu’un champ peut avoir. | CANNOTLOSEVALUE, EMPTY, FROZEN, NOTSAMEAS, READONLY, REQUIRED |
| Copiez une valeur ou définissez une valeur par défaut pour un champ. | COPY, DEFAULT, SERVERDEFAULT |
| Restreindre les personnes autorisées à modifier un champ. | VALIDUSER, pour, non |
| Appliquer la validation par modèle pour les champs de chaînes de caractères. | ALLUMETTE |
| Appliquez des règles de manière conditionnelle en fonction d’autres valeurs de champ. | WHEN, WHENNOT, WHENCHANGED, WHENNOTCHANGED |
Les champs système, identifiés par le préfixe « Système », par exemple, System.ID, autorisent la personnalisation limitée des règles. Par exemple, vous ne pouvez pas copier ou effacer les champs qui indiquent qui a créé, modifié ou fermé un élément de travail, ni les champs de date-heure gérés par le système.
Pour plus d’informations sur les règles de champ et les restrictions, consultez Règles et évaluation des règles.
Ajouter un champ personnalisé
Pour ajouter un champ personnalisé, modifiez la définition WIT pour ajouter un élément FIELD dans la section FIELDS et un élément Control dans la section FORM.
Exportez le fichier de définition WIT en fonction du modèle de processus que vous utilisez.
Recherchez la section du fichier XML qui commence par
FIELDS.Ajoutez l’élément
FIELDqui spécifie le nom du champ personnalisé à ajouter. Vous devez spécifier les attributs requis suivants : convivialname,refname(nom de référence) ettype. Pour plus d’informations, consultez la référence d’élément FIELD (Definition).Le code suivant spécifie le champ personnalisé, le demandeur, avec un nom de
FabrikamFiber.MyTeam.Requestorréférence et une liste de sélections de valeurs autorisées, avec la valeur par défaut de Customer.<FIELD name="Requestor" refname="FabrikamFiber.MyTeam.Requestor" type="String" reportable="Dimension"> <ALLOWEDVALUES> <LISTITEM value="Customer" /> <LISTITEM value="Executive Management" /> <LISTITEM value="Other" /> <LISTITEM value="Support" /> <LISTITEM value="Team" /> <LISTITEM value="Technicians" /> <DEFAULTVALUE value="Customer" /> </ALLOWEDVALUES> </FIELD>Conseil
Les éléments de la liste apparaissent toujours dans l’ordre alphanumérique, quelle que soit la façon dont vous les entrez dans le fichier de définition XML. Le nom de référence, ou
refname, est le nom programmatique du champ. Toutes les autres règles doivent faire référence aurefname. Pour plus d’informations, consultez Restrictions de nommage et conventions d’affectation de noms.Ajoutez l’élément
Controldans laFORMsection afin que le champ personnalisé s’affiche sur le formulaire dans le groupe d’éléments dans lequel vous souhaitez qu’il apparaisse.Par exemple, l’extrait de code suivant ajoute le champ Demandeur pour apparaître sous le champ Motif du formulaire d’élément de travail.
<Column PercentWidth="50"> <Group Label="Status"> <Column PercentWidth="100"> <Control FieldName="System.AssignedTo" Type="FieldControl" Label="Assi&gned To:" LabelPosition="Left" /> <Control FieldName="System.State" Type="FieldControl" Label="&State:" LabelPosition="Left" /> <Control FieldName="System.Reason" Type="FieldControl" Label="Reason:" LabelPosition="Left" ReadOnly="True" /> <Control FieldName="FabrikamFiber.MyTeam.Requestor" Type="FieldControl" Label="Requestor:" LabelPosition="Left" ReadOnly="True" /> </Column> </Group> </Column>Conseil
Dans la définition du schéma pour le suivi du travail, tous les éléments enfants de l'élément
FORMdoivent être en camel case, tandis que tous les autres éléments doivent être en majuscules. Vérifiez que la structure de cas des balises d’ouverture et de fermeture correspond aux règles de syntaxe XML pour éviter les erreurs de validation. Pour plus d’informations, consultez référence d’élément XML Control.Importez le fichier de définition WIT en fonction du modèle de processus que vous utilisez.
Ouvrez le portail web ou Team Explorer pour afficher les modifications. Si le client est déjà ouvert, actualisez la page.
L’illustration suivante montre que le formulaire d’élément de travail de l’élément de backlog produit contient désormais le nouveau champ.
Modifier l’étiquette de champ sur un formulaire d’élément de travail
Pour modifier l’étiquette de champ, modifiez la valeur affectée à l’attribut d’élément ControlLabel . Pour supprimer un champ du formulaire élément de travail, supprimez l’élément Control associé au champ.
Exportez le fichier de définition WIT en fonction de votre modèle de processus.
Dans les sections et
FORMlesLayoutsections, recherchez la définition du champ à modifier. Cet exemple modifie l’étiquette du champ Titre :<Column PercentWidth="70"> <Control Type="FieldControl" FieldName="System.Title" Label="Title" LabelPosition="Left" /> </Column>Modifiez l’étiquette du champ afin que le bureau de succursale portugais travaillant sur ce projet particulier puisse lire le nom du champ Titre lorsqu’il travaille avec le formulaire d’élément de travail. Incluez le mot portugais pour le titre (Titulo) dans le champ Titre.
<Column PercentWidth="70"> <Control Type="FieldControl" FieldName="System.Title" Label="Title (Titulo):" LabelPosition="Left" /> </Column>Importez la définition WIT modifiée.
Ajouter un contrôle personnalisé
À l’aide des API REST pour le suivi des éléments de travail, vous pouvez créer, mettre à jour et rechercher des bogues, des tâches et d’autres types d’éléments de travail (WIT). En outre, vous pouvez créer des contrôles personnalisés pour améliorer les fonctionnalités d’un formulaire d’élément de travail.
Vous pouvez également utiliser des contrôles personnalisés disponibles via Visual Studio Marketplace, tels que :
- Contrôle à valeurs multiples : autorise la saisie de plusieurs valeurs pour un champ à l’aide d’une liste de cases à cocher.
- Contrôle de liste de sélection de couleurs : permet d’ajouter des couleurs aux éléments de liste de sélection.
- Formulaire d'actions à sélection unique pour un élément de travail : fournit un ensemble personnalisable de règles pour les actions à sélection unique.
Pour ajouter un contrôle personnalisé au nouveau formulaire web, consultez Les éléments WebLayout et Control.
Modifier un attribut d’un champ existant
Vous utilisez witadmin changefield pour modifier les attributs d’un champ existant. Par exemple, la commande suivante modifie le nom d'affichage défini pour MyCompany.Type en Méthode d'évaluation.
witadmin changefield /collection:http://AdventureWorksServer:8080/ DefaultCollection/n:MyCompany.Type /name:"Evaluation Method"
Le tableau suivant récapitule les attributs que vous pouvez modifier à l’aide de witadmin changefield.
| Attribut | Descriptif |
|---|---|
| Type de données | Spécifie le type de données que le champ accepte. En général, vous ne pouvez pas modifier le type de données de champ une fois qu’il est défini. Vous pouvez changer le type de données de champ uniquement pour les champs de type HTML ou PlainText. |
| Nom convivial | Le nom convivial apparaît dans les menus déroulants des requêtes d’élément de travail et doit être unique dans tous les champs définis dans une collection de projets. Le nom convivial peut différer de l’étiquette de formulaire qui apparaît sur le formulaire d’élément de travail. |
| Attributs de création de rapports | Vous pouvez modifier le nom du champ tel qu’il apparaît dans un rapport, le nom de référence du rapport et le type de rapport. Vous pouvez localiser le nom convivial de création de rapports. Le type de rapport détermine si les données du champ sont écrites dans la base de données de l’entrepôt relationnel, dans la base de données de l’entrepôt relationnel et dans le cube OLAP, ou pour générer une somme précalculée de valeurs lors du traitement du cube OLAP. Pour obtenir la liste complète des champs reportables par défaut, consultez la référence des champs reportables. Pour plus d’informations sur les attributs reportables, consultez les champs et attributs d’élément de travail, attributs reportables. |
| Synchronisation | Vous pouvez activer ou désactiver la synchronisation pour les champs de nom de personne avec Active Directory. |
Modifier l’attribut d’index d’un champ
Activez l’indexation d’un champ pour améliorer les temps de réponse des requêtes lors du filtrage. 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.
Pour activer ou désactiver l’indexation d’un champ, utilisez la commande witadmin indexfield.
Supprimer un champ
Lorsque vous supprimez un champ d’un WIT spécifique, le champ reste dans la collection ou le serveur de base de données, même s’il n’est plus référencé par un WIT. Pour supprimer complètement un champ, procédez comme suit.
Supprimez la
FIELDdéfinition de toutes les définitions WIT et tous les flux de travail globaux qui le référencent.Vérifiez que le champ n’est pas utilisé. Par exemple :
witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomContact Field: MyCompany.CustomContact Name: Custom Contact Type: String Reportable As: dimension Use: Not In Use Indexed: FalseSupprimez le champ. Par exemple :
witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomContactSi le champ supprimé était reportable et que votre projet utilise SQL Server Reporting Services, régénérez l’entrepôt de données pour vider l’ancien champ et ses valeurs.
Pour plus d’informations, consultez Gérer les champs d’élément de travail.
Champs de test, de génération et de contrôle de version
Certains types d’éléments de travail incluent des champs générés par des processus automatisés qui s’intègrent à Team Foundation Build, Microsoft Test Manager et team Foundation version control. Pour ajouter ces champs à vos types d’éléments de travail personnalisés (WIT), modifiez la définition WIT en suivant les étapes décrites précédemment.
Par exemple, vous pouvez ajouter les champs Found In et Integrated in Build , qui associent des bogues aux builds où elles ont été trouvées ou corrigées. Utilisez l’extrait de code suivant pour inclure ces champs dans une définition WIT :
<FIELD name="Found In" refname="Microsoft.VSTS.Build.FoundIn" type="String" reportable="dimension">
<HELPTEXT>Product build number (revision) in which this item was found</HELPTEXT>
</FIELD>
<FIELD name="Integration Build" refname="Microsoft.VSTS.Build.IntegrationBuild" type="String" reportable="dimension">
<HELPTEXT>Product build number this bug was fixed in</HELPTEXT>
</FIELD>
Pour plus d’informations, consultez Requête basée sur les champs de génération et d’intégration de test.