Gestire i campi degli elementi di lavoro
È possibile gestire i campi dei tipi di elementi di lavoro definiti per una raccolta di progetti team tramite i seguenti comandi witadmin:
changefield: modifica uno o più attributi di un campo.Quando si modifica uno dei seguenti attributi, modificarlo per tutti i tipi di elemento di lavoro e progetti team all'interno della raccolta 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 automaticamente convertita da PlainText a HTML.Con il comando di changefield, è possibile ripristinare il contenuto di questo campo per visualizzare il testo normale.
Nome descrittivo visualizzato nella query elemento di lavoro.Questo nome potrebbe essere diverso da quello visualizzato nel form elemento di lavoro.
Attributi di creazione rapporti che includono il nome del campo visualizzato in un rapporto, il nome del rapporto di riferimento e il tipo di rapporto.
Sincronizzazione con Active Directory: è possibile abilitare o disabilitare la sincronizzazione dei campi del nome di persona.
deletefield: Elimina il file 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 un campo specificato.
Per eseguire lo strumento della riga di comando witadmin, aprire una finestra Prompt dei comandi in cui è installato Visual Studio o Team Explorer e immettere:
cd %programfiles%\Microsoft Visual Studio 11.0\Common7\IDE
In una versione a 64 bit di Windows sostituire %programfiles% con %programfiles(x86)%.
Per una panoramica dei campi definiti all'interno dei modelli di processo predefiniti forniti con Team Foundation Server, vedere Riferimento ai campi degli elementi di lavoro per ALM di Visual Studio.
[!NOTA]
È possibile creare e modificare campi di elementi di lavoro tramite Editor processi, uno strumento avanzato per Visual Studio.Questo strumento non è supportato.Per ulteriori informazioni, vedere la pagina seguente sul sito Web Microsoft: 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 campi o modificare un attributo di un campo, è necessario essere un membro del gruppo di sicurezza Team Foundation Administrators o del gruppo di sicurezza Project Collection Administrators.
Per ulteriori informazioni, vedere Autorizzazioni per Team Foundation Server e Gruppi predefiniti, autorizzazioni e ruoli di 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 su 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 Prompt dei comandi, quindi scegliere Esegui come amministratore.Per ulteriori informazioni, visitare 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 della raccolta di progetti team.Il formato per l'URI è il seguente: http://NomeServer:Porta/NomeDirectoryVirtuale/NomeInsieme Se non viene utilizzata alcuna directory virtuale, il formato dell'URI sarà il seguente: http://NomeServer:Porta/NomeInsieme |
/n:RefName /n:Name |
Nome di riferimento del campo di un tipo di elemento di lavoro. |
/index |
Specifica se abilitare o disabilitare l'indicizzazione per il campo specificato.Specificano on per abilitare l'indicizzazione e off per disabilitarla. |
/name:NewName |
Specifica il nuovo nome per il campo. |
/syncnamechanges |
Specifica l'uso del campo dell'elemento di lavoro per l'archiviazione di nomi e per l'aggiornamento delle modifiche in Active Directory o in un gruppo di lavoro.Questa opzione è valida solo quando un campo con il tipo di dati Stringa viene specificato 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 utilizzare per il reporting. |
/reportingrefname:ReportingRefName |
Specifica il nome di riferimento del campo nel data warehouse da utilizzare per il reporting. |
/reportingtype:Type |
Specifica come il campo viene utilizzato nel warehouse per il reporting.Di seguito vengono illustrati i valori validi.
Per ulteriori informazioni, vedere Utilizzo dei campi elementi di lavoro. |
/reportingformula:Formula |
Specifica la formula di aggregazione da utilizzare quando il campo viene riportato come un measure.L'unica formula supportata è sum. |
/type:HTML | PlainText |
Specifica di convertire il contenuto del campo da PlainText a HTML o da HTML a PlainText.È possibile specificare questa opzione solo per i campi la cui l'assegnazione del tipo è PlainText o HTML.Vedere Elemento FIELD (Definizione). |
/unused |
Elenca tutti i campi che non sono utilizzati da un qualsiasi progetto team definito nella raccolta di progetti team. |
/noprompt |
Disabilita prompt per la conferma. |
/?or help |
Visualizza il testo della Guida relativo al comando nella finestra del prompt dei comandi. |
Note
Campi indicizzati
Un indice di query viene creato in base ai campi con indicizzazione abilitata.Questo indice migliora il tempo di risposta quando si eseguono query che includono i campi indicizzati.
Per impostazione predefinita, i campi seguenti vengono indicizzati: 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 di tutti i campi, di un elemento di lavoro personalizzato, utilizzati per assegnare nomi di persona che fanno riferimento ad Active Directory.È necessario abilitare la sincronizzazione per ogni campo per ogni raccolta di progetti team che contiene i campi personalizzati.
Tutti i campi di riferimento del sistema che illustrano nomi di persone presentano l'attributo syncnamechanges impostato su true. Tali campi includono System.AuthorizedAs, System.AssignedTo, System.ChangedBy e System.CreatedBy. La sincronizzazione viene attivata per ogni campo avente un nome personale che viene definito in uno dei modelli di processo predefiniti.Per ulteriori informazioni, vedere Riferimento ai campi Assegnazioni e flusso di lavoro.
Dopo l'abilitazione della sincronizzazione, nel campo non viene più visualizzata una stringa statica,bensì il nome associato a un account utente.Quando si modifica il nome utente in Active Directory o nel gruppo di lavoro, in un campo con syncnamechanges impostato su true viene visualizzato automaticamente il nuovo nome.
Quando si assegna l'attributo syncnamechanges a un campo Stringa, il campo accetta sempre nomi utente validi.Tuttavia, il campo non consente nomi di gruppi archiviati in Team Foundation Server o in Active Directory se una delle condizioni seguenti è true:
La regola VALIDUSER viene specificata in tutti i tipi di elementi di lavoro
La regola VALIDUSER viene specificata per un tipo di elemento di lavoro
La regola ALLOWEDVALUES viene specificata per un tipo di elemento di lavoro e dispone di un criterio di filtro che esclude i gruppi
Per ulteriori informazioni, vedere Riferimento a tutti gli elementi XML FIELD.
Attributi che è possibile modificare per ogni tipo di elemento di lavoro
Vengono modificati i seguenti attributi o i valori definiti per un campo modificando la definizione del tipo di elemento di lavoro in cui viene visualizzato il campo:
Nome visualizzato nel form elemento di lavoro.Vedere Riferimento all'elemento XML Control.
Testo della Guida.Vedere Definire il testo della Guida di un campo elemento di lavoro.
Valori consentiti o elementi di un elenco di selezione o di un menu a discesa.Vedere Definire elenchi utenti, elenchi di opzioni ed elenchi globali.
Esempi
Se non diversamente specificato, i valori seguenti vengono applicati in ogni esempio:
URI per la raccolta di progetti team: http://AdventureWorksServer:8080/tfs/DefaultCollection
Nome del campo elemento di lavoro: AdventureWorks.Field
Codifica predefinita: UTF-8
Campi elenco
Utilizzare witadmin listfields per visualizzare il set di campi in uso, per selezionarne uno da aggiungere a un tipo di elemento di lavoro.Inoltre, è possibile elencare le assegnazioni degli attributi definiti per un campo specifico e determinare quali campi vengono utilizzati dai progetti team.
Visualizzare gli attributi di un campo elemento di lavoro
Immettere il comando seguente per elencare gli attributi definiti per un campo specificato, come Microsoft.VSTS.Common.Issue.
witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:Microsoft.VSTS.Common.Issue
Come mostrato in questo esempio, per il campo denominato vengono visualizzate le informazioni sul campo e sugli attributi.
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 ogni progetto e il tipo di elemento di lavoro in cui viene utilizzato il campo.Per ulteriori informazioni sugli attributi di campo, vedere Riferimento ai campi degli elementi di lavoro per ALM di Visual Studio.
Lasciare tutti i campi in una raccolta di progetti team
Immettere il comando seguente per elencare tutti i campi definiti per una raccolta di progetti team.
witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection
Vengono visualizzate le informazioni per tutti i campi della raccolta di progetti denominata.Vedere Riferimento ai campi degli elementi di lavoro per ALM di Visual Studio.
Campi elenco non utilizzati
Immettere il seguente comando per elencare i campi che non sono più utilizzati nella raccolta di progetti team da alcun tipo di elemento di lavoro.
witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /unused
Come mostrato nell'esempio seguente, per ogni campo non utilizzato vengono visualizzate informazioni sul campo e sugli attributi.
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 per soddisfare le convenzioni di denominazione utilizzate dal team.Si noti che il nuovo nome viene applicato a tutti i tipi di elementi di lavoro che fanno riferimento al campo modificato in tutti i progetti team nella 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 elemento di lavoro può essere diverso dal nome descrittivo definito per il campo.
Per rinominare un campo elemento di lavoro
Immettere il comando seguente per rinominare il nome descrittivo assegnato a Microsoft.VSTS.Common.Rank in Livello di priorità.
witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:Microsoft.VSTS.Common.Rank /name:"Important Rank"
Al prompt di conferma digitare y e premere INVIO.Attendere il ricevimento del messaggio riportato di seguito:
Field renamed.
Per verificare le modifiche importate in un singolo progetto
In Team Explorer, scegliere Aggiorna.
Gli ultimi aggiornamenti vengono scaricati dal server, incluse le modifiche appena apportate al nome campo.Attendere alcuni secondi il completamento dell'aggiornamento.
Scegliere Nuova query per creare una query.
Nell'Editor query scegliere il collegamento Fare clic qui per aggiungere una clausola per aggiungere una riga, selezionare la cella Campo vuota e digitarvi Classifica.Il messaggio riportato di seguito verrà visualizzato sopra l'elenco dei risultati.In questo messaggio viene indicato che non è possibile individuare Classifica.
Eseguire la query per visualizzarne i risultati. TF51005: la query fa riferimento a un campo inesistente.L'errore è causato da <<Classificare>>.
Eliminare il valore Classifica dalla cella Campo e digitarvi Livello di priorità.
Selezionare <> nella cella Operatore e digitare 1 all'interno della cella Valore.
Sulla barra degli strumenti Query, scegliere Esegui.
Aprire il menu di scelta rapida per qualsiasi riga nei risultati e selezionare Opzioni colonne.Scorrere verso il basso nell'elenco Colonne disponibili.Si noti che il campo Classifica non è più presente, mentre è presente il campo Livello di priorità.
Selezionare Livello di priorità nella casella Colonne disponibili, quindi selezionare il pulsante > (aggiungi colonne selezionate).Scegliere OK.
Il nome descrittivo di Microsoft.VSTS.Common.Rank è stato rinominato da Classifica in Livello di priorità nel generatore di query e nell'elenco risultati.
Chiudere la query.Scegliere No quando viene visualizzata la richiesta di salvare la query.
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.
Si noti che, nella casella Stato, l'etichetta relativa al campo rinominato, Classifica, non è stata modificata.Ciò è dovuto al fatto che l'ambito delle etichette dei campi nei form degli elementi di lavoro è limitato al progetto team principale e tali etichette sono indipendenti dal nome del campo del server appena specificato.
[!NOTA]
Per ulteriori informazioni sulla modifica delle etichette dei campi nei form degli elementi di lavoro, vedere Modificare l'etichetta di un campo.
Chiudere la nuova attività e scegliere No quando viene richiesto di salvare l'elemento di lavoro.
Modificare il rapporto come valore per un campo
Il seguente comando imposta la possibilità di segnalare il tipo del campo AdventureWorks.CreatedOn di tipo DateTime su dimension.I dati di questo campo vengono immessi nel data warehouse e nei database di Analysis Services in modo da potere essere utilizzati per filtrare i rapporti.
witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.CreatedOn /reportingtype:dimension
Il seguente comando imposta la possibilità di segnalare il tipo del campo AdventureWorks.Field di tipo Double su measure.Tutte le misure vengono aggregate come somma.
witadmin reportfield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.Field /reportingtype:measure
Abilitare la sincronizzazione di un campo del nome di persona personalizzato.
Nel comando seguente viene abilitata la sincronizzazione per il campo di elemento di lavoro AW.CustomerName definito per Collection1 nel AdventureWorksServer.
Verificare il tipo di dati del campo che si desidera convertire
Verificare il tipo di dati assegnato al campo, come MyCompany.CustomerName, che si desidera sincronizzare immettendo il comando seguente:
witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomerName
Abilitare la sincronizzazione
Per abilitare la sincronizzazione per un campo contenente nomi di persona, digitare il comando seguente, sostituendo i dati con gli argomenti riportati di seguito:
witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomerName /syncnamechanges:true
Viene visualizzata la richiesta di conferma seguente:
This will change properties for field {0} on the Team Foundation Server.Do you want to continue?
Digitare 0 per confermare che si desidera modificare il campo o 1 per annullare la richiesta.
Se la richiesta di modifica viene completata, viene visualizzato il seguente messaggio di conferma:
The field was updated.
Se la richiesta di modifica non viene completata, viene visualizzato un messaggio di errore.Il tentativo di modificare un campo di riferimento di sistema oppure di modificare un campo di un tipo di dati diverso da String è tra gli errori più comuni.Queste operazioni non sono supportate.
Eliminare un campo
Prima di eliminare un campo, verificare che il campo non venga utilizzato.Se il campo viene utilizzato, è necessario prima rimuovere il campo dai tipi di elemento di lavoro che lo utilizzano prima di eliminarlo dalla raccolta 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 è in uso
Immettere il comando seguente, specificando il nome di riferimento per il campo dell'elemento di lavoro, come MyCompany.MyProcess.MyField.
witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.MyProcess.MyField
Nelle informazioni sul campo visualizzate, verificare che il valore di Use sia "Not In Use", come mostrato nell'esempio seguente.
Field: MyCompany.MyProcess.MyField Name: MyField Type: String Reportable As: dimension Use: Not In Use Indexed: False
Se il campo Use indica che il campo è in uso, è necessario eliminarlo da ogni tipo di elemento di lavoro per ogni progetto team elencato.Ad esempio, il campo Microsoft.VSTS.TCM.SystemInfo indica che è utilizzato dai tipi di elemento 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 ognuno dei tipi di elemento di lavoro elencati per ognuno dei progetti team per cui è definito.Per rimuovere il campo, modificare la definizione per il tipo di elemento di lavoro eliminando gli elementi Control e FIELD contenenti il nome di riferimento del campo.Vedere Personalizzare e gestore i tipi di elemento di lavoro [witadmin], Elemento FIELD (Definizione) e Riferimento all'elemento XML Control.
Eliminare un campo da una raccolta di progetti team
Immettere il comando seguente per eliminare il campo MyCompany.MyProcess.MyField quindi selezionare Invio.
witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:RefName
Per completare questo passaggio, digitare y al prompt di conferma.
Vedere anche
Concetti
Risolvere conflitti di schema che si verificano nel data warehouse
Aggiungere e modificare campi elemento di lavoro per supportare la creazione di rapporti
Riferimento ai campi degli elementi di lavoro per ALM di Visual Studio
Riferimento ai campi segnalabili per ALM di Visual Studio
Altre risorse
witAdmin: personalizzare e gestire oggetti per il rilevamento degli elementi di lavoro