Partager via


Mapper les champs Microsoft Project sur les champs Team Foundation

Vous pouvez personnaliser la façon dans les champs d'élément de travail stockés dans Team Foundation sont mappés aux champs définis pour Microsoft Project. Vous pouvez modifier la façon dont des champs spécifiques sont publiés, et désigner le type de lien par défaut à utiliser lorsque vous créez des liens hiérarchiques ou d'arborescence, ainsi que des liens de dépendance.

Contrairement à Microsoft Excel, Microsoft Project utilise un ensemble limité de colonnes comprenant des colonnes prédéfinies telles que Nom de la tâche, et des champs personnalisés. Quand un utilisateur publie ou actualise des données d'élément de travail dans un fichier Microsoft Project, le mappage des champs détermine les champs de la base de données des éléments de travail qui correspondent aux colonnes dans Microsoft Project.

Vous pouvez personnaliser les mappages, par exemple, pour prendre en charge un champ que vous avez créé, ou mapper des champs à des colonnes prédéfinies plutôt qu'à des colonnes personnalisées. Pour obtenir une documentation complète sur le fichier de mappage des champs de Microsoft Project, consultez Ajouter ou modifier le mappage des champs Microsoft Project aux champs TFS.

Vous pouvez personnaliser le mappage en modifiant le fichier FileMapping.xml. Le tableau suivant récapitule les noms du fichier, le dossier et le plug-in pour les modèles de processus MSF (Microsoft Solutions Framework). Le plug-in contient la définition de la tâche qui charge le fichier vers la collection de projets d'équipe.

Nom du fichier :

FileMapping.xml

Nom du dossier :

Classification

Nom du plug-in :

Microsoft.ProjectCreationWizard.Classification

Pour plus d'informations, consultez Définir les zones et les itérations initiales dans le plug-in Classification.

Spécification de la façon dont les champs sont mappés

Vous spécifiez les champs mappés à l'aide de l'élément Mapping et de la structure de syntaxe suivante :

<Mappings>
   <Mapping WorkItemTrackingFieldReferenceName="System.Id" 
            ProjectField=""
            ProjectName=""
         ProjectUnits=""
         PublishOnly=""
         IfSummaryRefreshOnly=""/>
</Mappings>

Le tableau suivant décrit les attributs de l'élément Mapping.

Attribut

Description

WorkItemTrackingFieldReferenceName

Obligatoire. Spécifie le nom de référence d'un champ dans un type d'élément de travail.

ProjectField

Obligatoire. Spécifie le nom d'une colonne dans Microsoft Project. Spécifiez des noms de colonnes prédéfinis en faisant précéder le nom de « pj », par exemple, pjTaskName pour la colonne Nom de la tâche. Spécifiez les champs personnalisés en ajoutant un nombre à pjTaskText, par exemple, pjTaskText11.

ProjectName

Facultatif. Spécifie le nom à afficher comme nom de colonne pour l'utilisateur. Si cet attribut n'est pas spécifié, le nom du champ du type d'élément de travail est utilisé.

ProjectUnits

Facultatif. Spécifie le type d'unités à utiliser lorsque vous mappez un type de champ à Microsoft Project. Les valeurs valides sont pjMinute, pjHour, pjDay, pjWeek et pjMonthUnit.

PublishOnly

Facultatif. Si cet attribut a la valeur true, cela indique que le champ est publié dans la base de données des éléments de travail, mais pas actualisé. Cette valeur est généralement utilisée pour les champs calculés qui ne doivent pas être mis à jour dans Team Explorer. Si la valeur est false, cela indique que le champ est publié et actualisé. Par défaut, cet attribut a la valeur false.

Par défaut, seuls les champs Date de début et Date de fin ont cet attribut défini sur true.

IfSummaryRefreshOnly

Facultatif. Si la valeur est true, cela indique que le champ n'est jamais publié dans la base de données des éléments de travail, mais est actualisé à partir de celle-ci lorsque les conditions suivantes sont vérifiées :

  • La ligne pour le champ est une tâche récapitulative dans Microsoft Project.

  • Les valeurs Publier et Actualiser de la tâche récapitulative sont définies sur Yes.

  • La tâche récapitulative contient au moins une tâche enfant liée à Team Foundation Server.

Les mises à jour ou calculs effectués par Microsoft Project peuvent remplacer la valeur actualisée à partir de la base de données des éléments de travail dans le plan de projet. Toutefois, la valeur modifiée n'est jamais enregistrée dans la base de données des éléments de travail. Cet attribut est généralement utilisé pour les champs récapitulatifs qui, en cas de publication dans la base de données des éléments de travail, entraînent des incohérences de données.

Si la valeur est false, cela indique que le champ peut être publié et actualisé. Par défaut, cet attribut a la valeur false.

Notes

L'attribut IfSummaryRefreshOnly remplace l'attribut PublishOnly.Pour plus d'informations, consultez Personnaliser le fichier de mappage des champs Microsoft Project.

Par défaut, l'attribut IfSummaryRefreshOnly a la valeur true pour les champs Estimation d'origine, Travail restant et Travail effectué.

Spécification des champs utilisés pour la synchronisation, les liens et les pièces jointes

En plus de l'élément Mapping, deux autres éléments déterminent la façon dont les champs sont synchronisés et quel champ prend en charge les liens et les pièces jointes.

L'élément SyncField indique quelle colonne sert de champ de synchronisation. Le champ de synchronisation est intitulé « Publier et actualiser ». Il permet à l'utilisateur d'indiquer si une ligne de tâche est publiée ou seulement actualisée.

Vous utilisez la syntaxe XML suivante pour spécifier les mappages de colonnes sur le champ de synchronisation. Vous définissez l'attribut ProjectField à une colonne valide dans Microsoft Project.

<SyncField ProjectField="" />

L'élément LinksField spécifie la colonne des liens et pièces jointes. Grâce à cette colonne, les utilisateurs peuvent indiquer si une ligne de tâche donnée contient des liens ou des pièces jointes.

Vous utilisez la syntaxe XML suivante pour spécifier les mappages de colonnes aux champs de liens et de pièces jointes. Vous définissez l'attribut ProjectField à une colonne valide dans Microsoft Project.

<LinksField ProjectField="" />

Mappages de champs par défaut

L'exemple suivant montre comment le modèle de processus MSF for Agile Software Development mappe les champs des éléments de travail aux colonnes de Microsoft Project.

<?xml version="1.0" encoding="utf-8"?>
<MSProject>
  <Mappings>
    <Mapping WorkItemTrackingFieldReferenceName="System.AreaPath" ProjectField="pjTaskOutlineCode9" />
    <Mapping WorkItemTrackingFieldReferenceName="System.AssignedTo" ProjectField="pjTaskResourceNames" />
    <Mapping WorkItemTrackingFieldReferenceName="System.Id" ProjectField="pjTaskText10" ProjectName="Work Item ID" />
    <Mapping WorkItemTrackingFieldReferenceName="System.IterationPath" ProjectField="pjTaskOutlineCode10" />
    <Mapping WorkItemTrackingFieldReferenceName="System.Reason" ProjectField="pjTaskText14" />
    <Mapping WorkItemTrackingFieldReferenceName="System.Rev" ProjectField="pjTaskText23" />
    <Mapping WorkItemTrackingFieldReferenceName="System.State" ProjectField="pjTaskText13" ProjectName="State" />
    <Mapping WorkItemTrackingFieldReferenceName="System.Title" ProjectField="pjTaskName" />
    <Mapping WorkItemTrackingFieldReferenceName="System.WorkItemType" ProjectField="pjTaskText24" />
    <Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Common.Priority" ProjectField="pjTaskText19" ProjectName="Work Item Priority" />
    <Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Common.StackRank" ProjectField="pjTaskNumber1" />
    <Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Scheduling.CompletedWork" ProjectField="pjTaskActualWork" ProjectUnits="pjHour" IfSummaryRefreshOnly="true" />
    <Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Scheduling.FinishDate" ProjectField="pjTaskFinish" PublishOnly="true" />
    <Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Scheduling.OriginalEstimate" ProjectField="pjTaskBaselineWork" ProjectUnits="pjHour" IfSummaryRefreshOnly="true" />
    <Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Scheduling.RemainingWork" ProjectField="pjTaskRemainingWork" ProjectUnits="pjHour" IfSummaryRefreshOnly="true" />
    <Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Scheduling.StartDate" ProjectField="pjTaskStart" PublishOnly="true" />
    <LinksField ProjectField="pjTaskText26" />
    <SyncField ProjectField="pjTaskText25" />
  </Mappings>
</MSProject>

Voir aussi

Concepts

Définir les zones et les itérations initiales dans le plug-in Classification

Ajouter ou modifier le mappage des champs Microsoft Project aux champs TFS

Personnaliser le fichier de mappage des champs Microsoft Project