Condividi tramite


Gestire campi di elementi di lavoro [witadmin]

È possibile gestire i campi del tipo di elemento di lavoro definiti per un insieme di progetti team usando i seguenti comandi witadmin:

  • changefield: modifica uno o più attributi di un campo. Quando si modifica uno dei seguenti attributi, questo viene modificato in tutti i tipi di elementi di lavoro e progetti team inclusi nell'insieme di progetti team:

    • Tipo di dati per i campi PlainText o HTML.

      Importante

      Quando si aggiorna Team Foundation Server da una versione precedente alla versione corrente, l'assegnazione del tipo per il campo Descrizione (System.Description) viene convertita automaticamente da PlainText a HTML.Con il comando changefield, è possibile ripristinare il contenuto di questo campo per visualizzare il testo normale.

    • Nome descrittivo visualizzato nella query elemento di lavoro. Questo nome può essere diverso da quello visualizzato nel form dell'elemento di lavoro.

    • Attributi di creazione rapporti che include il nome del campo visualizzato in un rapporto, il nome del rapporto di riferimento e il tipo di creazione di rapporti.

    • Sincronizzazione con Active Directory: è possibile abilitare/disabilitare la sincronizzazione dei campi con nomi di persona.

  • deletefield: elimina il campo specificato.

  • indexfield: attiva o disattiva l'indicizzazione per il campo specificato. Quando si abilita l'indicizzazione per un campo, è possibile aumentare le prestazioni dell'individuazione degli elementi di lavoro le cui query specificano quel campo. Se si aggiunge un campo personalizzato che si utilizza in molte query elemento di lavoro, è necessario abilitare l'indicizzazione per quel campo.

  • listfields: elenca gli attributi per tutti i campi o per un campo specificato.

Per eseguire lo strumento da riga di comando witadmin, aprire una finestra del prompt dei comandi in cui è installato Visual Studio o Team Explorer e immettere:

cd %programfiles(x86)%\Microsoft Visual Studio 12.0\Common7\IDE

In una versione a 32 bit di Windows sostituire %programfiles(x86)% con %programfiles%.

Per una panoramica dei campi definiti nei modelli di processo predefiniti forniti con Team Foundation Server, vedere Riferimenti ai campi elemento di lavoro per Visual Studio ALM.

Nota

È possibile creare e modificare i campi elemento di lavoro usando l'Editor di processo, un Power tool per Visual Studio.Questo strumento non è supportato.Per altre informazioni, vedere la pagina del sito Web Microsoft relativa ai Power tool di Team Foundation Server.

Requisiti

  • Per elencare i campi, è necessario che l'autorizzazione Visualizza informazioni a livello di progetto per il progetto team nella raccolta sia impostata su Consenti.

  • Per eliminare o rinominare i campi o per cambiare un attributo di un campo, è necessario essere membri del gruppo di sicurezza Team Foundation Administrators o Project Collection Administrators.

Per altre informazioni, vedere Riferimento alle autorizzazioni per Team Foundation Server.

Nota

Anche se si accede con autorizzazioni amministrative, è necessario aprire una finestra del prompt dei comandi con privilegi elevati per eseguire questa funzione in un server che esegue Windows Server 2008.Per aprire una finestra del prompt dei comandi con privilegi elevati, scegliere Start, aprire il menu di scelta rapida per Prompt dei comandi, quindi scegliere Esegui come amministratore.Per altre informazioni, vedere il sito Web Microsoft: Controllo dell'account utente.

witadmin changefield /collection:CollectionURL /n:RefName    [/name:NewName]     [/syncnamechanges:true | false]    [/reportingname:ReportingName]     [/reportingrefname:ReportingRefName]    [/reportingtype:Type]    [/reportingformula:Formula]    [/type:PlainText | HTML]    [/noprompt]

witadmin deletefield /collection:CollectionURL /n:RefName [/noprompt]

witadmin indexfield /collection:CollectionURL /n:Name /index:on|off 

witadmin listfields /collection:CollectionURL /n:RefName [/unused]

Parametri

Parametro

Descrizione

/collection:CollectionURL

Specifica l'URI dell'insieme di progetti team. Il formato dell'URI è il seguente: http://NomeServer:Porta/NomeDirectoryVirtuale/NomeRaccolta

Se non viene usata alcuna directory virtuale, il formato dell'URI sarà il seguente:

http://NomeServer:Porta/NomeRaccolta

/n:RefName

/n:Name

Il nome di riferimento del campo di un tipo di elemento di lavoro.

/index

Specifica se abilitare o disabilitare l'indicizzazione del campo specificato. Specificare on per abilitare l'indicizzazione e off per disabilitarla.

/name:NewName

Specifica il nuovo nome del campo.

/syncnamechanges

Indica di usare il campo elemento di lavoro per archiviare i nomi e di eseguire l'aggiornamento man mano che vengono apportate modifiche in Active Directory o in un gruppo di lavoro. Questa opzione è valida solo quando viene specificato un campo con dati di tipo String per typename.

Specificare true per abilitare la sincronizzazione per il campo dati, specificare false per disabilitarla.

/reportingname:ReportingName

Specifica il nome del campo nel data warehouse da usare per la creazione di rapporti.

/reportingrefname:ReportingRefName

Specifica il nome di riferimento del campo nel data warehouse da usare per la creazione di rapporti.

/reportingtype:Type

Specifica come usare il campo nel warehouse per la creazione di rapporti. Di seguito vengono illustrati i valori validi.

  • dimension: usato per i campi Integer, String o DateTime.

  • detail: usato per i campi Integer, Double, String o DateTime.

  • measure: usato per i campi Integer e Double. Il tipo di aggregazione predefinito è sum. È possibile specificare un altro tipo di aggregazione usando il parametro formula.

  • none: usato per disabilitare la funzionalità di creazione di rapporti per il campo.

Per altre informazioni, vedere Definire e modificare campi di elementi di lavoro.

/reportingformula:Formula

Specifica la formula di aggregazione da usare quando il campo viene segnalato come measure. L'unica formula supportata è sum.

/type:HTML | PlainText

Indica di convertire i contenuti del campo da PlainText a HTML oppure da HTML a PlainText. Questa opzione può essere specificata solo per i campi con assegnazione di tipo PlainText o HTML. Vedere Riferimento all'elemento FIELD (Definizione).

/unused

Elenca tutti i campi non usati da progetti team definiti nell'insieme di progetti team.

/noprompt

Disabilita il prompt di conferma.

/? or help

Visualizza il testo della Guida relativo al comando nella finestra del prompt dei comandi.

Note

Campi indicizzati

Viene creato un indice di query basato sui campi in cui è abilitata l'indicizzazione. L'indice migliora il tempo di risposta quando si eseguono query che includono i campi indicizzati.

Per impostazione predefinita, vengono indicizzati i campi Assegnato a, Data di creazione, Modificato da, Stato, Motivo, ID area, ID iterazione e Tipo di elemento di lavoro. Se esistono altri campi che il team utilizza spesso nelle query, è possibile aggiungerli all'indice di query.

Sincronizzazione dei nomi di persona con Active Directory

È necessario abilitare manualmente la sincronizzazione dei campi elemento di lavoro personalizzati usati per assegnare i nomi di persona con riferimento ad Active Directory. La sincronizzazione deve essere abilitata per tutti i campi di tutte le raccolte di progetti team che contengono i campi personalizzati.

Tutti i campi di riferimento del sistema che contengono nomi di persona hanno l'attributo syncnamechanges impostato su true. Questi campi includono System.AuthorizedAs, System.AssignedTo, System.ChangedBy e System.CreatedBy. La sincronizzazione è abilitata per tutti i campi dei nomi di persona definiti in uno dei modelli di processo predefiniti. Per altre informazioni, vedere Riferimento ai campi Assegnazioni e flusso di lavoro.

Dopo aver abilitato la sincronizzazione, il campo non visualizza più una stringa statica, ma il nome associato a un account utente. Quando si modifica il nome utente in Active Directory o in un gruppo di lavoro, i campi con syncnamechanges impostato su true visualizzano automaticamente il nuovo nome.

Quando si assegna l'attributo syncnamechanges a un campo String, il campo accetta sempre i nomi utente validi. Tuttavia, il campo non consente i nomi di gruppo archiviati in Team Foundation Server o in Active Directory se una o più delle seguenti condizioni è true:

  • Il ruolo VALIDUSER è specificato in tutti i tipi di elementi di lavoro

  • Il ruolo VALIDUSER è specificato per un tipo di elemento di lavoro

  • Il ruolo ALLOWEDVALUES è specificato per un tipo di elemento di lavoro e dispone di criteri di filtro per escludere i gruppi

Per altre informazioni, vedere Riferimento a tutti gli elementi XML FIELD.

Attributi modificabili per ciascun tipo di elemento di lavoro

Per modificare i seguenti attributi o valori definiti per un campo, modificare la definizione del tipo di elemento di lavoro in cui è incluso il campo:

Esempi

Se non diversamente specificato, in ciascun esempio vengono applicati i valori seguenti:

  • URI per l'insieme di progetti team: http://AdventureWorksServer:8080/tfs/DefaultCollection

  • Nome del campo elemento di lavoro: AdventureWorks.Field

  • Codifica predefinita: UTF-8

Campi Elenco

Usare witadmin listfields per visualizzare il set di campi in uso e selezionarne uno da aggiungere a un tipo di elemento di lavoro. È anche possibile elencare le assegnazioni di attributi definiti per un campo specifico e determinare i campi e i progetti team che li usano.

Visualizzare gli attributi di un campo elemento di lavoro

  • Immettere il seguente comando per elencare gli attributi definiti per un campo specifico, ad esempio Microsoft.VSTS.Common.Issue.

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:Microsoft.VSTS.Common.Issue
    

    Vengono visualizzate le informazioni sui campi e sugli attributi per il campo denominato, come mostrato nell'esempio.

    Field: Microsoft.VSTS.Common.Issue
    Name: Issue
    Type: String
    Reportable As: dimension
    Use: Adventure Works (Shared Steps), AW Future (Shared Steps), AW Current (Shared Steps)
    Indexed: False
    

    Il parametro Use indica il nome di ciascun progetto e il tipo di elemento di lavoro in cui viene usato il campo. Per altre informazioni sugli attributi dei campi, vedere Riferimenti ai campi elemento di lavoro per Visual Studio ALM.

Elencare tutti i campi in un insieme di progetti team

  • Immettere il seguente comando per elencare tutti i campi definiti per un insieme di progetti team.

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection
    

    Vengono visualizzate le informazioni su tutti i campi per la raccolta dei progetti denominati. Vedere Riferimenti ai campi elemento di lavoro per Visual Studio ALM.

Elencare i campi non usati

  • Immettere il seguente comando per elencare i campi che non sono più usati nell'insieme di progetti team da nessun tipo di elemento di lavoro.

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /unused
    

    Vengono visualizzate le informazioni sui campi e sugli attributi per ciascun campo non usato, come mostrato nell'esempio.

    Field: Microsoft.VSTS.CMMI.TaskType
    Name: Task Type
    Type: String
    Reportable As: dimension
    Use: Not In Use
    Indexed: False
    
    Field: Microsoft.VSTSUE.Common.Flag
    Name: Flag
    Type: String
    Reportable As: dimension
    Use: Not In Use
    Indexed: False
    
    Field: Microsoft.VSTSUE.Common.Progress
    Name: Progress
    Type: String
    Reportable As: dimension
    Use: Not In Use
    Indexed: False
    

Rinominare un campo

È possibile modificare il nome descrittivo di un campo elemento di lavoro in modo che rispetti le convenzioni di denominazione usate dal team. Il nuovo nome viene applicato a tutti i tipi di elementi di lavoro che fanno riferimento al campo modificato in tutti i progetti team della raccolta di progetti. Il nome descrittivo viene visualizzato quando si definiscono i criteri di filtro in una query elemento di lavoro. Il nome visualizzato in un form dell'elemento di lavoro può essere diverso dal nome descrittivo definito per il campo.

Per rinominare un campo elemento di lavoro

  1. Immettere il seguente comando per rinominare il nome descrittivo assegnato a Microsoft.VSTS.Common.Rank come Important Rank.

    witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:Microsoft.VSTS.Common.Rank /name:"Important Rank"
    
  2. Al prompt di conferma digitare y, quindi premere INVIO. Attendere finché non si riceve il seguente messaggio:

    Field renamed.

Per verificare le modifiche importate in un singolo progetto

  1. In Team Explorer, scegliere Aggiorna Aggiorna.

    Gli ultimi aggiornamenti vengono scaricati dal server, incluse le modifiche appena apportate al nome del campo. Attendere alcuni secondi finché l'aggiornamento non viene completato.

  2. Scegliere Nuova query per creare una query.

  3. Nell'editor di query, scegliere il collegamento Fare clic qui per aggiungere una clausola per aggiungere una riga, selezionare la cella vuota Campo e, nella cella, digitare Rank. Il seguente messaggio viene visualizzato sopra l'elenco risultati e indica che Rank non è stato trovato.

    Eseguire la query per visualizzarne i risultati. TF51005: la query fa riferimento a un campo inesistente. Errore causato da <<Rank>>.

  4. Eliminare il valore Rank dalla cella Campo e digitare Important Rank nella cella.

  5. Selezionare <> nella cella Operatore, quindi digitare 1 nella cella Valore.

  6. Nella barra degli strumenti Query, scegliere Esegui query (Team Explorer) Esegui.

  7. Aprire il menu di scelta rapida per qualsiasi riga dei risultati e selezionare Opzioni colonne. Scorrere l'elenco Colonne disponibili. Il campo Rank non è più presente ed è invece visualizzato il campo Important Rank.

  8. Selezionare Important Rank nella casella Colonne disponibili, quindi scegliere il pulsante > (per aggiungere le colonne selezionate). Scegliere OK.

    Il nome descrittivo per Microsoft.VSTS.Common.Rank è stato rinominato da Rank a Important Rank in tutto il generatore di query e nell'elenco risultati.

  9. Chiudere la query. Scegliere No quando viene richiesto di salvare la query.

  10. Creare un nuovo elemento di lavoro attività. Scegliere il collegamento Nuovi elementi di lavoro, quindi scegliere Attività.

    Questo elemento di lavoro viene creato dal tipo di elemento di lavoro modificato e importato.

  11. Nella casella Stato l'etichetta per il campo rinominato, Rank, non è stata modificata. Questo dipende dal fatto che le etichette di campo nel form dell'elemento di lavoro hanno un ambito definito nel progetto team padre e sono indipendenti dal nome del campo nel server appena specificato.

    Nota

    Per altre informazioni su come modificare le etichette di campo nel form dell'elemento di lavoro, vedere Riferimento all'elemento XML Control.

  12. Chiudere la nuova attività e scegliere No quando viene richiesto di salvare l'elemento di lavoro.

Modificare il report come valore per un campo

Il seguente comando consente di indicare dimensione come tipo del campo DateTime AdventureWorks.CreatedOn. I dati del campo vengono immessi nei database warehouse e Analysis Services per essere usati per filtrare i report.

witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.CreatedOn /reportingtype:dimension

Il seguente comando consente di indicare misura come tipo del campo Double AdventureWorks.Field. Tutte le misure vengono aggregate con la funzione somma.

witadmin reportfield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.Field /reportingtype:measure

Abilitare la sincronizzazione di un campo con nomi di persona personalizzati

Il seguente comando abilita la sincronizzazione per il campo elemento di lavoro AW.CustomerName definito per Collection1 in AdventureWorksServer.

Verificare il tipo di dati del campo da convertire

  • Verificare il tipo di dati assegnato al campo, ad esempio MyCompany.CustomerName, da sincronizzare con il seguente comando:

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomerName
    

Abilitare la sincronizzazione

  1. Per abilitare la sincronizzazione di un campo con nomi di persona, digitare il seguente comando, sostituendo gli argomenti visualizzati con i propri dati:

    witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomerName /syncnamechanges:true
    
  2. Viene visualizzato il seguente prompt di conferma:

    This will change properties for field {0} on the Team Foundation Server. Do you want to continue?

  3. Digitare 0 per confermare che si vuole modificare il campo oppure 1 per annullare la richiesta.

    Se la richiesta di modifica riesce, viene visualizzato il seguente messaggio di conferma:

    The field was updated.

    Se la richiesta di modifica non riesce, viene visualizzato un messaggio di errore. Gli errori più frequenti si verificano quando si tenta di modificare un campo di riferimento del sistema o un campo di un tipo di dati diverso da String. Queste operazioni non sono supportate.

Eliminare un campo

Prima di eliminare un campo, verificare che non sia in uso. Se il campo è in uso, rimuoverlo dai tipi di elementi di lavoro a cui è associato prima di eliminarlo dall'insieme di progetti team. Il seguente comando elimina il campo AdventureWorks.Field da Collection1:

witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.Field

Verificare che un campo non sia in uso

  1. Immettere il seguente comando, specificando il nome di riferimento del campo elemento di lavoro, ad esempio MyCompany.MyProcess.MyField.

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.MyProcess.MyField
    

    Nelle informazioni visualizzate per il campo, verificare che il valore per Use sia "Not In Use" come mostrato nell'esempio.

    Field: MyCompany.MyProcess.MyField
    Name: MyField
    Type: String
    Reportable As: dimension
    Use: Not In Use
    Indexed: False
    
  2. Se il campo Use indica che il campo è in uso, è necessario eliminarlo da tutti i tipi di elementi di lavoro di tutti i progetti team elencati. Ad esempio, il campo Microsoft.VSTS.TCM.SystemInfo indica che è usato dai tipi di elementi di lavoro Bug e Code Defect per quattro progetti: Arroyo, Desert, Palm e Springs.

    Field: Microsoft.VSTS.TCM.SystemInfo
    Name: System Info
    Type: Html
    Reportable As: None
    Use: Arroyo (Bug), Desert (Bug), Palm (Bug), Springs (Bug, Code Defect)
    Indexed: False
    

    Prima di poter eliminare questo campo, è necessario rimuoverlo da tutti i tipi di elementi di lavoro elencati in tutti i progetti team in cui è definito. Per rimuovere il campo, modificare la definizione per il tipo di elemento di lavoro eliminando gli elementi FIELD e Control che contengono il nome di riferimento del campo. Vedere Importare, esportare e gestire tipi di elemento di lavoro [witadmin], Riferimento all'elemento FIELD (Definizione) e Riferimento all'elemento XML Control.

Eliminare un campo da un insieme di progetti team

  • Immettere il seguente comando per eliminare il campo MyCompany.MyProcess.MyField, quindi scegliere INVIO.

    witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:RefName
    

    Immettere y al prompt di conferma per completare questo passaggio.

Domande e risposte

D: Quali personalizzazioni si possono applicare se si continua a usare Configurazione guidata delle funzionalità per aggiornare il progetto team dopo un aggiornamento a TFS?

R: Si possono aggiungere campi personalizzati, personalizzare un elenco di selezione e aggiungere regole a un campo. Con la procedura guidata Configurazione funzionalità è possibile aggiornare i progetti team e accedere alle ultime funzionalità.

La modifica degli attributi del campo non è consigliata. Per informazioni sulle personalizzazioni che è possibile applicare e quelle da evitare, vedere la sezione Prima di personalizzare, comprendere le implicazioni di aggiornamento e di manutenzione in Personalizzare oggetti di rilevamento degli elementi di lavoro per supportare i processi del team.

Vedere anche

Concetti

Risolvere conflitti di schema che si verificano nel data warehouse

Aggiungere o modificare campi di elementi di lavoro per supportare la creazione di rapporti

Riferimenti ai campi elemento di lavoro per Visual Studio ALM

Riferimento ai campi segnalabili per Visual Studio ALM

Altre risorse

witAdmin: personalizzare e gestire oggetti per gestire il lavoro