Partager via


Personnalisation du mappage de champs entre Project Server et Team Foundation Server

Pour synchroniser les données entre un plan de projet d'entreprise et un projet d'équipe, vous devez associer les champs des éléments de travail dans Visual Studio Team Foundation Server 2010 aux champs dans Microsoft Project Server 2007 ou Project Server 2010. Vous pouvez ajouter des champs et spécifier leur mode de synchronisation en personnalisant les mappages de champs. Vous pouvez mapper les champs intégrés et personnalisés dans Project. Par exemple, vous pouvez partager des données qui ne sont pas associées aux plannings (comme les centres de coûts, les noms d'équipe ou les états d'intégrité) si vous ajoutez aux mappages les champs qui stockent ces types de données.

Vous gérez un ensemble de mappages de champs pour chaque collection de projets d'équipe hébergeant des projets d'équipe à synchroniser avec Project Server. Vous devez définir les mappages de champs pour chaque collection de projets d'équipe mappée à une instance de Project Web Access ou Project Web App (PWA). Vous pouvez télécharger les mappages par défaut, ou vous pouvez personnaliser un fichier de mappage et le télécharger. Pour télécharger les mappages par défaut, consultez Télécharger des mappages plus loin dans cette rubrique.

Avertissement

Les mappages de l'intégration de Team Foundation Server et Project Server sont distincts du fichier de mappage de Microsoft Project. Pour plus d'informations, consultez Fichier de mappage de champs Microsoft Project.

Comme le montre l'illustration suivante, la personnalisation des mappages se déroule en cinq étapes :

Personnalisation des mappages de champs entre Team Foundation Server et Project Server

Workflow de personnalisation du mappage de champs PS-TFS

Important

Vous pouvez mettre à jour le fichier de mappage aussi souvent que vous le souhaitez. Les champs qui s'affichent sous l'onglet Project Server sont mis à jour pour chaque type d'éléments de travail qui participe à la synchronisation de données. Vous ne devez pas modifier manuellement les définitions sous l'onglet Project Server. Pour plus d'informations, consultez Personnaliser l'onglet Project Server plus loin dans cette rubrique.

Dans cette rubrique

  • Mappages par défaut

  • Déterminer les champs supplémentaires à mapper

  • Télécharger les mappages dans un fichier

  • Mettre à jour les mappages

  • Télécharger des mappages

  • Personnaliser l'onglet Project Server (facultatif)

Autorisations requises

Pour compléter les procédures dans cette rubrique, vous devez disposer du jeu d'autorisations Administrer Project Server Integration avec la valeur Autoriser. En outre, le compte de service de Team Foundation Server doit disposer de l'autorisation Administrer Project Server Integration. Pour plus d'informations, consultez Assignation des autorisations pour prendre en charge l'intégration entre Project Server et Team Foundation Server.

Mappages par défaut

Les mappages déterminent les champs à synchroniser lorsqu'un utilisateur met à jour les informations dans Team Foundation ou Project Server. Chacun des types de synchronisation suivants possède son propre ensemble de mappages :

  • Pour la synchronisation des publications, les données présentes dans Project Server mettent à jour les données présentes dans Team Foundation. Utilisez l'élément targetToTfs pour spécifier le champ de Project Server qui doit mettre à jour le champ dans Team Foundation.

  • Pour la synchronisation des états, les données dans Team Foundation sont envoyées à la file d'attente d'état de Project Server. Utilisez l'élément tfsToTarget pour spécifier le champ qui doit mettre à jour le champ de file d'attente d'état de Project Server.

Pour plus d'informations sur ces deux types de synchronisation, consultez Vue d'ensemble du processus de synchronisation pour Team Foundation Server et Project Server Integration.

Le tableau suivant répertorie l'ensemble par défaut des champs mappés entre Team Foundation et Project Server. La table indique également les types d'éléments de travail qui utilisent les champs en fonction des trois modèles de projet de Microsoft Solutions Framework (MSF). Vous ne devez pas modifier ces mappages si vous effectuez un mappage vers un projet d'équipe créé à l'aide d'un modèle de processus basé sur Agile Software Development v5.0 ou Capability Maturity Model Integration (CMMI) Process Improvement v5.0. Si vous effectuez un mappage à un projet d'équipe créé à l'aide du modèle de processus Scrum 1.0, vous devrez effectuer des modifications comme le décrit la section Modifier des mappages de champs lors du mappage à un projet d'équipe été créé à l'aide du modèle de processus Scrum 1.0 plus loin dans cette rubrique.

Pour plus d'informations sur les mappages et le processus de synchronisation, consultez Référence des éléments XML du mappage de champs pour l'intégration de Team Foundation Server et Project Server.

Champ Team Foundation

Champ Project Server

Champ de file d'attente d'état

Types d'éléments de travail Agile 5.0

Types d'éléments de travail CMMI 5.0

Types d'éléments de travail Scrum 1.0

Titre

Nom de la tâche

Titre

Tous

Tous

Tout sauf Sprint

Assigné à

Ressources

Ressources

Tous

Tous

Tout sauf Sprint

Travail effectué

Travail réel des tâches

Travail réel des ressources

Tâche

Tâche

Aucun

Travail restant

Travail restant des tâches

Travail restant des ressources

Tâche

Tâche

Tâche

Estimation d'origine

Travail planifié

Travail planifié

Tâche

Bogue, Demande de modification, Problème, Spécification, Risque et Tâche

Aucun

Date de début

Démarrage des tâches

Démarrage des ressources

Tâche et récit utilisateur

Tâche et spécification

Sprint

Date de fin

Fin de la tâche

Fin de la ressource

Tâche et récit utilisateur

Tâche et spécification

Sprint

Retour au début

Ajout de champs aux types d'éléments de travail lors d'un mappage vers un projet d'équipe ayant été créé à partir du modèle de processus Scrum 1.0

Étant donné que le modèle de processus Scrum 1.0 n'utilise pas les champs Travail effectué et Estimation d'origine, vous devez ajouter ces champs aux types d'éléments de travail que vous souhaitez inclure dans la synchronisation de données. Vous pouvez, par exemple, ajouter les champs inutilisés au type de tâche d'un élément de travail.

Pour ajouter ces champs, vous devez exporter le type de tâche d'un élément de travail du projet d'équipe, puis, pour chaque champ, ajouter un élément FIELD dans la section FIELDS. Vous pouvez également ajouter un élément Control dans la section FORM. Vous pouvez ajouter les éléments FIELD suivants :

<FIELD name="Completed Work" refname="Microsoft.VSTS.Scheduling.CompletedWork" type="Double" reportable="measure" formula="sum">
   <HELPTEXT>The number of units of work that have been spent on this task</HELPTEXT>
</FIELD>
<FIELD name="Original Estimate" refname="Microsoft.VSTS.Scheduling.OriginalEstimate" type="Double" reportable="measure" formula="sum">
   <HELPTEXT>Initial value for Remaining Work - set once, when work begins. </HELPTEXT>
</FIELD>

Vous pouvez également ajouter les éléments Control suivants :

<Control FieldName="Microsoft.VSTS.Scheduling.OriginalEstimate" Type="FieldControl" Label="Original Estimate:" LabelPosition="Left" />
<Control FieldName="Microsoft.VSTS.Scheduling.CompletedWork" Type="FieldControl" Label="Completed:" LabelPosition="Left" />

Pour plus d'informations, consultez Exporter et importer des types d'éléments de travail à partir d'un projet existant, Définition des champs d'éléments de travail et Conception et personnalisation d'un formulaire d'élément de travail.

Retour au début

Déterminer les champs supplémentaires à mapper

Déterminez les informations suivantes pour chaque champ à synchroniser en plus des champs par défaut :

  • Nom de référence du champ dans Team Foundation. Si vous souhaitez synchroniser un champ dans Project Server avec un champ à créer dans Team Foundation, créez d'abord le champ dans chaque type d'éléments de travail que vous synchronisez. Pour plus d'informations, consultez Utilisation de champs système et de champs définis par les modèles de processus MSF et Définition des champs d'éléments de travail.

  • Nom du champ dans Project Server qui doit mettre à jour le champ dans Team Foundation. Pour obtenir la liste des champs disponibles, consultez Restrictions du mappage des champs Project Server pour l'intégration avec Team Foundation Server.

  • Le nom du champ à mettre à jour dans Project Server et le nom du champ Project Server qui doit mettre à jour le champ mis en miroir dans Team Foundation Server.

  • Indique si les champs doivent s'afficher dans le formulaire d'élément de travail. Vous affectez à l'attribut displayTfsField la valeur true pour les champs que vous souhaitez voir apparaître dans le formulaire d'élément de travail. Vous affectez à l'attribut displayTfsMirror la valeur true pour le formulaire d'élément de travail.

  • Indique si les conflits de données doivent être résolus en autorisant la valeur du champ dans Team Foundation à remplacer la valeur du champ dans Project Server ou à conserver les deux valeurs. Ce choix détermine la valeur de l'attribut onConflict. Lorsque onConflict=”PsWins” est défini, la valeur du champ dans Project Server remplace la valeur du champ dans Team Foundation. Pour plus d'informations, consultez Éléments et attributs des champs.

  • Valeurs supplémentaires que vous devez définir pour prendre en charge les listes de sélection ou les tables de correspondance personnalisées dans Project Server.

Retour au début

Restrictions liées aux données qui peuvent être mappées

Une fois que vous avez déterminé les champs que vous souhaitez mapper, notez les restrictions suivantes :

  • Vous pouvez envoyer des informations au niveau de la tâche, champs pjTask*, que Project Server vers Team Foundation Server.

  • Vous pouvez envoyer des informations au niveau de la ressource, champs pjResource*, que de Team Foundation Server vers la file d'attente d'état de Project Server.

  • Le champ Titre est le seul champ que vous pouvez envoyer à la fois à Team Foundation Server et à la file d'attente d'état.

  • Le correctif cumulatif est calculé automatiquement pour les champs Assigné à, Travail effectué et Travail restant. Vous ne pouvez pas mapper de champs supplémentaires et calculer leur correctif cumulatif. Pour plus d'informations, consultez Utilisation d'un correctif cumulatif de ressource dans les projets d'entreprise mappés aux projets d'équipe.

  • Vous devez vous assurer que les types de données ou les unités de chaque champ mappé respectent les critères de mappage de champs pour les champs d'entreprise standard et personnalisés. Pour plus d'informations, consultez la section « Types de données et critères de mappage de champs » dans Restrictions du mappage des champs Project Server pour l'intégration avec Team Foundation Server.

  • Vous pouvez mapper des champs associés aux listes de choix dans Team Foundation. Toutefois, vous devez créer des tables de correspondance dans Project Server correspondant à ces listes de choix. Vous ne pouvez pas synchroniser automatiquement les listes de choix avec les tables de correspondance.

Pour plus d'informations, consultez Restrictions du mappage des champs Project Server pour l'intégration avec Team Foundation Server.

Retour au début

Exemple : Mappage du nom de l'équipe à afficher dans Project

Dans l'exemple suivant, le champ de chaîne personnalisé dans Team Foundation, MyCompany.MyOrg.DevTeamName, est mappé à un champ de texte personnalisé d'entreprise dans Project Server, pjMyCompanyTeamName. Vous pouvez utiliser cet exemple pour afficher dans Project Professional le nom de l'équipe associée à une tâche.

<field tfsName="MyCompany.MyOrg.DevTeamName" tfsMirrorName="Mirror.MyCompany.MyOrg.DevTeamName" displayTfsField="false" displayTfsMirror="false" onConflict="DoNothing">
   <tfsToTarget>
   v<target provider="ProjectServerStatusQueue" name=" pjMyCompanyTeamName" />
   </tfsToTarget>
   <targetToTfs>
      <target provider="ProjectServerPublished" name=" pjMyCompanyTeamName" />
   </targetToTfs>
</field>

Aucun des deux champs ne s'affiche sur le formulaire d'élément de travail. En outre, si les valeurs ne correspondent pas, chaque champ conserve sa propre valeur.

Retour au début

Exemple :Affichage des chemins de zone et d'itération dans Project

Vous pouvez mapper les champs Zone (System.AreaPath) et Itération (System.IterationPath) dans Team Foundation, afin qu'ils soient visibles dans vos plans de projet. Comme les champs de ce chemin d'accès de l'arborescence sont fréquemment soumis à des modifications, vous devez les mapper comme des champs de texte dans Project. Les chefs de projet qui utilisent ces champs doivent entrer manuellement le chemin de zone ou chemin d'itération complet.

Important

L'implémentation actuelle de l'intégration de Visual Studio Team Foundation Server 2010 à Project Server ne prend pas en charge la synchronisation automatique des listes de valeurs autorisées, des listes de sélection, des listes globales ou des listes de chemins d'accès de l'arborescence définies pour les champs mappés entre les deux produits serveurs. Pour obtenir des résultats optimum, vous devez effectuer les entrées manuellement dans le plan de projet pour établir une correspondance avec celles dans Team Foundation. Si vous spécifiez une entrée qui n'est pas valide, une boîte de dialogue de validation s'affiche lorsque vous publiez le plan.

Pour ajouter les champs Zone et Itération dans un plan de projet, exécutez les actions suivantes :

  1. Ajoutez deux champs d'entreprise personnalisés dans Project Server et nommez-les Zone (TFS) et Itération (TFS).

    Pour plus d'informations, consultez la page suivante sur le site Web Microsoft : Creating Lookup Tables and Enterprise Custom Fields.

  2. Exportez les mappages de champs de la collection de projets d'équipe dans laquelle les projets d'équipe sont définis.

    Pour plus d'informations, consultez Télécharger les mappages dans un fichier plus loin dans cette rubrique.

  3. Ajoutez le code suivant au fichier :

    <field tfsName="System.AreaPath" tfsMirrorName="Mirror.System.AreaPath" displayTfsField="true" displayTfsMirror="true">
            <tfsToTarget>
              <target provider="ProjectServerStatusQueue" name="Area (TFS)" />
            </tfsToTarget>
            <targetToTfs>
              <target provider="ProjectServerPublished" name="Area (TFS)" />
            </targetToTfs>
          </field>
          <field tfsName="System.IterationPath" tfsMirrorName="Mirror.System.IterationPath" displayTfsField="false" displayTfsMirror="false">
            <tfsToTarget>
              <target provider="ProjectServerStatusQueue" name="Iteration (TFS)" />
            </tfsToTarget>
            <targetToTfs>
              <target provider="ProjectServerPublished" name="Iteration (TFS)" />
            </targetToTfs>
          </field>
    
  4. Importez le fichier des mappages de champs mis à jour comme le décrit la section Télécharger des mappages plus loin dans cette rubrique.

  5. Synchronisez votre plan de projet avec Project Server.

  6. Ajouter les deux nouvelles colonnes des nouveaux champs, Zone (TFS) et Itération (TFS), à votre plan de projet

Les modifications effectuées aux champs Zone et Itération dans Team Foundation seront synchronisées avec les champs de votre plan de projet. En outre, vous pouvez mettre à jour ces champs dans Project et publier les modifications apportées à Team Foundation, si vous spécifiez des valeurs définies dans Team Foundation.

Retour au début

Télécharger les mappages dans un fichier

Notes

Vous ne pouvez télécharger que les mappages d'une collection de projets d'équipe dans laquelle ils ont été téléchargés. Si vous souhaitez télécharger les mappages par défaut dans un fichier, vous devez d'abord télécharger les mappages par défaut, comme le décrit la section Pour télécharger les mappages par défaut plus loin dans cette rubrique. Sinon, vous pouvez copier le contenu des mappages par défaut. Pour plus d'informations, consultez Default Field Mappings.

Pour télécharger les mappages dans un fichier

  1. Sur un ordinateur qui exécute Team Explorer et Service Pack 1 de Visual Studio Team Foundation Server 2010, ouvrez une fenêtre d'invite de commandes et accédez au répertoire qui contient l'outil de ligne de commande TFSAdmin.

    Par défaut, l'outil se trouve dans Lecteur>:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE. Sur les ordinateurs 64 bits, l'outil se trouve dans Lecteur:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE.

  2. À l'invite de commandes, entrez la commande suivante, puis appuyez sur Entrée.

    TfsAdmin ProjectServer /DownloadFieldMappings /collection:tpcUrl /filepath:MappingFile 
    

    Remplacez Urlcpe par l'adresse Web (URL) de la collection de projets d'équipe et remplacez FichierMappage par le chemin d'accès et le nom du fichier à personnaliser.

  3. Attendez que les messages suivants s'affichent :

    Téléchargement de FichierMappage dans la collection de projets d'équipe Urlcpe.

    Vous avez correctement téléchargé le fichier de mappage de champs FichierMappage dans la collection de projets d'équipe Urlcpe.

Retour au début

Mettre à jour les mappages

Pour chaque champ à ajouter au fichier de mappage, spécifiez l'élément field, ainsi que ses sous-éléments et attributs. Pour plus d'informations, consultez Référence des éléments XML du mappage de champs pour l'intégration de Team Foundation Server et Project Server.

Retour au début

Télécharger les mappages

Pour télécharger les mappages, utilisez la commande UploadFieldMappings. Vous pouvez télécharger les mappages par défaut à l'aide de l'option /usedefaultfieldmapping. Sinon, vous devez spécifier un fichier qui contient les éléments de mappage.

Pour télécharger les mappages par défaut

  1. À l'invite de commandes, entrez la commande suivante, puis appuyez sur Entrée.

    TfsAdmin ProjectServer /UploadFieldMappings /collection:tpcUrl /usedefaultfieldmappings
    

    Remplacez Urlcpe par l'URL de la collection de projets d'équipe.

  2. Attendez que les messages suivants s'affichent :

    Téléchargement des mappages de champs par défaut vers UriCollection.

    Vous avez correctement téléchargé les mappages de champs vers la collection UriCollection.

Pour télécharger les mappages à partir d'un fichier

  1. À l'invite de commandes, tapez la commande suivante, puis appuyez sur ENTRÉE.

    TfsAdmin ProjectServer /UploadFieldMappings /collection:tpcUrl /filepath:MappingFile /force
    

    Remplacez Urlcpe par l'URL de la collection de projets d'équipe et remplacez FichierMappage par le chemin d'accès et le nom de votre fichier de mappage personnalisé. Spécifiez /force si vous mettez à jour les mappages existants.

  2. Attendez que les messages suivants s'affichent :

    Téléchargement de FichierMappage vers la collection de projets d'équipe Urlcpe.

    Vous avez correctement téléchargé le fichier de mappage de champs FichierMappage vers la collection de projets d'équipe Urlcpe.

Retour au début

Personnaliser l'onglet de Project Server

Lorsque vous associez un plan de projet d'entreprise à un projet d'équipe, l'onglet Project Server est ajouté au formulaire d'élément de travail, comme le montre l'illustration suivante. L'onglet est ajouté uniquement aux types des éléments de travail que vous spécifiez pour participer à la synchronisation de données. Personnalisez cet onglet en affectant aux attributs displayTfsField ou displayTfsMirror la valeur true pour les champs que vous souhaitez voir apparaître dans le formulaire.

Onglet Project Server

Champs par défaut de l'onglet Project Server

Important

Les mappages de champs qui sont définis pour la collection de projets d'équipe déterminent les champs qui doivent s'afficher sous l'onglet Project Server. Une fois que cet onglet été ajouté à un type d'élément de travail pour un projet d'équipe, vous pouvez le mettre à jour en modifiant les mappages de champs de la collection. Si vous personnalisez manuellement le formulaire d'élément de travail en ajoutant des champs à l'onglet Project Server ou en modifiant son emplacement dans le formulaire, l'onglet pourra ne pas être mis à jour automatiquement lors des futures modifications apportées aux mappages de champs. Si cela se produit, vous pouvez modifier l'onglet manuellement.

Pour plus d'informations sur chaque champ par défaut qui s'affiche sous l'onglet Project Server, consultez Champs Project Server ajoutés pour prendre en charge la synchronisation de données.

Retour au début

Voir aussi

Autres ressources

Spécification des types d'éléments de travail à synchroniser

Configuration de l'intégration de Team Foundation Server et Project Server

Administration de l'intégration de Team Foundation Server et Project Server