Zarządzanie polami elementów roboczych
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Ważne
W przypadku lokalnego modelu procesów XML można użyć narzędzia witadmin do wyświetlania listy, importowania, eksportowania i modyfikowania procesu dla projektu. W przypadku modeli procesów Dziedziczone i Hostowane xml można używać tylko narzędzia witadmin do wyświetlania listy i eksportowania informacji o procesie. Aby zapoznać się z omówieniem modeli procesów i obsługiwanymi elementami, zobacz Dostosowywanie środowiska śledzenia pracy.
Możesz zarządzać polami zdefiniowanymi dla typów elementów roboczych zdefiniowanych dla kolekcji projektów (lokalny kod XML) przy użyciu następujących poleceń witadmin . Jeśli chcesz dodać pole globalne (prawidłowe dla lokalnego kodu XML), możesz to zrobić, modyfikując globalny plik przepływu pracy i importując je do kolekcji.
changefield
: zmienia co najmniej jeden atrybut pola. Po zmianie jednego z następujących atrybutów należy zmienić go dla wszystkich typów elementów roboczych i projektów w kolekcji projektów:Typ danych lub
PlainText
HTML
pola.Ważne
Podczas uaktualniania serwera Team Foundation Server z wcześniejszej wersji do bieżącej wersji przypisanie typu pola Opis (System.Description) jest automatycznie konwertowane z
PlainText
naHTML
.changefield
Za pomocą polecenia możesz przywrócić zawartość tego pola, aby wyświetlić zwykły tekst.Przyjazna nazwa wyświetlana w zapytaniu elementu roboczego. Ta nazwa może się różnić od tej wyświetlanej w formularzu elementu roboczego.
Atrybuty raportowania, które zawierają nazwę pola wyświetlanego w raporcie, nazwę raportu referencyjnego i typ raportowania.
Synchronizacja z usługą Active Directory — można włączyć/wyłączyć synchronizację pól nazw osób.
deletefield
: usuwa określone pole.listfields
: Wyświetla listę atrybutów dla wszystkich pól lub określonego pola.
Uwaga
Polecenie witadmin indexfield
zostało wycofane z usługą Azure DevOps Server 2019 i nowszymi wersjami. Pola indeksowania nie są już wymagane.
witadmin
Uruchamianie narzędzia wiersza polecenia
Aby uruchomić witadmin
narzędzie wiersza polecenia, otwórz okno wiersza polecenia, w którym jest zainstalowany program Visual Studio. Narzędzie witadmin
wiersza polecenia jest instalowane z dowolną wersją programu Visual Studio. Dostęp do tego narzędzia można uzyskać, instalując bezpłatną wersję programu Visual Studio Community lub Visual Studio Team Explorer.
Uwaga
Aby nawiązać połączenie z usługą Azure DevOps Services, zalecamy użycie najnowszej wersji programu Visual Studio lub Visual Studio Community.
Uwaga
Aby nawiązać połączenie z serwerem lokalnym, zalecamy użycie tej samej lub nowszej wersji programu Visual Studio co serwer Usługi Azure DevOps. Jeśli na przykład połączysz się z usługą Azure DevOps Server 2019, połącz się z projektem z wersji programu Visual Studio 2019.
Dla programu Visual Studio 2022
%programfiles(x86)%\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer
lub Professional
Enterprise
zamiast programu , w zależności od zainstalowanej Community
wersji.
Dla programu Visual Studio 2019
%programfiles(x86)%\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer
lub Professional
Enterprise
zamiast programu , w zależności od zainstalowanej Community
wersji.
Dla programu Visual Studio 2017
%programfiles(x86)%\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer
lub TeamExplorer
Professional
zamiast programu , w zależności od zainstalowanej Enterprise
wersji.
W 32-bitowej wersji systemu Windows zastąp ciąg %programfiles(x86)% ciągiem %programfiles%. Możesz zainstalować program Visual Studio Community (który zapewnia dostęp do programu Team Explorer) lub Visual Studio Team Explorer 2017 bezpłatnie.
Aby zapoznać się z omówieniem pól zdefiniowanych w domyślnym szablonie procesu, zobacz Indeks pola elementu roboczego.
Napiwek
Za pomocą narzędzia witadmin można importować i eksportować pliki definicji. Inne narzędzia, których można użyć, obejmują Edytor procesów (wymaga zainstalowania wersji programu Visual Studio). Zainstaluj edytor szablonu procesu z witryny Visual Studio Marketplace.
Wymagania wstępne
- Aby wyświetlić listę pól, musisz mieć uprawnienie Wyświetl informacje na poziomie projektu dla projektu w kolekcji ustawione na Zezwalaj.
- Aby usunąć lub zmienić nazwę pól lub zmienić atrybut pola, musisz być członkiem grupy zabezpieczeń Administratorzy team Foundation lub grupy zabezpieczeń Administratorzy kolekcji projektów.
Aby uzyskać więcej informacji, zobacz Zmienianie uprawnień na poziomie kolekcji projektów.
Uwaga
Nawet jeśli logujesz się przy użyciu uprawnień administracyjnych, musisz otworzyć okno wiersza polecenia z podwyższonym poziomem uprawnień, aby wykonać tę funkcję na serwerze z systemem Windows Server 2008. Aby otworzyć okno wiersza polecenia z podwyższonym poziomem uprawnień, wybierz pozycję Uruchom, otwórz menu skrótów wiersza polecenia, a następnie wybierz polecenie Uruchom jako administrator. Aby uzyskać więcej informacji, zobacz witrynę sieci Web firmy Microsoft: Kontrola dostępu użytkowników.
Składnia
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 listfields /collection:CollectionURL /n:RefName [/unused]
Parametry
Parametr | Opis |
---|---|
/collection :CollectionURL |
Określa identyfikator URI kolekcji projektu. Na przykład: Format lokalny: http://ServerName:Port/VirtualDirectoryName/CollectionName Jeśli nie jest używany katalog wirtualny, użyj następującego formatu: http://ServerName:Port/CollectionName . |
/n:RefName /n:Name |
Nazwa odwołania pola typu elementu roboczego. |
/index |
Określa, aby włączyć lub wyłączyć indeksowanie dla określonego pola. Określ , aby włączyć indeksowanie i wyłączyć , aby wyłączyć indeksowanie. |
/name:NewName |
Określa nową nazwę pola. |
/syncnamechanges |
Określa, aby używać pola elementu roboczego do przechowywania nazw i aktualizowania w miarę wprowadzania zmian w usłudze Active Directory lub grupie roboczej. Ta opcja jest prawidłowa tylko wtedy, gdy dla pola z typem danych ciąg jest określony .typename Określ true , aby włączyć synchronizację dla pola danych, określ false , aby wyłączyć synchronizację dla pola danych. |
/reportingname:ReportingName |
Określa nazwę pola w magazynie danych, które ma być używane do raportowania. |
/reportingrefname:ReportingRefName |
Określa nazwę odwołania pola w magazynie danych, które ma być używane do raportowania. |
/reportingtype:Type |
Określa sposób użycia pola w magazynie na potrzeby raportowania. Następujące wartości są prawidłowe: - dimension: Używane dla pól Liczba całkowita, Ciąg lub Data/Godzina.- detail: Służy do pól Liczba całkowita, Podwójna, Ciąg lub Data/Godzina.- measure: Używane dla pól Liczba całkowita i Podwójna. Domyślny typ agregacji to suma. Możesz określić inny typ agregacji przy użyciu parametru formuły.- none: Służy do wyłączania raportów w polu.Aby uzyskać więcej informacji, zobacz About work item fields and attributes (Informacje o polach i atrybutach elementu roboczego). |
/reportingformula:Formula |
Określa formułę agregacji, która ma być używana, gdy pole jest zgłaszane jako measure . Jedyną obsługiwaną formułą jest sum . |
/type:HTML | PlainText |
Określa, aby przekonwertować zawartość pola z PlainText na HTML lub z HTML na PlainText . Tę opcję można określić tylko dla pól, których przypisanie typu to PlainText lub HTML . Zobacz odwołanie do elementu FIELD (Definition). |
/unused |
Wyświetla listę wszystkich pól, które nie są używane przez żaden projekt zdefiniowany w kolekcji projektów. |
/noprompt |
Wyłącza monit o potwierdzenie. |
/? lub help |
Wyświetla pomoc dotyczącą polecenia w oknie wiersza polecenia. |
Synchronizowanie nazwisk osób z usługą Active Directory
Należy ręcznie włączyć synchronizację dowolnych niestandardowych pól elementów roboczych, które są używane do przypisywania nazwisk osób odwołujących się do usługi Active Directory. Należy włączyć synchronizację dla każdego pola dla każdej kolekcji projektów zawierającej pola niestandardowe.
Wszystkie pola odwołań systemowych, które pokazują nazwy osób, mają atrybut syncnamechanges
ustawiony na true
. Takie pola obejmują System.AuthorizedAs, System.AssignedTo, System.ChangedBy i System.CreatedBy. Synchronizacja włączona dla każdego pola nazwy osoby zdefiniowanego w jednym z domyślnych szablonów procesów. Aby uzyskać więcej informacji, zobacz Pola przypisania i przepływu pracy.
Po włączeniu synchronizacji pole nie zawiera już ciągu statycznego. Zamiast tego w polu jest wyświetlana nazwa skojarzona z kontem użytkownika. Po zmianie nazwy użytkownika w usłudze Active Directory lub w grupie roboczej pole z syncnamechanges
ustawioną wartością true
automatycznie wyświetla nową nazwę.
Po przypisaniu atrybutu syncnamechanges
do pola Ciąg pole zawsze akceptuje prawidłowe nazwy użytkowników. Jednak pole nie zezwala na nazwy grup, które są przechowywane w programie Team Foundation Server lub w usłudze Active Directory, jeśli którykolwiek z następujących warunków:true
Reguła
VALIDUSER
jest określana we wszystkich typach elementów roboczychReguła
VALIDUSER
jest określana dla typu elementu roboczegoReguła
ALLOWEDVALUES
jest określana dla typu elementu roboczego, a reguła ma kryteria filtrowania, które wyklucza grupyAby uzyskać więcej informacji, zobacz Wszystkie elementy FIELD.
Atrybuty, które można zmienić dla każdego typu elementu roboczego
Należy zmienić następujące atrybuty lub wartości zdefiniowane dla pola, zmieniając definicję typu elementu roboczego, w której pojawia się pole:
- Nazwa wyświetlana w formularzu elementu roboczego. Zobacz WebLayout and Control elements (Elementy webLayout i kontrolka ) lub Control XML — dokumentacja elementów XML.
- Tekst pomocy. Zobacz Reguły i ocena reguł.
- Dozwolone wartości lub elementy w menu rozwijanym lub liście wyboru. Zobacz ALLOWEDVALUES, SUGGESTEDVALUES i PROHIBITEDVALUES elementy XML.
Przykłady
Jeśli nie określono inaczej, następujące wartości mają zastosowanie w każdym przykładzie:
- Identyfikator URI kolekcji projektów: http://AdventureWorksServer:8080/tfs/DefaultCollection
- Nazwa pola elementu roboczego: AdventureWorks.Field
- Kodowanie domyślne: UTF-8
Pola listy
Użyj witadmin listfields
polecenia , aby wyświetlić zestaw używanych pól, aby wybrać jeden do dodania do typu elementu roboczego. Ponadto można wyświetlić listę przypisań atrybutów zdefiniowanych dla określonego pola i określić, które pola są używane przez które projekty.
Wyświetlanie atrybutów pola elementu roboczego
Wprowadź następujące polecenie, aby wyświetlić listę atrybutów zdefiniowanych dla określonego pola, na przykład
Microsoft.VSTS.Common.Issue
.witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:Microsoft.VSTS.Common.Issue
Informacje o polach i atrybutach są wyświetlane dla nazwanego pola, jak pokazano w tym przykładzie.
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
Parametr Use wskazuje nazwę każdego projektu i typ elementu roboczego, w którym jest używane pole. Aby uzyskać więcej informacji na temat atrybutów pól, zobacz Indeks pól elementów roboczych.
Wyświetlanie listy wszystkich pól w kolekcji projektów
Wprowadź następujące polecenie, aby wyświetlić listę wszystkich pól zdefiniowanych dla kolekcji projektów.
witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection
Wyświetlane są informacje o polu dla wszystkich pól kolekcji nazwanych projektów. Zobacz Indeks pól elementów roboczych.
Wyświetlanie listy pól, które nie są używane
Wprowadź następujące polecenie, aby wyświetlić listę pól, które nie są już używane w kolekcji projektów przez dowolny typ elementu roboczego.
witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /unused
Informacje o polach i atrybutach są wyświetlane dla każdego pola, które nie jest używane, jak pokazano w tym przykładzie.
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
Zmienianie nazwy pola
Przyjazną nazwę pola elementu roboczego można zmienić tak, aby spełniała konwencje nazewnictwa używane przez zespół. Należy pamiętać, że nowa nazwa jest stosowana do wszystkich typów elementów roboczych odwołujących się do zmienionego pola we wszystkich projektach w kolekcji projektów. Przyjazna nazwa jest wyświetlana podczas definiowania kryteriów filtru w zapytaniu elementu roboczego. Nazwa wyświetlana w formularzu elementu roboczego może być inna niż przyjazna nazwa zdefiniowana dla pola.
Aby zmienić nazwę pola elementu roboczego
Wprowadź następujące polecenie, aby zmienić nazwę przyjaznej nazwy przypisanej do
Microsoft.VSTS.Common.Rank
ważnej rangi.witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:Microsoft.VSTS.Common.Rank /name:"Important Rank"
W wierszu polecenia potwierdzenia wpisz y , a następnie naciśnij ENTER. Poczekaj na otrzymanie następującego komunikatu:
Zmieniono nazwę pola.
Aby zweryfikować zmiany zaimportowane do pojedynczego projektu
W programie Team Explorer wybierz pozycję Odśwież.
Najnowsze aktualizacje są pobierane z serwera, w tym zmiany wprowadzone właśnie w nazwie pola. Poczekaj kilka sekund na zakończenie odświeżania.
Wybierz pozycję Nowe zapytanie , aby utworzyć zapytanie.
W Edytor Power Query wybierz link Kliknij tutaj, aby dodać link klauzuli, aby dodać wiersz, wybierz pustą komórkę Pole, a następnie w komórce wpisz Rank. Poniższy komunikat, który pojawia się powyżej listy wyników. Ten komunikat wskazuje, że nie można odnaleźć rangi.
Uruchom zapytanie, aby wyświetlić wyniki zapytania. TF51005: Zapytanie odwołuje się do pola, które nie istnieje. Błąd jest spowodowany przez <<rangę>>.
Usuń wartość Rank (Ranga ) z komórki Field (Pole ) i wpisz wartość Important Rank (Ważna ranga ) w komórce.
Wybierz <> w komórce Operator i wpisz wartość 1 w komórce Wartość .
Na pasku narzędzi Zapytanie wybierz pozycję Uruchom.
Otwórz menu skrótów dla dowolnego wiersza w wynikach i wybierz pozycję Opcje kolumny. Przewiń w dół na liście Dostępne kolumny . Zwróć uwagę, że pole Ranga nie jest już obecne, ale pole Ważne rangi jest obecne.
Wybierz pozycję Ważna ranga w polu Dostępne kolumny , a następnie wybierz > przycisk (dodaj wybrane kolumny). Wybierz pozycję OK.
Zwróć uwagę, że przyjazna nazwa microsoft.VSTS.Common.Rank została zmieniona z Rank na Important Rank (Ranga) na Important Rank (Ranga) w konstruktorze zapytań i na liście wyników.
Zamknij zapytanie. Wybierz pozycję Nie po wyświetleniu monitu o zapisanie zapytania.
Utwórz nowy element roboczy zadania. Wybierz link Nowe elementy robocze, a następnie wybierz pozycję Zadanie.
Ten element roboczy jest tworzony na podstawie typu elementu roboczego, który został zmieniony i zaimportowany.
Zwróć uwagę, że w polu Stan etykieta dla zmienionego pola Ranga nie uległa zmianie. Dzieje się tak, ponieważ etykiety pól w formularzach elementów roboczych są ograniczone do projektu nadrzędnego i są niezależne od nazwy pola całego serwera.
Uwaga
Aby uzyskać więcej informacji na temat zmieniania etykiet pól w formularzach elementów roboczych, zobacz Dokumentacja elementów XML kontrolki.
Zamknij nowe zadanie i wybierz pozycję Nie po wyświetleniu monitu o zapisanie elementu roboczego.
Zmienianie raportu jako wartości pola
Następujące polecenie określa możliwość raportowania typu pola DateTime AdventureWorks.CreatedOn do wymiaru. Dane tego pola wprowadzają bazy danych magazynu i usług Analysis Services, aby można je było używać do filtrowania raportów.
witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.CreatedOn /reportingtype:dimension
Następujące polecenie określa możliwość raportowania typu pola Double AdventureWorks.Field do mierzenia. Wszystkie miary są agregowane według sumy.
witadmin reportfield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.Field /reportingtype:measure
Włączanie synchronizacji niestandardowego pola person-name
Następujące polecenie umożliwia synchronizację dla pola elementu roboczego AW. CustomerName zdefiniowana dla kolekcji Collection1 na serwerze AdventureWorksServer.
Sprawdź typ danych pola, które chcesz przekonwertować
Sprawdź typ danych przypisany do pola, na przykład MyCompany.CustomerName, który chcesz zsynchronizować, wprowadzając następujące polecenie:
witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomerName
Włączanie synchronizacji
Aby włączyć synchronizację dla pola o nazwie osoby, wpisz następujące polecenie, podstawiając dane dla argumentów, które są wyświetlane tutaj:
witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomerName /syncnamechanges:true
Zostanie wyświetlony następujący monit o potwierdzenie:
Spowoduje to zmianę właściwości pola {0} na serwerze Team Foundation Server. Czy chcesz kontynuować?
Wpisz 0 , aby potwierdzić, że chcesz zmienić pole lub 1 , aby anulować żądanie.
Jeśli żądanie zmiany powiedzie się, zostanie wyświetlony następujący komunikat potwierdzający:
Pole zostało zaktualizowane.
Jeśli żądanie zmiany nie powiedzie się, zostanie wyświetlony komunikat o błędzie. Najczęstsze błędy, które można popełnić, próbują zmienić pole odwołania systemu lub próbuje zmienić pole typu danych innego niż Ciąg. Te operacje nie są obsługiwane.
Usuwanie pola
Przed usunięciem pola sprawdź, czy pole nie jest używane. Jeśli pole jest używane, należy najpierw usunąć pole z typów elementów roboczych, które używają go przed usunięciem go z kolekcji projektu. Następujące polecenie usuwa pole AdventureWorks.Field
z kolekcji Collection1:
witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.Field
Sprawdzanie, czy pole nie jest używane
Wprowadź następujące polecenie, określając nazwę odwołania dla pola elementu roboczego, na przykład
MyCompany.MyProcess.MyField
.witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.MyProcess.MyField
W wyświetlonych informacjach dotyczących pola sprawdź, czy wartość opcji Użyj to "Nie w użyciu", jak pokazano w tym przykładzie.
Field: MyCompany.MyProcess.MyField Name: MyField Type: String Reportable As: dimension Use: Not In Use Indexed: False
Jeśli pole Użyj wskazuje, że pole jest używane, musisz usunąć je z każdego typu elementu roboczego dla każdego projektu, który jest wymieniony. Na przykład pole wskazuje,
Microsoft.VSTS.TCM.SystemInfo
że jest on używany przez typy elementów roboczych Bug and Code Defect dla czterech projektów: Arroyo, Desert, Palm i 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
Aby można było usunąć to pole, należy usunąć je z każdego z typów elementów roboczych wymienionych dla każdego projektu, dla którego jest zdefiniowany. Aby usunąć pole, należy zmodyfikować definicję typu elementu roboczego, usuwając
FIELD
elementy iControl
zawierające nazwę odwołania do pola. Zobacz Importowanie, eksportowanie i zarządzanie typami elementów roboczych, odwołanie do elementów FIELD (Definicja) i Kontrola.
Usuwanie pola z kolekcji projektów
Wprowadź następujące polecenie, aby usunąć MyCompany.MyProcess.MyField
pole, a następnie wybierz Enter.
witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:RefName
Wprowadź y po wyświetleniu monitu o potwierdzenie, aby wykonać ten krok.