Condividi tramite


Personalizzazione del mapping dei campi tra Project Server e Team Foundation Server

Per sincronizzare i dati tra un piano di progetto dell'organizzazione e un progetto team, è necessario associare i campi degli elementi di lavoro in Visual Studio Team Foundation Server 2010 ai campi in Microsoft Project Server 2007 o Project Server 2010. È possibile aggiungere campi e specificarne la modalità di sincronizzazione personalizzando i mapping dei campi. È possibile eseguire il mapping di campi incorporati e personalizzati in Project. Ad esempio, è possibile condividere dati che non sono correlati alle pianificazioni (quali centri di costo, nomi di team o stato di integrità) se si aggiungono ai mapping i campi in cui sono archiviati questi tipi di dati.

È necessario mantenere un set di mapping dei campi per ogni insieme di progetti team che ospita i progetti team che si desidera sincronizzare con Project Server. È necessario definire i mapping dei campi per ogni insieme di progetti team mappato a un'istanza di Project Web Access o Project Web App (PWA). È possibile caricare i mapping predefiniti o personalizzare e caricare un file di mapping. Per caricare i mapping predefiniti, vedere Caricare i mapping più avanti in questo argomento.

Nota di avvisoAttenzione

I mapping per l'integrazione di Team Foundation Server e Project Server sono diversi dal file di mapping per Microsoft Project. Per ulteriori informazioni, vedere File di mapping dei campi di Office Project.

Come mostrato nell'illustrazione seguente, la personalizzazione dei mapping prevede cinque passaggi:

Personalizzazione dei mapping dei campi tra Team Foundation Server e Project Server

Flusso di lavoro per la personalizzazione dei mapping dei campi PS-TFS

Nota importanteImportante

È possibile aggiornare il file di mapping con la frequenza che si preferisce. I campi visualizzati nella scheda Project Server vengono aggiornati per ogni tipo di elemento di lavoro che fa parte della sincronizzazione dei dati. Non si devono modificare manualmente le definizioni per la scheda Project Server. Per ulteriori informazioni, vedere Personalizzare la scheda Project Server più avanti in questo argomento.

In questo argomento

  • Mapping predefiniti

  • Determinare campi aggiuntivi di cui eseguire il mapping

  • Scaricare i mapping in un file

  • Aggiornare i mapping

  • Caricare i mapping

  • (Facoltativo) Personalizzare la scheda Project Server

Autorizzazioni necessarie

Per completare le procedure in questo argomento, è necessario che l'autorizzazione Amministrazione integrazione di Project Server sia impostata su Consenti. Inoltre, all'account del servizio di Team Foundation Server deve essere concessa l'autorizzazione Amministrazione integrazione di Project Server. Per ulteriori informazioni, vedere Assegnazione di autorizzazioni per supportare l'integrazione di Project Server e Team Foundation Server.

Mapping predefiniti

I mapping determinano quali campi vengono sincronizzati quando un utente aggiorna informazioni in Team Foundation o Project Server. Ognuno dei tipi di sincronizzazione seguenti dispone del proprio set di mapping:

  • Per la sincronizzazione della pubblicazione, con i dati in Project Server vengono aggiornati i dati in Team Foundation. Viene utilizzato l'elemento targetToTfs per specificare il campo in Project Server tramite il quale viene aggiornato il campo in Team Foundation.

  • Per la sincronizzazione dello stato, i dati in Team Foundation vengono inviati alla coda di stato di Project Server. Viene utilizzato l'elemento tfsToTarget per specificare il campo tramite il quale viene aggiornato il campo della coda di stato in Project Server.

Per ulteriori informazioni su questi due tipi di sincronizzazione, vedere Cenni preliminari sul processo di sincronizzazione per l'integrazione di Team Foundation Server e Project Server.

Nella tabella seguente viene elencato il set predefinito di campi mappati tra Team Foundation e Project Server. Nella tabella sono anche indicati i tipi di elementi di lavoro in cui vengono utilizzati i campi in base ai tre modelli di progetto per Microsoft Solutions Framework (MSF). È consigliabile non modificare questi mapping se si sta eseguendo il mapping a un progetto team creato da un modello di processo basato su Agile Software Development v5.0 o su Capability Maturity Model Integration (CMMI) Process Improvement v5.0. Se si esegue il mapping a un progetto team creato dal modello di processo Scrum 1.0, sarà necessario apportare alcune modifiche come descritto in Modifica dei mapping dei campi quando si esegue il mapping a un progetto team creato utilizzando il modello di processo Scrum 1.0 più avanti in questo argomento.

Per ulteriori informazioni sui mapping e il processo di sincronizzazione, vedere Riferimento agli elementi XML di mapping dei campi per l'integrazione di Team Foundation Server e Project Server.

Campo Team Foundation

Campo Project Server

Campo coda di stato

Tipi di elementi di lavoro in Agile 5.0

Tipi di elementi di lavoro in CMMI 5.0

Tipi di elementi di lavoro in Scrum 1.0

Titolo

Nome attività

Titolo

Tutti

Tutti

Tutti ad eccezione di Sprint

Assegnato a

Risorse

Risorse

Tutte

Tutte

Tutte ad eccezione di Sprint

Lavoro completato

Lavoro effettivo attività

Risorse - Lavoro effettivo

Attività

Attività

Nessuna

Lavoro rimanente

Lavoro rimanente attività

Risorse - Lavoro rimanente

Attività

Attività

Attività

Stima originale

Lavoro previsto

Lavoro previsto

Attività

Bug, richiesta di modifica, problema, requisito, rischio ed attività

Nessuna

Data di inizio

Attività - Inizio

Risorse- Inizio

Attività e storia utente

Attività e requisito

Sprint

Data di fine

Attività - Fine

Risorse - Fine

Attività e storia utente

Attività e requisito

Sprint

Torna all'inizio

Aggiunta di campi ai tipi di elementi di lavoro quando si esegue il mapping a un progetto team creato dal modello di processo Scrum 1.0

Dal momento che nel modello di processo Scrum 1.0 non vengono utilizzati i campi Lavoro completato e Stima originale, è necessario aggiungere questi campi ai tipi di elementi di lavoro che si desidera partecipino alla sincronizzazione dei dati. È possibile ad esempio aggiungere i campi non utilizzati al tipo di attività dell'elemento di lavoro.

Per aggiungere questi campi, è necessario esportare il tipo di attività dell'elemento di lavoro dal progetto team e, per ogni campo, aggiungere un elemento FIELD nella sezione FIELDS. È possibile aggiungere anche un elemento Control nella sezione FORM. È possibile aggiungere gli elementi FIELD seguenti:

<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>

Inoltre, è possibile aggiungere gli elementi Control seguenti:

<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" />

Per ulteriori informazioni, vedere Esportare e importare tipi di elementi di lavoro da un progetto esistente, Personalizzazione e utilizzo di campi elemento di lavoro e Progettazione e personalizzazione di un form elemento di lavoro.

Torna all'inizio

Determinare campi aggiuntivi di cui eseguire il mapping

Determinare le informazioni seguenti per ogni campo che si desidera sincronizzare oltre ai campi predefiniti:

  • Il nome di riferimento del campo in Team Foundation. Se si desidera sincronizzare un campo di Project Server con un campo che è necessario creare in Team Foundation, creare prima il campo in ogni tipo di elemento di lavoro che si sincronizza. Per ulteriori informazioni, vedere Utilizzo dei campi di sistema e dei campi definiti tramite i modelli di processo MSF e Personalizzazione e utilizzo di campi elemento di lavoro.

  • Il nome del campo di Project Server che aggiornerà il campo in Team Foundation. Per un elenco di campi disponibili, vedere Restrizioni relative al mapping dei campi di Project Server per l'integrazione con Team Foundation Server.

  • Verranno aggiornati il nome del campo da aggiornare in Project Server e il nome del campo in Project Server che aggiornerà il campo mirror in Team Foundation Server.

  • Stabilire se visualizzare i campi nel form elemento di lavoro. Il valore dell'attributo displayTfsField viene impostato su true per i campi che si desidera visualizzare nel form elemento di lavoro. Il valore dell'attributo displayTfsMirror viene impostato su true per il form elemento di lavoro.

  • Stabilire se risolvere i conflitti di dati consentendo al valore del campo in Team Foundation di sovrascrivere il valore del campo in Project Server o se mantenere entrambi i valori. Questa decisione determina il valore dell'attributo onConflict. Se onConflict=”PsWins” è impostato, il valore del campo in Project Server sovrascriverà il valore del campo in Team Foundation. Per ulteriori informazioni, vedere Elementi field e relativi attributi.

  • I valori aggiuntivi da definire per supportare elenchi di selezione o tabelle di ricerca personalizzate in Project Server.

Torna all'inizio

Restrizioni sui dati di cui è possibile eseguire il mapping

Dopo aver determinato i campi di cui si desidera eseguire il mapping, tenere presente le restrizioni seguenti:

  • È possibile inviare solo informazioni a livello di attività, campi pjTask *, da Project Server a Team Foundation Server.

  • È possibile inviare solo informazioni a livello di risorsa, campi pjResource *, da Team Foundation Server alla coda di stato di Project Server.

  • Il campo Titolo è l'unico campo che può essere inviato a Team Foundation Server ed alla coda di stato.

  • Il rollup è calcolato automaticamente per i campi Assegnato a, Lavoro completato e Lavoro rimanente. Non è possibile eseguire il mapping di campi aggiuntivi e calcolare il relativo rollup. Per ulteriori informazioni, vedere Utilizzo del rollup delle risorse nei progetti dell'organizzazione mappati ai progetti team.

  • È necessario assicurarsi che le unità o i tipi di dati di ogni campo di cui si esegue il mapping siano conformi ai criteri del mapping campi per i campi dell'organizzazione standard e personalizzati. Per ulteriori informazioni, vedere "Tipi di dati e criteri di mapping dei campi" in Restrizioni relative al mapping dei campi di Project Server per l'integrazione con Team Foundation Server.

  • È possibile eseguire il mapping di campi che sono associati a elenchi di selezione in Team Foundation. Tuttavia, è necessario creare tabelle di ricerca in Project Server perché corrispondano agli elenchi di selezione. Non è possibile sincronizzare automaticamente elenchi di selezione e tabelle di ricerca.

Per ulteriori informazioni, vedere Restrizioni relative al mapping dei campi di Project Server per l'integrazione con Team Foundation Server.

Torna all'inizio

Esempio: esecuzione del mapping del nome team da visualizzare in Project

Nell'esempio seguente, il campo stringa personalizzato in Team Foundation, MyCompany.MyOrg.DevTeamName, è mappato a un campo di testo personalizzato dell'organizzazione in Project Server, pjMyCompanyTeamName. È possibile utilizzare questo esempio per visualizzare in Project Professional il nome del team associato ad un'attività.

<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>

Nessuno dei due campi viene visualizzato nel form elemento di lavoro. Inoltre, se i valori non corrispondono, ogni campo mantiene il proprio valore.

Torna all'inizio

Esempio: visualizzazione dei percorsi di iterazione e area in Project

È possibile eseguire il mapping dei campi Area (System.AreaPath) e Iterazione (System.IterationPath) in Team Foundation in modo che siano visibili nei piani del progetto. Poiché questi campi del percorso della struttura ad albero sono soggetti a frequenti modifiche, è consigliabile eseguirne il mapping come campi di testo in Project. I responsabili del progetto che utilizzano questi campi devono immettere manualmente il percorso completo dell'area o dell'iterazione.

Nota importanteImportante

L'implementazione corrente dell'integrazione di Visual Studio Team Foundation Server 2010 e Project Server non supporta la sincronizzazione automatica di elenchi di valori consentiti, elenchi di selezione, elenchi globali o elenchi di percorsi di struttura ad albero definiti per i campi di cui è stato eseguito il mapping tra i due prodotti server. Per ottenere un risultato migliore, è necessario immettere manualmente le voci nel piano del progetto che corrispondono a quelle in Team Foundation. Se si specifica una voce che non è valida, viene visualizzata una finestra di dialogo di convalida quando si pubblica il piano.

Per aggiungere i campi Area e Iterazione ad un piano del progetto, eseguire le azioni seguenti:

  1. Aggiungere due campi dell'organizzazione cliente a Project Server e identificarli come Area (TFS) ed Iterazione (TFS).

    Per ulteriori informazioni, vedere la seguente pagina nel sito Web Microsoft: Creazione di tabelle di ricerca e campi personalizzati dell'organizzazione.

  2. Esportare i mapping campi dall'insieme di progetti team dove sono definiti i progetti team.

    Per ulteriori informazioni, vedere Download dei mapping a un file più avanti in questo argomento.

  3. Aggiungere al file il codice riportato di seguito:

    <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. Importare il file dei mapping campi aggiornati come descritto in Caricare i mapping più avanti in questo argomento.

  5. Sincronizzare il piano del progetto con Project Server.

  6. Aggiungere due nuove colonne per i nuovi campi Area (TFS) e Iterazione (TFS) al piano del progetto

Le modifiche apportate ai campi Area e Iterazione in Team Foundation saranno sincronizzate con questi campi nel piano del progetto. Inoltre, è possibile aggiornare questi campi in Project e pubblicare le modifiche in Team Foundation se si specificano valori definiti in Team Foundation.

Torna all'inizio

Scaricare i mapping in un file

Nota

È possibile scaricare i mapping solo da un insieme di progetti team nel quale sono stati caricati. Se si desidera scaricare i mapping predefiniti in un file, è necessario prima caricarli, come descritto in Per caricare i mapping predefiniti più avanti in questo argomento. In alternativa, è possibile copiare il contenuto dei mapping predefiniti. Per ulteriori informazioni, vedere File dei mapping predefiniti.

Per scaricare i mapping in un file

  1. In un computer in cui sono in esecuzione Team Explorer e il Service Pack 1 per Visual Studio Team Foundation Server 2010, aprire una finestra del prompt dei comandi e spostarsi nella directory che contiene lo strumento da riga di comando TFSAdmin.

    Per impostazione predefinita, lo strumento si trova in Unità:\Programmi\Microsoft Visual Studio 10.0\Common7\IDE. Nei computer a 64 bit, lo strumento si trova in Unità:\Programmi (x86)\Microsoft Visual Studio 10.0\Common7\IDE.

  2. Al prompt dei comandi digitare il comando seguente, quindi premere INVIO.

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

    Sostituire tpcUrl con l'URL (Uniform Resource Locator) dell'insieme di progetti team e MappingFile con il percorso e il nome del file da personalizzare.

  3. Attendere la visualizzazione del messaggio seguente:

    Download di MappingFile nell'insieme di progetti team tpcUrl.

    Download del file di mapping campi MappingFile nell'insieme di progetti team tpcUrl completato.

Torna all'inizio

Aggiornare i mapping

Per ogni campo che si desidera aggiungere al file di mapping, è necessario specificare l'elemento field e i relativi sottoelementi e attributi. Per ulteriori informazioni, vedere Riferimento agli elementi XML di mapping dei campi per l'integrazione di Team Foundation Server e Project Server.

Torna all'inizio

Caricare i mapping

I mapping vengono caricati tramite il comando UploadFieldMappings. È possibile caricate i mapping predefiniti utilizzando l'opzione /usedefaultfieldmapping. In caso contrario, è necessario specificare un file che contiene gli elementi del mapping.

Per caricare i mapping predefiniti

  1. Al prompt dei comandi digitare il comando seguente, quindi premere INVIO.

    TfsAdmin ProjectServer /UploadFieldMappings /collection:tpcUrl /usedefaultfieldmappings
    

    Sostituire tpcUrl con l'URL dell'insieme di progetti team.

  2. Attendere la visualizzazione del messaggio seguente:

    Caricamento dei mapping campi predefiniti in CollectionUri.

    Caricamento dei mapping campi nell'insieme CollectionUri completato.

Per caricare i mapping da un file

  1. Al prompt dei comandi digitare il comando seguente, quindi premere INVIO.

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

    Sostituire tpcUrl con l'URL dell'insieme di progetti team e MappingFile con il percorso e il nome del file di mapping personalizzato. Specificare /force se si aggiornano i mapping esistenti.

  2. Attendere la visualizzazione del messaggio seguente:

    Caricamento di MappingFile nell'insieme di progetti team tpcUrl.

    Caricamento del file di mapping campi MappingFile nell'insieme di progetti team tpcUrl completato.

Torna all'inizio

Personalizzare la scheda Project Server

Quando si associa un piano del progetto dell'organizzazione a un progetto team, la scheda Project Server viene aggiunta al form elemento di lavoro, come mostrato nell'illustrazione seguente. La scheda viene aggiunta solo ai tipi di elementi di lavoro di cui si è specificata la partecipazione alla sincronizzazione dei dati. Questa scheda viene personalizzata impostando gli attributi displayTfsField o displayTfsMirror su true per quei campi che si desidera vengano visualizzati nel form.

Scheda Project Server

Campi predefiniti della scheda Project Server

Nota importanteImportante

I mapping dei campi definiti per l'insieme di progetti team consentono di determinare i campi visualizzati nella scheda Project Server. Una volta aggiunta questa scheda a un tipo di elemento di lavoro per un progetto team, è possibile aggiornarla modificando i mapping dei campi dell'insieme. Se si personalizza manualmente il form elemento di lavoro aggiungendo campi alla scheda Project Server o modificando il relativo percorso nel form, è possibile che la scheda non sia aggiornata automaticamente con le modifiche future che verranno apportate ai mapping dei campi. Se si verifica questa condizione, è possibile modificare la scheda manualmente.

Per ulteriori informazioni su ogni campo predefinito visualizzato nella scheda Project Server, vedere Campi di Project Server aggiunti per supportare la sincronizzazione dei dati.

Torna all'inizio

Vedere anche

Altre risorse

Specifica dei tipi di elemento di lavoro che è possibile sincronizzare

Configurazione dell'integrazione di Team Foundation Server e Project Server

Amministrazione dell'integrazione di Team Foundation Server e Project Server