Freigeben über


XML-Elementverweis für Feldzuordnungen für die Integration von Team Foundation Server und Project Server

Aktualisiert: April 2011

Durch das Anpassen der Feldzuordnungen können Sie festlegen, welche Felder in Visual Studio Team Foundation Server 2010 und Project Server synchronisiert bleiben sollen und welche Felder in der Statuswarteschlange für Project Server und in Team Foundation aktualisiert werden.

Tipp

Die Feldzuordnungen für die Integration von Team Foundation Server in Project Server unterscheiden sich von der Feldzuordnungsdatei für Microsoft Project. Weitere Informationen zu dieser Datei finden Sie unter Microsoft Project-Feldzuordnungsdatei.

Sie verwalten einen Satz von Feldzuordnungen für jede Teamprojektsammlung, die Teamprojekte hostet, die Sie mit Project Server synchronisieren möchten. Um die Feldzuordnungen abzurufen, können Sie sie aus der Teamprojektsammlung in eine Datei herunterladen. Nachdem Sie die Datei geändert haben, können Sie sie in die Teamprojektsammlung hochladen, und die Änderungen werden auf alle Teamprojekte angewendet, die für diese Sammlung definiert sind. Weitere Informationen zum Herunterladen oder Hochladen von Feldzuordnungen finden Sie unter Anpassen von Feldzuordnungen zwischen Project Server und Team Foundation Server.

In diesem Thema

  • Pflichtfelder

  • Standardfelder, die zugeordnet werden

  • Zuordnen von Elementen und Attributen

  • Standardfeldzuordnungen

Pflichtfelder

Zur Unterstützung der Datensynchronisierung müssen die folgenden Felder zugeordnet werden. Wenn Sie die Felder angepasst haben, die zum Planen der Arbeit verwendet werden, müssen Sie die Feldzuordnungen anpassen, damit sie auf die Felder verweisen, die Sie verwenden.

  • PjTaskName muss System.Title zugeordnet sein.

  • PjResourceNames muss System.AssignedTo zugeordnet sein.

  • Das Feld, das Sie in Team Foundation zum Nachverfolgen des Arbeitsbeginns verwenden, muss pjTaskStart zugeordnet sein. Standardmäßig lautet dieses Feld Microsoft.VSTS.Scheduling.StartDate.

  • Das Feld, das Sie in Team Foundation zum Nachverfolgen abgeschlossener Arbeit verwenden, muss pjTaskFinish zugeordnet sein. Standardmäßig lautet dieses Feld Microsoft.VSTS.Scheduling.FinishDate.

Zurück nach oben

Standardfelder, die zugeordnet werden

Sie können für jedes Feld in Team Foundation zwei Zuordnungen angeben. In der ersten Zuordnung geben Sie das Feld in Project an, das vom Feld in Team Foundation in der Statuswarteschlange aktualisiert wird. In der zweiten Zuordnung geben Sie das Feld in Project an, das das Feld in Team Foundation aktualisiert. Außerdem können Sie angeben, ob das Feld in Team Foundation im Arbeitsaufgabenformular angezeigt wird und wie Aktualisierungen an Referenz- und Spiegelfeldern vorgenommen werden.

Standardmäßig werden alle zugeordneten Projektfelder auch gespiegelt, was bedeutet, dass deren Werte in Team Foundation gespeichert werden.

Wichtig

In den meisten Konfigurationen dürfen Sie die Standardfeldzuordnungen nicht entfernen, da sie für die Synchronisierung benötigt werden. Beispielsweise dürfen Sie die Standardzuordnungen nicht entfernen, wenn der Enterprise-Projektplan einem Teamprojekt zugeordnet ist, das aus einer Prozessvorlage erstellt wurde, die auf Microsoft Solutions Framework (MSF) for Agile Software Development, Version 5.0, oder Capability Maturity Model Integration (CMMI) Process Improvement, Version 5.0, basiert.

Wenn der Plan jedoch einem Teamprojekt zugeordnet wird, das mithilfe der MSF-Scrum 1.0-Prozessvorlage erstellt wurde, müssen Sie möglicherweise einige Standardzuordnungen entfernen. Wenn die Projektsammlung nur Teamprojekte enthält, die mit der Scrum-Vorlage erstellt wurden, wird beim Konfigurieren der beiden Serverprodukte möglicherweise ein Fehler ausgegeben. Optimale Ergebnisse erzielen Sie, indem Sie den Arbeitsaufgaben, die Sie zuordnen möchten, die Felder Abgeschlossene Arbeit (Microsoft.VSTS.Scheduling.CompletedWork) und Ursprüngliche Schätzung (Microsoft.VSTS.Scheduling.OriginalEstimate) hinzufügen. Weitere Informationen finden Sie unter Hinzufügen von Feldern zu Arbeitsaufgabentypen beim Zuordnen einem Teamprojekt, das anhand der Scrum 1.0-Prozessvorlage erstellt wurde.

In der folgenden Tabelle werden die Standardzuordnungen für Felder in Team Foundation beschrieben. Sie können angeben, wie Referenz- und Spiegelfelder aktualisiert werden sollen. Sie können OnConflict auf PSWins festlegen, um den Wert in Team Foundation mit dem Wert aus Project Server zu überschreiben. Wenn Sie das OnConflict-Attribut nicht angegeben lassen, bleiben die Werte in den Feldern unterschiedlich. Weitere Informationen finden Sie weiter unten in diesem Thema in der Tabelle Field-Elemente und -Attribute.

Weitere Informationen zu Spiegelfeldern und den drei Synchronisierungstypen finden Sie unter Übersicht zum Synchronisierungsprozess für die Integration von Team Foundation Server und Project Server.

Team Foundation-Feld

Project-Feld

Anzeigen eines Felds auf der Project Server-Registerkarte des Arbeitsaufgabenformulars (displayTfsField)

Anzeigen eines Spiegelfelds auf der Project Server-Registerkarte des Arbeitsaufgabenformulars (displayTfsMirror)

Feldaktualisierungen (OnConflict)

Titel

Aufgabenname

Nein

Nein

Der Wert in Team Foundation wird durch den Wert in Project Server ersetzt.

Zugewiesen an

Ressourcen

Nein

Nein

Der Wert in Team Foundation wird durch den Wert in Project Server ersetzt.

Verbleibende Arbeit

Ressource – verbleibende Arbeit (Statuswarteschlange)

Aufgabe – verbleibende Arbeit (Project Server)

Ja

Ja

Jeder Wert wird beibehalten.

Abgeschlossene Arbeit

Ressource – aktuelle Arbeit (Statuswarteschlange)

Aufgabe – aktuelle Arbeit (Project Server)

Ja

Ja

Jeder Wert wird beibehalten.

Ursprüngliche Schätzung

Geplante Arbeit

Nein

Ja

Der Wert in Team Foundation wird durch den Wert in Project Server ersetzt.

Startdatum

Ressource – Anfang (Statuswarteschlange)

Aufgabe –Anfang (Project Server)

Nein

Nein

Der Wert in Team Foundation wird durch den Wert in Project Server ersetzt.

Enddatum

Ressource – Abschluss (Statuswarteschlange)

Aufgabe – Abschluss (Project Server)

Nein

Nein

Der Wert in Team Foundation wird durch den Wert in Project Server ersetzt.

Sie können auf der Registerkarte Project Server eines Arbeitsaufgabenformulars in Team Foundation mehrere Project-Felder anzeigen, wenn Sie diese den Feldzuordnungen hinzufügen. Weitere Informationen zu dieser Registerkarte finden Sie unter Für die Unterstützung der Datensynchronisierung hinzugefügte Project Server-Felder.

Zurück nach oben

Zuordnen von Elementen und Attributen

Sie geben mit einem field-Element ein Verweisfeld in Team Foundation an, das synchronisiert werden soll. Alle field-Elemente befinden sich in den Containerelementen mappingFile, persistables und Microsoft.TeamFoundation.Sync.Mapping.Impls.FieldMapping.

Wichtig

Stellen Sie beim Zuordnen eines Felds aus Team Foundation Server zu Project Server sicher, dass die Datentypen dieser Felder übereinstimmen. Andernfalls kann beim Hochladen der Feldzuordnungen der folgende Fehler auftreten:

Der Index, basierend auf 0 (null), muss größer oder gleich null sein und kleiner als die Größe der Argumentliste.

Weitere Informationen finden Sie unter Datentypen und Feldzuordnungskriterien .

Im folgenden Beispiel wird die Schachtelungsstruktur von XML-Elementen gezeigt. Informationen zum Anzeigen der Standardzuordnungen finden Sie unter Standardzuordnungsdatei weiter unten in diesem Thema.

<mappingFile>
   <persistables>
      <Microsoft.TeamFoundation.Sync.Mapping.Impls.FieldMapping>
         <field tfsName="System.Title" tfsMirrorName="Mirror.System.Title" displayTfsField="false" displayTfsMirror="false" onConflict="PSWin">
            <tfsToTarget>
               <target provider="ProjectServerStatusQueue" name="pjTaskName" />
            </tfsToTarget>
            <targetToTfs>
               <target provider="ProjectServerPublished" name="pjTaskName" />
            </targetToTfs>
         </targetToTfs>
      </field>

         . . .

    </Microsoft.TeamFoundation.Sync.Mapping.Impls.FieldMapping>
  </persistables>
</mappingFile>

Feldelementsyntax

Die folgende Syntax definiert die Attribute des field-Elements:

<field tfsName="FieldName" tfsMirrorName="FieldMirrorName" displayTfsField="true | false" displayTfsMirror=" true | false" onConflict="PSWin">

Syntax des target-Elements

Die folgende Syntax definiert die Attribute des target-Elements:

<target provider="ProviderName" name="ProjectFieldName" />

Um den Feldnamen zu bestimmen, stellen Sie dem verketteten Anzeigenamen "pj" voran. Der Feldname für Status-Manager ist z. B. pjStatusManager, und der Feldname für Benutzerdefiniert 01 ist pjCustom01.

Zurück nach oben

field-Elemente und -Attribute

In der folgenden Tabelle werden die Unterelemente und Attribute des field-Elements beschrieben. Sie ordnen ein Team Foundation-Feld einem Project-Ressourcenfeld zu, dessen Wert bei der Statussynchronisierung aktualisiert werden soll. Sie ordnen ein Team Foundation-Feld einem Projektaufgabenfeld zu, durch dessen Wert Team Foundation Server bei der Veröffentlichungssynchronisierung aktualisiert wird. Zudem müssen die Einheiten der Felder, die Sie zuordnen, den festgelegten Kriterien entsprechen. Weitere Informationen finden Sie unter Einschränkungen bei der Zuordnung von Project Server-Feldern für die Integration in Team Foundation Server.

Element

Attribut

Beschreibung

field

Gibt das Feld in Team Foundation an, das zugeordnet werden soll, und gibt an, wie das Feld zugeordnet werden soll.

tfsName

Gibt den Verweisnamen des zu synchronisierenden Felds in Team Foundation an. Sie müssen ein Feld angeben, das in der Teamprojektsammlung definiert ist. Sie können alle Felder in einer Teamprojektsammlung aufführen, indem Sie den witadmin listfields-Befehl ausführen. Weitere Informationen finden Sie unter Verwalten von Arbeitsaufgabenfeldern [witadmin].

tfsMirrorName

Erforderlich. Gibt den Verweisnamen an, unter dem den Wert des Project Server-Felds in Team Foundation Server gespeichert werden soll. Sie können dem Verweisnamen "Mirror" voranstellen. Sie können z. B. Mirror.System.Title für System.Title angeben.

HinweisHinweis
Von Ihnen angegebene Spiegelfelder werden automatisch erstellt.Sie müssen der Typdefinition einer Arbeitsaufgabe keine Spiegelfelder hinzufügen.

displayTfsField

Optional. Standardmäßig ist dieses Attribut auf true festgelegt. Wenn dieses Attribut auf true festgelegt ist, wird das Feld auf der Registerkarte Project Server des Arbeitsaufgabenformulars in Team Foundation angezeigt. Wenn dieses Attribut auf false festgelegt ist, wird das Feld nicht im Formular angezeigt. Standardmäßig werden im Formular nur die Felder Abgeschlossene Arbeit und Verbleibende Arbeit angezeigt.

displayTfsMirror

Optional. Standardmäßig ist dieses Attribut auf true festgelegt. Wenn dieses Attribut auf true festgelegt ist, wird das Feld auf der Registerkarte Project Server des Arbeitsaufgabenformulars in Team Foundation angezeigt. Wenn dieses Attribut auf false festgelegt ist, wird das Feld nicht im Formular angezeigt.

onConflict

Optional. Gibt an, wie das Synchronisierungsmodul Referenz- und Spiegelfelder aktualisiert. Der einzig gültige Wert ist PSWin.

Wenn dieses Attribut auf PSWin festgelegt ist und der aktuelle Wert, der aus Project Server veröffentlicht wird, vom Wert im Spiegelfeld abweicht, wird der Wert des Felds aktualisiert.

Wenn Sie dieses Attribut nicht definieren, geben Sie an, dass doppelte Buchführung verwendet werden soll. Das heißt, der Wert in Project kann vom Wert in Team Foundation abweichen. Die Werte der Felder "Titel", "Zugewiesen an", "Startdatum" und "Enddatum" werden standardmäßig immer durch die Werte in Project ersetzt. Standardmäßig wird nur für die Felder Abgeschlossene Arbeit und Verbleibende Arbeit die doppelte Buchführung verwendet.

tfsToTarget

Gibt den Namen des Felds in Project an, das von Team Foundation aktualisiert wird.

target

Gibt das Ziel an, das Aktualisierungen von Team Foundation empfangen soll.

provider

Gibt den Namen des Aktualisierungsanbieters an. Für tfsToTarget ist ProjectServerStatusQueue der einzige gültige Wert.

name

Gibt den Namen des Project-Felds an, das mit dem Wert in Team Foundation aktualisiert wird. In Project Server können Sie nur integrierte oder benutzerdefinierte Enterprise-Felder zuordnen. Eine Liste der verfügbaren Felder finden Sie unter Fields Available for Mapping to the Status Queue.

targetToTfs

Gibt die Feldzuordnung zum Synchronisieren von Aktualisierungen in Project Server mit Team Foundation Server an.

target

Gibt das Ziel an, das Aktualisierungen von Project Server empfangen soll.

provider

Gibt den Namen des Aktualisierungsanbieters an. Für targetToTfs ist der einzige gültige Wert ProjectServerPublished.

name

Gibt den Namen des Felds in Project an, von dem das Feld in Team Foundation aktualisiert wird. Sie können nur integrierte oder benutzerdefinierte Enterprise-Felder zuordnen. Eine Liste der verfügbaren Felder finden Sie unter Fields Available for Mapping from Project Server to Team Foundation Only.

Zurück nach oben

Standardzuordnungen

Im folgenden Code werden die Standardfeldzuordnungen aufgeführt, die definiert werden, wenn Sie den TfsAdmin ProjectServer /UploadFieldMappings-Befehl ausführen und die /useDefaultFieldMappings-Option angeben. Sie können diese Zuordnungen in eine Datei herunterladen und dieser dann Elemente hinzufügen oder die Attribute der aufgeführten Felder ändern.

Eine Liste aller Felder, die einem Typ von Arbeitsaufgabe hinzugefügt werden, wenn Sie diesen Typ in die Datensynchronisierung einbeziehen, finden Sie unter Für die Unterstützung der Datensynchronisierung hinzugefügte Project Server-Felder.

<mappingFile>
  <persistables>
    <Microsoft.TeamFoundation.Sync.Mapping.Impls.FieldMapping>
      <field tfsName="System.Title" tfsMirrorName="Mirror.System.Title" displayTfsField="false" displayTfsMirror="false" onConflict="PSWin">
        <tfsToTarget>
          <target provider="ProjectServerStatusQueue" name="pjTaskName" />
        </tfsToTarget>
        <targetToTfs>
          <target provider="ProjectServerPublished" name="pjTaskName" />
        </targetToTfs>
      </field>
      <field tfsName="System.AssignedTo" tfsMirrorName="Mirror.System.AssignedTo" displayTfsField="false" displayTfsMirror="false" onConflict="PSWin">
        <tfsToTarget>
          <target provider="ProjectServerStatusQueue" name="pjTaskResourceNames" />
        </tfsToTarget>
        <targetToTfs>
          <target provider="ProjectServerPublished" name="pjTaskResourceNames" />
        </targetToTfs>
      </field>
      <field tfsName="Microsoft.VSTS.Scheduling.CompletedWork" tfsMirrorName="Mirror.Microsoft.VSTS.Scheduling.CompletedWork" displayTfsField="true" displayTfsMirror="true">
        <tfsToTarget>
          <target provider="ProjectServerStatusQueue" name="pjResourceActualWork" />
        </tfsToTarget>
        <targetToTfs>
          <target provider="ProjectServerPublished" name="pjTaskActualWork" />
        </targetToTfs>
      </field>
      <field tfsName="Microsoft.VSTS.Scheduling.RemainingWork" tfsMirrorName="Mirror.Microsoft.VSTS.Scheduling.RemainingWork" displayTfsField="true" displayTfsMirror="true">
        <tfsToTarget>
          <target provider="ProjectServerStatusQueue" name="pjResourceRemainingWork" />
        </tfsToTarget>
        <targetToTfs>
          <target provider="ProjectServerPublished" name="pjTaskRemainingWork" />
        </targetToTfs>
      </field>
      <field tfsName="Microsoft.VSTS.Scheduling.OriginalEstimate" tfsMirrorName="Mirror.Microsoft.VSTS.Scheduling.OriginalEstimate" displayTfsField="false" displayTfsMirror="true" onConflict="PSWin">
        <targetToTfs>
          <target provider="ProjectServerPublished" name="pjTaskBaselineWork" />
        </targetToTfs>
      </field>
      <field tfsName="Microsoft.VSTS.Scheduling.StartDate" tfsMirrorName="Mirror.Microsoft.VSTS.Scheduling.StartDate" displayTfsField="false" displayTfsMirror="false" onConflict="PSWin">
        <tfsToTarget>
          <target provider="ProjectServerStatusQueue" name="pjResourceStart" />
        </tfsToTarget>
        <targetToTfs>
          <target provider="ProjectServerPublished" name="pjTaskStart" />
        </targetToTfs>
      </field>
      <field tfsName="Microsoft.VSTS.Scheduling.FinishDate" tfsMirrorName="Mirror.Microsoft.VSTS.Scheduling.FinishDate" displayTfsField="false" displayTfsMirror="false" onConflict="PSWin">
        <tfsToTarget>
          <target provider="ProjectServerStatusQueue" name="pjResourceFinish" />
        </tfsToTarget>
        <targetToTfs>
          <target provider="ProjectServerPublished" name="pjTaskFinish" />
        </targetToTfs>
      </field>
    </Microsoft.TeamFoundation.Sync.Mapping.Impls.FieldMapping>
  </persistables>
</mappingFile>

Zurück nach oben

Siehe auch

Weitere Ressourcen

Einschränkungen bei der Zuordnung von Project Server-Feldern für die Integration in Team Foundation Server

Für die Unterstützung der Datensynchronisierung hinzugefügte Project Server-Felder

Verwalten von Feldzuordnungen für die Integration von Team Foundation Server und Project Server

Anpassen von Feldzuordnungen zwischen Project Server und Team Foundation Server

Verwalten der Integration von Team Foundation Server und Project Server

Änderungsprotokoll

Datum

Versionsgeschichte

Grund

April 2011

Die Felder "Abgeschlossene Arbeit" und "Verbleibende Arbeit" wurden aus der Liste der Pflichtfelder entfernt, die zugeordnet werden müssen. Die Zuordnung von Feldern in Team Foundation zu Projektaufgaben- und Ressourcenfeldern während der Status- und Veröffentlichungssynchronisierungsphasen wurde erläutert. Es wurde angegeben, dass das tfsMirrorName-Attribut erforderlich ist.

Korrektur inhaltlicher Fehler.