Importer, exporter et gérer des types d'éléments de travail

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

Important

Pour le modèle de processus XML local, vous pouvez utiliser witadmin pour répertorier, importer, exporter et modifier un processus pour un projet. Pour les modèles de processus XML hérités et hébergés, vous pouvez uniquement utiliser witadmin pour répertorier et exporter des informations de processus. Pour obtenir une vue d’ensemble des modèles de processus et de ce qui est pris en charge, consultez Personnaliser votre expérience de suivi du travail.

Vous pouvez gérer les types d’éléments de travail pour un projet à l’aide des commandes suivantes witadmin :

  • destroywitd: détruit un type d’élément de travail et détruit définitivement chaque élément de travail de ce type sans récupération.
  • exportwitd: Exporte la définition d’un type d’élément de travail vers un fichier XML ou vers la fenêtre d’invite de commandes.
  • importwitd: importe les types d’éléments de travail à partir d’un fichier de définition XML dans un projet. Si un type d’élément de travail portant le même nom existe déjà, la nouvelle définition de type d’élément de travail remplace celle existante. Si le type d’élément de travail n’existe pas, un nouveau type d’élément de travail est créé. Pour valider le code XML qui définit un type d’élément de travail, mais pas importer le fichier, utilisez l’option /v .
  • listwitd: affiche les noms des types d’éléments de travail dans le projet spécifié dans la fenêtre d’invite de commandes.
  • renamewitd: modifie le nom complet d’un type d’élément de travail dans un projet spécifique. Après avoir exécuté cette commande, les éléments de travail de ce type affichent le nouveau nom.

Pour en savoir plus sur la façon dont les types d’éléments de travail sont utilisés pour suivre le travail, consultez Suivre vos éléments de travail dans les récits utilisateur Azure Boards, les problèmes, les bogues, les fonctionnalités et les épopées.

Exécuter l’outil witadmin en ligne de commande

Pour exécuter l’outil witadmin en ligne de commande, ouvrez une fenêtre d’invite de commandes où Visual Studio est installé. L’outil witadmin en ligne de commande s’installe avec n’importe quelle version de Visual Studio. Vous pouvez accéder à cet outil en installant la version gratuite de Visual Studio Community ou de Visual Studio Team Explorer.

Remarque

Pour vous connecter à Azure DevOps Services, nous vous recommandons d’utiliser la dernière version de Visual Studio ou de Visual Studio Community.

Remarque

Pour vous connecter à un serveur local, nous vous recommandons d’utiliser la même version ou ultérieure de Visual Studio que votre serveur Azure DevOps. Par exemple, si vous vous connectez à Azure DevOps Server 2019, connectez-vous à votre projet à partir d’une version de Visual Studio 2019.

Pour Visual Studio 2022

%programfiles(x86)%\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer

Enterprise ou Professional à la place de , en fonction de Communityla version que vous avez installée.

Pour Visual Studio 2019

%programfiles(x86)%\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer

Enterprise ou Professional à la place de , en fonction de Communityla version que vous avez installée.

Pour Visual Studio 2017

%programfiles(x86)%\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer

Professional ou TeamExplorer à la place de , en fonction de Enterprisela version que vous avez installée.

Sur une édition 32 bits de Windows, remplacez %programfiles(x86)% par %programfiles%. Vous pouvez installer Visual Studio Community (qui fournit gratuitement l’accès à Team Explorer) ou Visual Studio Team Explorer 2017 .

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.

Prérequis

Pour le projet dans lequel les types d’éléments de travail sont définis, vous devez disposer des autorisations suivantes :

  • Pour exporter ou répertorier les types d’éléments de travail, vous devez être membre du groupe Administrateurs de projet ou disposer de l’autorisation Afficher les informations au niveau du projet sur Autoriser.
  • Pour détruire, importer ou renommer des types d’éléments de travail, vous devez être membre du groupe de sécurité Administrateurs Team Foundation ou du groupe de sécurité Administrateurs de projet.

Pour plus d’informations, consultez Modifier les autorisations au niveau de la collection de projets.

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 effectuer cette fonction sur un serveur exécutant Windows Server 2008. Pour ouvrir une fenêtre d’invite de commandes avec élévation de privilèges, choisissez Démarrer, ouvrez le menu contextuel de l’invite de commandes, puis sélectionnez Exécuter en tant qu’administrateur. Pour plus d’informations, consultez le site web Microsoft : Contrôle d’accès utilisateur.

Syntaxe

witadmin destroywitd /collection:CollectionURL /p:Project /n:TypeName [/noprompt]   
witadmin exportwitd /collection:CollectionURL /p:Project /n:TypeName [/f:FileName] [/e:Encoding] [/exportgloballists]  
witadmin importwitd /collection:CollectionURL [/p:Project] /f:FileName [/e:Encoding] [/v] 
witadmin listwitd /collection:CollectionURL /p:Project    
witadmin renamewitd /collection:CollectionURL /p:Project /n:TypeName /new:NewName [/noprompt]   

Paramètres

Paramètre Description
/collection:CollectionURL Spécifie l’URI de la collection de projets. Par exemple :

Format local : http://ServerName:Port/VirtualDirectoryName/CollectionName
Si aucun répertoire virtuel n’est utilisé, utilisez le format suivant : http://ServerName:Port/CollectionName.
/p:Project Projet pour lequel les types d’éléments de travail doivent être gérés. Ce projet doit être défini dans la collection de projets spécifiée par le paramètre /collection .

Le paramètre /p est requis, sauf si vous exécutez la commande importwitd avec l’option /v .
/n:TypeName Nom du type d’élément de travail à détruire, exporter, importer ou renommer.
/f:FileName Chemin d’accès et nom de fichier du fichier de définition XML qui contient les types d’éléments de travail à exporter ou importer. Si vous omettez ce paramètre lorsque vous utilisez la commande exportwitd , le code XML apparaît dans la fenêtre d’invite de commandes.

Remarque : Si vous utilisez Windows Vista, vous ne disposez peut-être pas des autorisations sur certains dossiers. Si vous essayez d’exporter le type d’élément de travail vers un emplacement où vous n’avez pas d’autorisations, la technologie de virtualisation du Registre redirige automatiquement le fichier exporté et l’enregistre dans le magasin virtuel. Pour éviter cette redirection, vous pouvez exporter le fichier vers un emplacement où vous disposez d’autorisations. Pour plus d’informations, consultez la page Virtualisation du Registre sur le site web Microsoft.
/e:*Encoding Nom d’un format d’encodage .NET Framework 2.0. La commande utilise l’encodage spécifié pour exporter ou importer les données XML. Par exemple, /e:utf-7 spécifie l’encodage Unicode (UTF-7). Si vous omettez ce paramètre, witadmin tente de détecter l’encodage et, si la détection échoue, witadmin utilise UTF-8.
/exportgloballists Exporte les définitions des listes globales référencées par le type d’élément de travail. Les définitions des listes globales seront incorporées dans le xml de définition de type d’élément de travail. Lorsqu’elles ne sont pas spécifiées, les définitions des listes globales sont omises.
/v Valide le code XML qui définit le type d’élément de travail, mais n’importe pas le fichier de définition XML. Remarque : Vous pouvez valider la définition de type sans spécifier de projet. Les références aux groupes délimités par le projet sont ignorées.
/new:NewName Nouveau nom du type d’élément de travail.
/noprompt Désactive l’invite de confirmation.
/? ou help Affiche de l’aide sur la commande dans la fenêtre d’invite de commandes.

Notes

Lorsque vous utilisez la destroywitd commande, elle détruit tous les objets suivants :

  • Type d’élément de travail
  • Tous les éléments de travail de ce type
  • Entrées correspondantes dans les tables d’éléments de travail, les tables de texte longues et les tables de liens
  • Objets dans le cache de métadonnées du type d’élément de travail

Exemples

Sauf indication contraire, les valeurs suivantes s’appliquent dans chaque exemple :

  • URI de la collection de projets : http://AdventureWorksServer:8080/tfs/DefaultCollection
  • Nom du projet : AdventureWorks
  • Nom du fichier d’entrée ou de sortie : myworkitems.xml
  • Nom du type d’élément de travail : myworkitem
  • Encodage par défaut : UTF-8

Exporter la définition d’un WIT

La commande suivante exporte la définition de myworkitem dans le fichier, myworkitems.xml.

witadmin exportwitd /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /p:AdventureWorks /f:myworkitems.xml /n:myworkitem  

L’exemple suivant exporte l’élément de travail à l’aide de l’encodage Unicode (UTF-7).

witadmin exportwitd /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /p:AdventureWorks /f:myworkitems.xml /n:myworkitem /e:utf-7  

Exporter la définition d’un WIT et de ses listes globales référencées

L’exemple suivant exporte le type d’élément de travail et ses listes globales référencées.

witadmin exportwitd /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /p:AdventureWorks /f:myworkitems.xml /n:myworkitem /exportgloballists  

Répertorier la définition d’un WIT

L’exemple suivant montre comment afficher la définition de l’élément de travail dans la fenêtre Invite de commandes.

witadmin exportwitd /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /p:AdventureWorks /n:myworkitem  

Importer la définition des WIT

L’exemple suivant importe la définition d’élément de travail à partir du fichier XML.

witadmin importwitd /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /f:myworkitem.xml /p:AdventureWorks  

Valider la définition XML d’un WIT

L’exemple suivant valide le code XML qui définit le type d’élément de travail, mais n’importe pas la définition.

witadmin importwitd /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /f:myworkitem.xml /p:AdventureWorks /v  

Questions et réponses

Q : Quelles personnalisations puis-je effectuer et utiliser l’Assistant Configurer les fonctionnalités pour mettre à jour mon projet après une mise à niveau ?

R : Vous pouvez ajouter des WIT personnalisés et modifier la disposition du formulaire. L’Assistant Configurer les fonctionnalités met à jour vos projets et vous aurez accès aux dernières fonctionnalités.

La modification du flux de travail ou le changement de nom d’un WIT peut nécessiter l’exécution d’opérations manuelles lors de la mise à jour de votre projet. Pour en savoir plus sur les personnalisations que vous pouvez effectuer en toute sécurité et que vous devez éviter, consultez Personnaliser l’expérience de suivi du travail : avant de personnaliser, comprenez les implications de maintenance et de mise à niveau.

Q : Comment faire modifier la couleur associée à un WIT ?

R : Dans le portail web, les éléments de travail s’affichent dans les résultats de la requête et dans les pages du backlog et du tableau des outils de planification Agile. Pour modifier la couleur associée à un WIT existant ou ajouter la couleur à utiliser pour un nouveau WIT, modifiez la configuration du processus.

Affectations de couleurs à différents types d’éléments de travail

Q : Comment faire désactiver ou désactiver un WIT ? Comment faire empêcher les utilisateurs de créer des éléments de travail d’un certain type ?

R : Si vous avez un type d’élément de travail que vous souhaitez mettre hors service, mais conservez les éléments de travail créés en fonction de ce type, vous pouvez ajouter une règle qui désactive tous les utilisateurs valides d’enregistrer le type d’élément de travail.

    <TRANSITION from=" " to="New">  
       <FIELDS>  
         <FIELD refname="System.CreatedBy">  
              <VALIDUSER not="[Team Project Name]Project Valid Users" />  
         </FIELD>  
       </FIELDS>  
    </TRANSITION>     

Si vous souhaitez restreindre la création d’un WIT spécifique à un groupe d’utilisateurs, il existe deux façons de restreindre l’accès :

  • Ajoutez le WIT au groupe Catégories masquées pour empêcher la majorité des contributeurs de les créer. Si vous souhaitez autoriser un groupe d’utilisateurs à accéder, vous pouvez créer un lien hypertexte vers un modèle qui ouvre le formulaire d’élément de travail et partager ce lien avec les membres de l’équipe que vous souhaitez créer.
  • Ajoutez une règle de champ au flux de travail du champ System.CreatedBy pour restreindre efficacement un groupe d’utilisateurs à la création d’un élément de travail d’un type spécifique. Comme l’illustre l’exemple suivant, l’utilisateur qui crée l’élément de travail doit appartenir à l’élément Allowed Group de travail pour enregistrer l’élément de travail.
<TRANSITION from=" " to="New">  
   <FIELDS>  
     <FIELD refname="System.CreatedBy">  
         <VALIDUSER for="Allowed Group" not="Disallowed Group" />  
     </FIELD>  
   </FIELDS>  
</TRANSITION>  

Q : Comment faire supprimer un WIT ?

R : Pour empêcher les membres de l’équipe d’utiliser un WIT spécifique pour créer un élément de travail, vous pouvez le supprimer du projet. Lorsque vous utilisez witadmin destroywitd, vous supprimez définitivement tous les éléments de travail créés à l’aide de ce WIT ainsi que le WIT lui-même. Par exemple, si votre équipe n’utilise pas l’obstacle, vous pouvez supprimer l’obstacle étiqueté WIT du projet de site web Fabrikam.

witadmin destroywitd /collection:"http://FabrikamPrime:8080/tfs/DefaultCollection" /p:"Fabrikam Web Site" /n:"Impediment"   

Lorsque vous supprimez un WIT qui appartient à une catégorie, vous devez mettre à jour la définition des catégories du projet pour refléter le nouveau nom. En particulier, les outils de planification Agile ne fonctionneront pas tant que vous ne mettez pas à jour la définition des catégories.

Pour plus d’informations, consultez Les catégories d’importation et d’exportation.