Udostępnij przez


Zarządzanie polami elementów roboczych

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

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.

Narzędzie wiersza polecenia witadmin zapewnia zaawansowane możliwości zarządzania polami elementów roboczych w kolekcji projektu. Niezależnie od tego, czy chcesz zmienić nazwy pól, dostosować typy danych, czy skonfigurować synchronizację z dostawcami tożsamości, te polecenia zapewniają szczegółową kontrolę nad środowiskiem śledzenia pracy.

Co można zrobić za pomocą poleceń pól witadmin

Użyj następujących poleceń witadmin , aby zarządzać polami we wszystkich typach elementów roboczych i projektach w kolekcji:

  • changefield: Modyfikowanie atrybutów pól, które mają zastosowanie do całej kolekcji, w tym:
    • Konwersja typu danych między formatami PlainText i HTML

    Ważne

    Podczas uaktualniania serwera Usługi Azure DevOps pole Opis (System.Description) automatycznie konwertuje element z PlainText na HTML. changefield Użyj polecenia , aby przywrócić to w razie potrzeby.

    • Przyjazne nazwy wyświetlane w zapytaniach elementów roboczych (mogą się różnić od etykiet formularzy)
    • Atrybuty raportowania na potrzeby integracji magazynu danych
    • Synchronizacja tożsamości z identyfikatorem Entra firmy Microsoft lub usługą Active Directory
  • deletefield: Usuń nieużywane pola z kolekcji
  • listfields: Wyświetlanie atrybutów pól i użycia w projektach

Napiwek

  • Aby dodać pola globalne w lokalnych środowiskach XML, zmodyfikuj globalny plik przepływu pracy i zaimportuj je do kolekcji.
  • Polecenie witadmin indexfield jest przestarzałe. Indeksowanie pól odbywa się automatycznie.

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 ProfessionalEnterprise zamiast programu , w zależności od zainstalowanej Communitywersji.

Dla programu Visual Studio 2019

%programfiles(x86)%\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer

lub ProfessionalEnterprise zamiast programu , w zależności od zainstalowanej Communitywersji.

Dla programu Visual Studio 2017

%programfiles(x86)%\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer

lub TeamExplorerProfessional zamiast programu , w zależności od zainstalowanej Enterprisewersji.

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

Zadanie Wymagane uprawnienia
Pola w liście Wyświetlanie uprawnień informacji na poziomie projektu ustawionych na Zezwalaj dla projektu w kolekcji
Usuwanie lub zmienianie nazw pól Członek grupy zabezpieczeń Administratorzy kolekcji projektów
Zmienianie atrybutów pola Członek grupy zabezpieczeń Administratorzy kolekcji projektów

Aby uzyskać więcej informacji, zobacz Zmiana 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. 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.

Składnia

Użyj następujących wzorców składni poleceń, aby zarządzać polami elementów roboczych za pomocą narzędzia witadmin:

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.
/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 identyfikatorze Entra firmy Microsoft, 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 identyfikatorem Entra firmy Microsoft i usługą Active Directory

Skonfiguruj niestandardowe pola nazw osób, aby automatycznie aktualizować, gdy nazwy użytkowników zmieniają się u dostawcy tożsamości.

Kiedy włączyć synchronizację

Tylko pola niestandardowe: należy ręcznie włączyć synchronizację dla dowolnych niestandardowych pól elementów roboczych używanych do przypisywania nazwisk osób.

Pola systemowe: wszystkie wbudowane pola person-name automatycznie mają włączoną synchronizację:

  • System.AssignedTo
  • System.ChangedBy
  • System.CreatedBy

Obsługa dostawcy tożsamości

Środowisko Dostawca tożsamości
Azure DevOps Services Microsoft Entra ID
Azure DevOps Server Active Directory lub grupa robocza

Jak działa synchronizacja

Państwo Zachowanie
Przed włączeniem Pole zawiera statyczne ciągi tekstowe
Po włączeniu Pole wyświetla bieżącą nazwę użytkownika od dostawcy tożsamości
Kiedy nazwy się zmieniają Pola z automatycznym syncnamechanges=true aktualizowaniem

Ograniczenia nazw grup

Po włączeniu atrybutu syncnamechanges w polu Ciąg akceptuje prawidłowe nazwy użytkowników, ale nie zezwala na nazwy grup , jeśli ma zastosowanie którykolwiek z tych warunków:

  • VALIDUSER reguła określona we wszystkich typach elementów roboczych
  • VALIDUSER reguła określona dla określonego typu elementu roboczego
  • ALLOWEDVALUES reguła określona z kryteriami filtru, które wyklucza grupy

Zakres konfiguracji

Ważne

Należy włączyć synchronizację dla każdego pola w każdej kolekcji projektów zawierającej pola niestandardowe.

Aby uzyskać więcej informacji, zobacz:

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:

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ół. 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

  1. 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"  
    
  2. Po wyświetleniu monitu o potwierdzenie wprowadź, y a następnie wybierz ENTER. Poczekaj na otrzymanie następującego komunikatu:

    Zmieniono nazwę pola.

Aby zweryfikować zmiany zaimportowane do pojedynczego projektu

  1. W programie Team Explorer wybierz pozycję Odśwież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.

  2. Wybierz pozycję Nowe zapytanie , aby utworzyć zapytanie.

  3. W Edytorze zapytań wybierz link Kliknij tutaj, aby dodać link klauzuli w celu dodania wiersza, zaznacz pustą komórkę Pole, a następnie w komórce wprowadź .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 <\<Rank>>element .

  4. Usuń wartość Rank (Ranga ) z komórki Field (Pole ) i wprowadź Important Rank wartość w komórce.

  5. Wybierz <> w komórce Operator i wprowadź 1 wartość w komórce Value .

  6. Na pasku narzędzi Zapytanie wybierz pozycję Uruchamianie zapytaniaUruchom.

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

  8. 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. Nazwa rangi została zmieniona z Rank na Important Rank (Ranga) na Important Rank (Rang

  9. Zamknij zapytanie. Wybierz pozycję Nie po wyświetleniu monitu o zapisanie zapytania.

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

  11. Zwróć uwagę, że w polu Stan etykieta pola o zmienionej nazwie nie uległa zmianie. Etykiety pól w formularzach elementów roboczych są ograniczone do projektu nadrzędnego i są niezależne od określonej nazwy pola dla 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.

  12. 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 agregują 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

  1. 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  
    
  2. Zostanie wyświetlony następujący monit o potwierdzenie:

    Spowoduje to zmianę właściwości pola {0} na serwerze Azure DevOps Server. Czy chcesz kontynuować?

  3. Wprowadź , 0 aby potwierdzić, że chcesz zmienić pole lub 1 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  

Sprawdź, czy pole nie jest używane

  1. 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  
    
  2. 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 on zdefiniowany. Aby usunąć pole, należy zmodyfikować definicję typu elementu roboczego, usuwając FIELD elementy i Control 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.