Partager via


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

Vous pouvez gérer les champs de type d'élément de travail définis pour une collection de projets d'équipe à l'aide des commandes witadmin suivantes :

  • changefield : modifie un ou plusieurs attributs d'un champ.Lorsque vous modifiez l'un des attributs suivants, modifiez-le pour tous les types d'éléments de travail et projets d'équipe au sein de la collection de projets d'équipe :

    • Type de données pour les champs PlainText ou HTML.

      Important

      Lorsque vous mettez à niveau Team Foundation Server à partir d'une version antérieure à la version actuelle, l'assignation de type pour le champ Description (System.Description) est automatiquement convertie de PlainText en HTML.Avec la commande changefield, restaurez le contenu de ce champ au texte brut d'affichage.

    • Nom convivial qui affiche dans la requête d'élément de travail.Ce nom peut être différent de celui affiché sur le formulaire d'élément de travail.

    • L'enregistrement des attributs qui inclut le nom du champ tel qu'il apparaît dans un rapport, le nom du rapport de référence et le type d'enregistrement.

    • Synchronisation avec Active Directory - vous pouvez activer/désactiver la synchronisation des champs de noms de personnes.

  • deletefield : supprime le champ spécifié.

  • indexfield : active ou désactive l'indexation pour le champ spécifié.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.

  • listfields : affiche les attributs de tous les champs ou d'un champ spécifié.

Pour exécuter l'outil de ligne de commande witadmin, ouvrez une fenêtre d'invite de commandes à l'endroit où Visual Studio ou Team Explorer est installé et entrez :

cd %programfiles%\Microsoft Visual Studio 11.0\Common7\IDE

Sur une édition 64 bits de Windows, remplacez %programfiles% par %programfiles(x86)%.

Pour une vue d'ensemble des champs définis dans les modèles de processus par défaut fournis avec Team Foundation Server, reportez-vous à Référence des champs d'éléments de travail pour Visual Studio ALM.

[!REMARQUE]

Vous pouvez créer et modifier les champs d'élément de travail à l'aide de l'éditeur de processus, un outil puissant pour Visual Studio.Cet outil n'est pas pris en charge.Pour plus d'informations, consultez la page suivante sur le site Web Microsoft : Team Foundation Server Power Tools.

Configuration requise

  • Pour répertorier les champs, votre autorisation Afficher les informations au niveau du projet pour le projet d'équipe dans la collection doit avoir la valeur Autoriser.

  • Pour supprimer ou renommer des champs ou un attribut d'un champ, vous devez être membre du groupe de sécurité Team Foundation Administrators ou du groupe de sécurité Project Collection Administrators.

Pour plus d'informations, consultez Autorisations de Team Foundation Server et Groupes, autorisations et rôles par défaut de Team Foundation Server.

[!REMARQUE]

Même si vous vous connectez avec des autorisations d'administration, vous devez ouvrir une fenêtre d'invite de commandes avec élévation de privilèges pour exécuter cette fonction sur un serveur Windows Server 2008.Pour ouvrir une fenêtre d'invite de commandes avec élévation de privilèges, sélectionnez Démarrer, ouvrez le menu contextuel Invite de commandes, puis sélectionnez Exécuter en tant qu'administrateur.Pour plus d'informations, consultez le site Web Microsoft : Contrôle de compte d'utilisateur.

witadmin changefield /collection:CollectionURL /n:RefName
   [/name:NewName] 
   [/syncnamechanges:true | false]
   [/reportingname:ReportingName] 
   [/reportingrefname:ReportingRefName]
   [/reportingtype:Type]
   [/reportingformula:Formula]
   [/type:PlainText | HTML]
   [/noprompt]

witadmin deletefield /collection:CollectionURL /n:RefName [/noprompt]

witadmin indexfield /collection:CollectionURL /n:Name /index:on|off 

witadmin listfields /collection:CollectionURL /n:RefName [/unused]

Paramètres

Paramètre

Description

/collection:CollectionURL

Spécifie l'URI de la collection de projets d'équipe.Le format pour l'URI est le suivant :http://ServerName:Port/VirtualDirectoryName/CollectionName

Si aucun répertoire virtuel n'est utilisé, le format de l'URI est le suivant :

http://NomServeur:Port/NomCollection

/n:RefName

/n:Name

Nom de référence d'un champ de type d'élément de travail.

/index

Spécifie l'activation ou la désactivation de l'indexation du champ spécifié.Spécifiez on pour activer l'indexation et off pour désactiver l'indexation.

/name:NewName

Spécifie le nouveau nom du champ.

/syncnamechanges

Spécifie l'utilisation du champ d'élément de travail pour stocker des noms et procéder à une mise à jour à mesure que des modifications sont apportées à Active Directory ou à un groupe de travail.Cette option est valide uniquement lorsqu'un champ avec le type de données String est spécifié pour le typename.

Spécifiez true pour permettre la synchronisation du champ de données, spécifiez false pour désactiver la synchronisation du champ de données.

/reportingname:ReportingName

Spécifie le nom du champ à utiliser dans l'entrepôt de données pour la création de rapports.

/reportingrefname:ReportingRefName

Spécifie le nom de référence du champ à utiliser dans l'entrepôt de données pour la création de rapports.

/reportingtype:Type

Spécifie le mode d'utilisation du champ dans l'entrepôt pour la création de rapports.Les valeurs suivantes sont valides :

  • dimension: utilisée pour les champs de type Integer, String et DateTime.

  • detail: utilisée pour les champs de type Integer, Double, String et DateTime.

  • measure: utilisée pour les champs Integer et Double.Le type d'agrégation par défaut est sum.Vous pouvez spécifier un autre type d'agrégation à l'aide du paramètre formula.

  • disable: utilisée pour désactiver la rapportabilité du champ.

Pour plus d'informations, consultez Utilisation des champs d'élément de travail.

/reportingformula:Formula

Spécifie la formule d'agrégation à utiliser lorsque le champ est signalé comme étant un measure.La seule formule prise en charge est sum.

/type:HTML | PlainText

Spécifie la conversion du contenu du champ de PlainText à HTML ou de HTML en PlainText.Vous pouvez spécifier cette option uniquement pour les champs dont l'assignation de type est PlainText ou HTML.Consultez Élément FIELD (Définition).

/unused

Affiche tous les champs qui ne sont pas utilisés par les projets d'équipe définis dans la collection de projets d'équipe.

/noprompt

Désactive l'invite de confirmation.

/?or help

Affiche de l'aide sur la commande dans la fenêtre d'invite de commandes.

Remarques

Dd236909.collapse_all(fr-fr,VS.110).gifChamps indexés

Un index de requête est créé en fonction des champs pour lesquels l'indexation est activée.Cet index améliore le temps de réponse en exécutant les requêtes qui incluent des champs indexés.

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.S'il existe d'autres champs souvent utilisés par votre équipe dans les requêtes, vous pouvez les ajouter à l'index de requête.

Dd236909.collapse_all(fr-fr,VS.110).gifSynchronisation des noms de personnes avec Active Directory

Vous devez activer manuellement la synchronization des champs d'élément de travail personnalisés utilisés pour assigner des noms de personnes faisant référence à Active Directory.Vous devez activer la synchronisation pour chaque champ de chaque collection de projets d'équipe qui contient les champs personnalisés.

Pour tous les champs de référence système qui affichent des noms de personnes, l'attribut syncnamechanges a la valeur true. De tels champs incluent System.AuthorizedAs, System.AssignedTo, System.ChangedBy et System.CreatedBy. La synchronisation est activée pour chaque champ de nom de personne défini dans l'un des modèles de processus par défaut.Pour plus d'informations, consultez Référence de champ Attributions et Flux de travail.

Une fois la synchronisation activée, le champ n'affiche plus de chaîne statique.À la place, il affiche le nom associé à un compte d'utilisateur.Lorsque vous modifiez le nom d'utilisateur dans Active Directory ou en mode de Groupe de travail, un champ dont syncnamechanges a la valeur true affiche automatiquement le nouveau nom.

Lorsque vous assignez l'attribut syncnamechanges à un champ String, le champ accepte toujours des noms d'utilisateur valides.Toutefois, le champ n'autorise pas les noms de groupe stockés dans Team Foundation Server ou dans Active Directory si l'une des conditions suivantes a la valeur true :

  • La règle VALIDUSER est spécifiée à travers tous les types d'éléments de travail

  • La règle VALIDUSER est spécifiée pour un type d'élément de travail

  • La règle ALLOWEDVALUES est spécifiée pour un type d'élément de travail, et cette règle a un critère de filtre qui exclut des groupes

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

Dd236909.collapse_all(fr-fr,VS.110).gifAttributs que vous pouvez modifier pour chaque type d'élément de travail

Vous modifiez les attributs ou les valeurs suivants définis pour un champ en modifiant la définition du type d'élément de travail dans laquelle le champ s'affiche :

Exemples

Sauf spécification contraire, les valeurs suivantes s'appliquent dans chaque exemple :

  • URI pour la collection de projets d'équipe : http://AdventureWorksServer:8080/tfs/DefaultCollection

  • Nom du champ d'élément de travail : AdventureWorks.Field

  • Encodage par défaut : UTF-8

Dd236909.collapse_all(fr-fr,VS.110).gifAfficher les champs

Utilisez witadmin listfields pour voir l'ensemble des champs en cours d'utilisation et en sélectionner un pour l'ajouter à un type d'élément de travail.Vous pouvez également répertorier les assignations d'attributs définies pour un champ spécifique et déterminer les champs utilisés en fonction des projets d'équipe.

Afficher les attributs d'un champ d'élément de travail

  • Entrez la commande suivante pour répertorier les attributs définis pour un champ spécifié, tel que Microsoft.VSTS.Common.Issue.

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

    Les informations de champ et d'attribut s'affichent pour le champ nommé, comme indiqué dans 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 où le champ est utilisé.Pour plus d'informations sur les attributs de champs, consultez Référence des champs d'éléments de travail pour Visual Studio ALM.

Répertorier tous les champs d'une collection de projets d'équipe

  • Entrez la commande suivante pour répertorier tous les champs définis pour une collection de projets d'équipe.

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection
    

    Les informations de champ de tous les champs de la collection de projets nommée s'affichent.Consultez Référence des champs d'éléments de travail pour Visual Studio ALM.

Répertorier les champs non utilisés

  • Entrez la commande suivante pour répertorier les champs qui ne sont plus utilisés dans la collection de projets d'équipe par aucun type d'élément de travail.

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /unused
    

    Les informations de champ et d'attribut s'affichent pour chaque champ qui n'est pas utilisé, comme indiqué dans l'exemple suivant.

    Field: Microsoft.VSTS.CMMI.TaskType
    Name: Task Type
    Type: String
    Reportable As: dimension
    Use: Not In Use
    Indexed: False
    
    Field: Microsoft.VSTSUE.Common.Flag
    Name: Flag
    Type: String
    Reportable As: dimension
    Use: Not In Use
    Indexed: False
    
    Field: Microsoft.VSTSUE.Common.Progress
    Name: Progress
    Type: String
    Reportable As: dimension
    Use: Not In Use
    Indexed: False
    

Dd236909.collapse_all(fr-fr,VS.110).gifRenommer un champ

Vous pouvez modifier le nom convivial d'un champ d'élément de travail pour respecter les conventions d'affectation de noms utilisées par votre équipe.Notez que le nouveau nom est appliqué à tous les types d'éléments de travail qui référencent le champ modifié dans tous les projets d'équipe de la collection de projets.Le nom convivial s'affiche lorsque vous définissez des critères de filtre dans une requête d'élément de travail.Le nom qui s'affiche sur un formulaire d'élément de travail peut être différent du nom convivial défini pour le champ.

Pour renommer un champ d'élément de travail

  1. Entrez la commande suivante pour renommer le nom convivial assigné à Microsoft.VSTS.Common.Rank en Rang important.

    witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:Microsoft.VSTS.Common.Rank /name:"Important Rank"
    
  2. À l'invite de confirmation tapez y et appuyez sur ENTRÉE.Attendez jusqu'à ce que le message suivant s'affiche :

    Field renamed.

Pour vérifier les modifications importées dans un projet unique

  1. Dans Team Explorer, choisissez ActualiserActualiser.

    Les mises à jour les plus récentes sont téléchargées à partir du serveur, notamment les modifications que vous venez d'apporter au nom du champ.Attendez quelques secondes jusqu'à ce que l'actualisation se termine.

  2. Sélectionnez Nouvelle requête pour créer une requête.

  3. Dans l'éditeur de requêtes, sélectionnez le lien Cliquez ici pour ajouter une clause afin d'ajouter une ligne, sélectionnez la cellule Champ vide, puis tapez Rang dans cette dernière.Le message suivant apparaît au-dessus de la liste des résultats.Ce message indique que le Rang est introuvable.

    Exécutez la requête pour consulter ses résultats. TF51005 : la requête fait référence à un champ qui n'existe pas.L'erreur est provoquée par <<Rang>>.

  4. Supprimez la valeur Rang de la cellule Champ, puis tapez Rang important dans la cellule.

  5. Sélectionnez <> dans la cellule Opérateur, puis tapez 1 dans la cellule Valeur.

  6. Dans la barre d'outils Requête, sélectionnez Exécuter la requête (Team Explorer)Exécuter.

  7. Ouvrez le menu contextuel sur une ligne quelconque des résultats et sélectionnez Options de colonne.Faites défiler la liste Colonnesdisponibles.Notez que le champ Rang a été remplacé par le champ Rang important.

  8. Sélectionnez Rang important dans la zone Colonnes disponibles, puis sélectionnez le bouton > (Ajouter les colonnes sélectionnées).Cliquez sur OK.

    Notez que Rang, le nom convivial de Microsoft.VSTS.Common.Rank, a été remplacé par Rang important dans le générateur de requêtes et la liste des résultats.

  9. Fermez la requête.Choisissez Non lorsque vous êtes invité à enregistrer la requête.

  10. Créez un élément de travail Tâche.Sélectionnez le lien Nouveaux éléments de travail, puis Tâche.

    Cet élément de travail est créé à partir du type d'élément de travail que vous avez modifié et importé.

  11. Remarquez que dans la zone État l'étiquette du champ renommé Rang n'a pas changé.En effet, la portée des étiquettes de champ sur les formulaires d'élément de travail se limite au projet d'équipe parent, les étiquettes sont donc indépendantes du nom de champ qui vient d'être spécifié pour l'ensemble du serveur.

    [!REMARQUE]

    Pour plus d'informations sur la modification d'étiquettes de champ sur les formulaires d'élément de travail, consultez Modifier l'étiquette d'un champ.

  12. Fermez la nouvelle tâche et sélectionnez Non lorsque vous êtes invité à enregistrer l'élément de travail.

Dd236909.collapse_all(fr-fr,VS.110).gifModifier la valeur de rapport d'un champ

La commande suivante spécifie la capacité à rapporter le type du champ DateTime AdventureWorks.CreatedOn à dimension.Les données de ce champ entrent dans les bases de l'entrepôt et d'Analysis Services afin qu'elles puissent être utilisées pour filtrer des rapports.

witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.CreatedOn /reportingtype:dimension

La commande suivante spécifié la capacité à rapporter le type du champ Double AdventureWorks.Field à measure.Toutes les mesures sont agrégées par somme.

witadmin reportfield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.Field /reportingtype:measure

Dd236909.collapse_all(fr-fr,VS.110).gifActiver la synchronisation d'un champ de nom de personnes personnalisé

La commande suivante permet la synchronisation pour le champ d'élément de travail AW.CustomerName défini pour Collection1 sur AdventureWorksServer.

Vérifier le type de données du champ que vous voulez convertir

  • Vérifiez le type de données assigné au champ, par exemple MyCompany.CustomerName, que vous souhaitez synchroniser en sélectionnant la commande suivante :

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomerName
    

Activer la synchronisation

  1. Pour activer la synchronisation d'un champ de nom de personne, tapez la commande suivante, en substituant vos données aux arguments indiqués ici :

    witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomerName /syncnamechanges:true
    
  2. La demande de confirmation suivante s'affiche :

    This will change properties for field {0} on the Team Foundation Server.Do you want to continue?

  3. Tapez 0 pour confirmer que vous voulez modifier le champ, ou 1 pour annuler la demande.

    Si la demande de modification réussit, le message de confirmation suivant s'affiche :

    The field was updated.

    Si la demande de modification échoue, un message d'erreur s'affiche.Les erreurs qui peuvent être le plus fréquemment commises sont la tentative de modifier un champ de référence système ou la tentative de modifier un champ d'un type de données autre que String.Ces opérations ne sont pas prises en charge.

Dd236909.collapse_all(fr-fr,VS.110).gifSupprimer un champ

Avant de supprimer un champ, vérifiez qu'il n'est pas utilisé.Si le champ est en cours d'utilisation, vous devez d'abord supprimer le champ des types d'éléments de travail qui l'utilisent avant de le supprimer de la collection de projets d'équipe.La commande suivante supprime le champ AdventureWorks.Field de Collection1 :

witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.Field

Vérifier qu'un champ n'est pas en cours d'utilisation

  1. Entrez la commande suivante, en spécifiant le nom de référence du champ d'élément de travail, tel que MyCompany.MyProcess.MyField.

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.MyProcess.MyField
    

    Dans les informations affichées pour le champ, vérifiez que la valeur pour Use est "Not In Use", comme dans l'exemple suivant.

    Field: MyCompany.MyProcess.MyField
    Name: MyField
    Type: String
    Reportable As: dimension
    Use: Not In Use
    Indexed: False
    
  2. Si le champ Use indique que le champ est en cours d'utilisation, vous devez le supprimer de chaque type d'élément de travail pour chaque projet d'équipe répertorié.Par exemple, le champ Microsoft.VSTS.TCM.SystemInfo indique qu'il est utilisé par les types d'éléments de travail Bug et Code Defect dans quatre projets : Arroyo, Desert, Palm et Springs.

    Field: Microsoft.VSTS.TCM.SystemInfo
    Name: System Info
    Type: Html
    Reportable As: None
    Use: Arroyo (Bug), Desert (Bug), Palm (Bug), Springs (Bug, Code Defect)
    Indexed: False
    

    Avant de pouvoir supprimer ce champ, vous devez le supprimer de chacun des types d'éléments de travail répertoriés pour chaque projet d'équipe pour lequel il est défini.Pour supprimer le champ, modifiez la définition du type d'élément de travail en supprimant les éléments FIELD et Control qui contiennent le nom de référence de champ.Consultez Personnaliser et gérer des types d'éléments de travail (witadmin), Élément FIELD (Définition) et Référence des éléments XML Control.

Supprimer un champ d'une collection de projets d'équipe

  • Entrez la commande suivante pour supprimer le champ MyCompany.MyProcess.MyField, puis cliquez sur Entrée.

    witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:RefName
    

    Entrez y à l'invite de confirmation pour terminer cette étape.

Voir aussi

Concepts

Résoudre les conflits de schéma qui se produisent dans l'entrepôt de données

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

Référence des champs d'éléments de travail pour Visual Studio ALM

Référence des champs signalables pour Visual Studio ALM

Autres ressources

witAdmin : personnaliser et gérer des objets pour le suivi des éléments de travail