Freigeben über


Hinzufügen oder Ändern eines Felds zur Auftragsnachverfolgung

Azure DevOps Server 2022 – Azure DevOps Server 2019

Ihr Projekt enthält 100 oder mehr Datenfelder, basierend auf dem Prozess, mit dem Sie Ihr Projekt erstellen, z . B. Agile, Basic, Scrum oder CMMI. Jedem Arbeitselement wird ein Arbeitselementtyp (Work Item Type, WIT) zugeordnet, und die Daten, die Sie nachverfolgen können, entsprechen den Feldern, die dem WIT zugewiesen wurden. Sie aktualisieren Daten für eine Arbeitsaufgabe, indem Sie das Datenfeld innerhalb einer Arbeitsaufgabe ändern.

Hinweis

Informationen zu Azure DevOps Services oder für Projektsammlungen, die das geerbte Prozessmodell verwenden, finden Sie unter Hinzufügen eines benutzerdefinierten Felds zu einem Arbeitsaufgabentyp.

Sie können ein vorhandenes Feld ändern oder ein benutzerdefiniertes Feld hinzufügen, um die Nachverfolgung zusätzlicher Datenanforderungen zu unterstützen. Sie können z. B. die Auswahlliste in einem Dropdownmenü anpassen oder eine Regel hinzufügen, um einen Standardwert anzugeben oder den gewünschten Wert einzuschränken.

Nicht alle Auswahllisten werden auf die gleiche Weise definiert. Einige Listen werden über die Benutzeroberfläche, den Workflow für ein WIT oder durch Hinzufügen von Benutzerkonten zu einem Projekt definiert, wie in der folgenden Tabelle angegeben.

Voraussetzungen

  • Zum Auflisten von Feldern benötigen Sie die Berechtigung "Informationen auf Projektebene anzeigen" für das Projekt in der Sammlung auf "Zulassen" festgelegt.
  • Um ein Feld hinzuzufügen oder anzupassen, müssen Sie Mitglied der Gruppe "Projektadministratoren" sein oder die Berechtigung "Projektebene bearbeiten" auf "Zulassen" festlegen lassen.
  • Um Felder zu löschen oder umzubenennen oder ein Attribut eines Felds zu ändern, müssen Sie Mitglied der Sicherheitsgruppe " Team Foundation-Administratoren " oder der Sicherheitsgruppe "Projektsammlungsadministratoren " sein.

Um als Administrator hinzugefügt zu werden, ändern Sie Berechtigungen auf Projektsammlungsebene.

Methoden, nach denen Arbeitsaufgabenfelder hinzugefügt werden

Sie verwenden Arbeitsaufgabenfelder zum Nachverfolgen von Daten für einen Arbeitsaufgabentyp und zum Definieren der Filterkriterien für Abfragen sowie zum Generieren von Berichten. Jedes Datenelement mit Ausnahme von Systemfeldern, die Sie nachverfolgen möchten, muss als Arbeitsaufgabenfeld definiert sein. Sie können Arbeitsaufgabenfelder innerhalb der Definition eines Arbeitsaufgabentyps oder globalen Workflows definieren.

Arbeitsaufgabenfelder werden für eine Projektauflistung verwaltet. Sie fügen Felder hinzu, wenn Sie eine der folgenden Aufgaben ausführen:

  • Erstellen eines Projekts Alle Felder, die innerhalb der Definitionen für Arbeitsaufgabentypen oder globalen Workflow definiert sind und für die ausgewählte Prozessvorlage definiert sind, werden erstellt. Die Kernsystemfelder werden automatisch für jeden Arbeitsaufgabentyp definiert, der für ein Projekt definiert ist. Eine Liste dieser Felder finden Sie unter Arbeitselementfeldindex.

  • Importieren sie eine WIT-Definition. Alle neuen Felder, die innerhalb der Definition für einen Arbeitselementtyp definiert sind, werden der Auflistung hinzugefügt. Weitere Informationen finden Sie in der Referenz zu allen WITD-XML-Elementen.

  • Importieren einer globalen Workflowdefinition. Alle neuen Felder, die innerhalb des globalen Workflows definiert sind, werden der Auflistung hinzugefügt. Sie definieren einen globalen Workflow, wenn Sie eine Reihe von Arbeitsaufgabenfeldern verwalten möchten, die mehrere Arten von Arbeitsaufgaben gemeinsam nutzen. Weitere Informationen finden Sie unter Anpassen des globalen Workflows.

Alle Felder, die in allen WITs und allen globalen Workflows für alle Projekte definiert sind, bilden den vollständigen Satz von Feldern, die in der Auflistung definiert sind. Sie können das Attribut von vorhandenen Feldern ändern, umbenennen und löschen. Es entstehen jedoch bestimmte Kosten, wenn Sie diese Arten von Änderungen vornehmen, insbesondere für lokale Server und Berichte.

Um ein Feld für eine Auflistung hinzuzufügen oder anzupassen, ändern Sie den XML-Inhalt für die WIT-Definition. Definieren Sie jedes Feld über ein FIELD-Element im ABSCHNITT "FIELDS" der WIT-Definition. Informationen zur Struktur und zum Speicherort dieser Dateien finden Sie in der Referenz zu allen FIELD-XML-Elementen.

Hinzufügen eines Felds, Anwenden einer Regel oder Ändern eines Attributs

Um ein benutzerdefiniertes Feld hinzuzufügen, Feldregeln hinzuzufügen oder die Beschriftung eines Felds in einem Arbeitselementformular zu ändern, ändern Sie den Arbeitsaufgabentyp (Work Item Type, WIT) oder Typen, die das Feld verwenden. Folgen Sie der Anpassungssequenz , die Ihrem Prozessmodell entspricht.

Verwenden Sie das Befehlszeilentool witadmin , um ein Feldattribute zu ändern oder ein Feld umzubenennen. Andernfalls fügen Sie zum Ändern eines Felds die regeln hinzu, die dem Feld innerhalb einer WIT-Definition zugeordnet sind.

Zusammenfassung von Feldattributen und Feldregeln

So bearbeiten Sie eine WIT-Definitionsdatei

Um Regeln hinzuzufügen oder ein benutzerdefiniertes Feld hinzuzufügen, exportieren, bearbeiten und importieren Sie dann die WIT-Definitionsdatei.

Tipp

Mit witadmin können Sie Definitionsdateien importieren und exportieren. Weitere Tools, die Sie verwenden können, sind der Prozess-Editor (erfordert, dass Sie eine Version von Visual Studio installiert haben). Installieren Sie den Prozessvorlagen-Editor aus dem Visual Studio Marketplace.

Jedes Feld, das Sie zum Nachverfolgen von Daten verwenden möchten, muss der WIT-Definitionsdatei hinzugefügt werden. Dies gilt für alle Systemfelder (Felder, deren Bezugsname mit System beginnt). Alle Systemfelder werden für alle WITs definiert, unabhängig davon, ob Sie sie in die WIT-Definition einschließen. Weitere Informationen zu den einzelnen Feldern finden Sie unter Arbeitselementfeldindex.

Hinzufügen eines Kontrollkästchens oder eines booleschen Felds

Verwenden Sie die folgende Syntax, um ein boolesches Feld im Abschnitt "FIELDS" der WIT-Definition hinzuzufügen.

<FIELD name="Triage" refname="Fabrikam.Triage" type="Boolean" >
   <DEFAULT from="value" value="False" />
   <HELPTEXT>Triage work item</HELPTEXT>
</FIELD>

Fügen Sie dann die folgende Syntax innerhalb des FORMULARabschnitts hinzu, damit das Feld im Formular angezeigt wird.

<Control Label="Triage" Type="FieldControl" FieldName="Fabrikam.Triage" />

Das Feld wird als Kontrollkästchen im Formular angezeigt.

Anpassen einer Auswahlliste

Auswahllisten sind die aufgezählten Werte, die in einem Dropdownmenü in einem Arbeitsaufgabenformular und der Spalte "Wert " im Abfrage-Editor angezeigt werden. Die Methode, die Sie zum Anpassen einer Auswahlliste verwenden, variiert je nach Feld.

Um die Auswahlliste für die meisten Zeichenfolgen- oder ganzzahligen Felder in einem Arbeitselementformular zu ändern, bearbeiten Sie die WIT-Definition. Wenn Sie z. B. ein benutzerdefiniertes Auflösungsfeld und eine Auswahlliste hinzufügen möchten, geben Sie den XML-Code wie dargestellt an.

Benutzerdefiniertes Feld und Auswahlliste
Benutzerdefinierte Auswahlliste

<FIELD name="Resolution" refname="MyCompany.Resolution" type="String">    
<ALLOWEDVALUES>
<LISTITEM value="By Design" />
<LISTITEM value="Duplicate" />
<LISTITEM value="External" />
<LISTITEM value="Fixed" />
<LISTITEM value="Not Repro" />
<LISTITEM value="Postponed" />
<LISTITEM value="Won't Fix" />
</ALLOWEDVALUES>
</FIELD>

Regeln unterstützen das Kombinieren von Listen, einschränken, für wen eine Liste gilt, und Festlegen von Bedingungen für das Anzeigen einer Liste im Arbeitsaufgabenformular. Regeln steuern, ob eine Verteilerliste erweitert wird, um die einzelnen Elemente anzuzeigen, oder eine Liste mithilfe der optionalen Expanditems - und Filteritem-Attribute gefiltert wird. Verwenden Sie globale Listen, um die Arbeit zu minimieren, die zum Aktualisieren einer Liste erforderlich ist, die für WITs oder Projekte freigegeben ist.

Wenn Sie eine Liste in mehreren WITs oder in mehreren Projekten verwenden, minimiert die Verwaltung als globale Liste Ihre Wartungsanforderungen. Außerdem können Sie eine globale Liste für einen Teil einer Auswahlliste definieren, wenn Teile von Listen in WITs oder Projekten als unterschiedlich angezeigt werden müssen. Siehe " Definieren von Auswahllisten " und "Definieren globaler Listen".

Hinzufügen von Regeln zu einem Feld

Um einem Feld ein benutzerdefiniertes Feld hinzuzufügen oder Regeln hinzuzufügen, bearbeiten Sie die WIT-Definition. Sie können Regeln einschränken, die auf bestimmte Benutzer oder Gruppen angewendet werden sollen. Die meisten Regeln unterstützen die Attribute, auf die sich die Regel konzentriert und nicht angewendet wird.

Mit dem folgenden Codeausschnitt können Sie beispielsweise die Regel erzwingen, die nur Mitglieder des Verwaltungsteams, eine vom Kunden definierte TFS-Gruppe, das Stack Rank-Feld ändern kann, nachdem eine Arbeitsaufgabe erstellt wurde.

<FIELD name="Stack Rank" refname="Microsoft.VSTS.Common.StackRank" type="Double" reportable="dimension">  
   <FROZEN not="[project]\Management Team" />  
   <HELPTEXT>Work first on items with lower-valued stack rank. Set in triage.</HELPTEXT>
</FIELD>  

Sie wenden Regeln an, um die folgenden Aktionen auszuführen:

Gehen Sie wie folgt vor, um diese Aktion auszuführen: Verwenden Sie dieses XML-Element:
Geben Sie einen QuickInfo an. HELPTEXT
Qualifizieren sie den Wert, den ein Feld haben kann. CANNOTLOSEVALUE, EMPTY, FROZEN, NOTSAMEAS, READONLY und REQUIRED
Kopieren Sie einen Wert, oder geben Sie einen Standardwert an. COPY, DEFAULT und SERVERDEFAULT
Einschränken, wer ein Feld ändern kann. VALIDUSER, for and not field rule attributes
Erzwingen des Musterabgleichs für ein Zeichenfolgenfeld. MATCH
Regeln basierend auf Werten in anderen Feldern bedingt anwenden. WHEN, WHENNOT, WHENCHANGED und WHENNOTCHANGED

Systemfelder, deren Namen alle mit dem Präfix "System" (z. B. System.ID) beginnen, sind in Bezug auf die Regeln beschränkt, die Sie anwenden können. Sie können z. B. keine leeren Felder kopieren oder festlegen, die verwendet werden, um nachzuverfolgen, wer eine Arbeitsaufgabe erstellt, geändert oder geschlossen hat, oder Datum-Uhrzeit-Felder, die vom System verwendet werden.

Weitere Informationen zum Anwenden von Feldregeln und Einschränkungen finden Sie unter Regeln und Regelauswertung.

So fügen Sie ein benutzerdefiniertes Feld hinzu

Wenn Sie ein benutzerdefiniertes Feld hinzufügen möchten, bearbeiten Sie die WIT-Definition, um ein FIELD-Element im Abschnitt "FIELDS " und ein Control-Element im FORMULAR-Abschnitt hinzuzufügen.

  1. Exportieren Sie die WIT-Definitionsdatei basierend auf dem verwendeten Prozessmodell.

  2. Suchen Sie den Abschnitt der XML-Datei, die mit FIELDS.

  3. Fügen Sie das FIELD Element hinzu, das den Namen des hinzuzufügenden benutzerdefinierten Felds angibt. Sie müssen die folgenden erforderlichen Attribute angeben: anzeige, namerefname (Verweisname) und type. Weitere Informationen finden Sie unter FIELD (Definition)-Elementreferenz.

    Der folgende Code gibt das benutzerdefinierte Feld, den Requestor, mit einem Verweisnamen FabrikamFiber.MyTeam.Requestor und einer Auswahlliste zulässiger Werte, mit dem Standardwert von Customer an.

    <FIELD name="Requestor" refname="FabrikamFiber.MyTeam.Requestor" type="String" reportable="Dimension">
       <ALLOWEDVALUES>
          <LISTITEM value="Customer" />
          <LISTITEM value="Executive Management" />
          <LISTITEM value="Other" />
          <LISTITEM value="Support" />
          <LISTITEM value="Team" />
          <LISTITEM value="Technicians" />
          <DEFAULTVALUE value="Customer" />
        </ALLOWEDVALUES>
    </FIELD>
    

    Tipp

    Elemente innerhalb der Liste werden immer in alphanumerischer Reihenfolge angezeigt, unabhängig davon, wie Sie sie in die XML-Definitionsdatei eingeben. Der Verweisname oder refnameder programmgesteuerte Name des Felds. Alle anderen Regeln sollten auf die refname. Weitere Informationen finden Sie unter Benennungseinschränkungen und -konventionen.

  4. Fügen Sie das Control Element innerhalb des FORM Abschnitts hinzu, sodass das benutzerdefinierte Feld im Formular innerhalb der Gruppe von Elementen angezeigt wird, in der sie angezeigt werden soll.

    Der folgende Codeausschnitt fügt z. B. das Feld "Requestor" hinzu, das unterhalb des Felds "Grund" im Arbeitselementformular angezeigt wird.

    <Column PercentWidth="50">
       <Group Label="Status">
          <Column PercentWidth="100">
             <Control FieldName="System.AssignedTo" Type="FieldControl" Label="Assi&amp;gned To:" LabelPosition="Left" />
             <Control FieldName="System.State" Type="FieldControl" Label="&amp;State:" LabelPosition="Left" />
             <Control FieldName="System.Reason" Type="FieldControl" Label="Reason:" LabelPosition="Left" ReadOnly="True" />
             <Control FieldName="FabrikamFiber.MyTeam.Requestor" Type="FieldControl" Label="Requestor:" LabelPosition="Left" ReadOnly="True" />
          </Column>
       </Group>
    </Column>
    

    Tipp

    Die Schemadefinition für die Arbeitsverfolgung definiert alle untergeordneten Elemente des FORM Elements als Kamelfall und alle anderen Elemente als großgeschrieben. Wenn beim Überprüfen der Typdefinitionsdateien Fehler auftreten, überprüfen Sie die Groß-/Kleinschreibung der Elemente. Die Groß-/Kleinschreibung der Start- und Endtags muss ebenfalls den Regeln der XML-Syntax entsprechen. Weitere Informationen finden Sie unter Steuerelement-XML-Elementreferenz.

  5. Importieren Sie die WIT-Definitionsdatei gemäß dem verwendeten Prozessmodell.

  6. Öffnen Sie entweder das Webportal oder Team Explorer, um die Änderungen anzuzeigen. Wenn der Client bereits geöffnet ist, aktualisieren Sie die Seite.

    Die folgende Abbildung zeigt, dass das Arbeitsaufgabenformular für das Produktrückstandselement jetzt das neue Feld enthält.

    Neues Feld im Formular

So ändern Sie die Feldbezeichnung in einem Arbeitselementformular

Um die Feldbeschriftung zu ändern, ändern Sie den Wert, der dem Control Element-Attribut Label zugewiesen ist. Um ein Feld aus dem Arbeitselementformular zu entfernen, löschen Sie das Control dem Feld zugeordnete Element.

  1. Exportieren Sie die WIT-Definitionsdatei gemäß Ihrem Prozessmodell.

  2. Suchen Sie in den Abschnitten nach FORM Layout der Definition des Felds, das Sie ändern möchten. In diesem Beispiel wird die Bezeichnung für das Feld "Titel " geändert:

    <Column PercentWidth="70">  
       <Control Type="FieldControl" FieldName="System.Title" Label="Title" LabelPosition="Left" />  
    </Column>
    
  3. Ändern Sie die Bezeichnung für das Feld so, dass die portugiesische Zweigstelle, die an diesem bestimmten Projekt arbeitet, den Namen des Felds "Titel " lesen kann, wenn sie mit dem Arbeitsaufgabenformular arbeiten. Schließen Sie das portugiesische Wort für Titel (Titulo) in das Feld "Titel" ein.

    <Column PercentWidth="70">  
       <Control Type="FieldControl" FieldName="System.Title" Label="Title (Titulo):" LabelPosition="Left" />  
    </Column>
    
  4. Importieren Sie die geänderte WIT-Definition.

Hinzufügen eines benutzerdefinierten Steuerelements

Mithilfe von REST-APIs zum Nachverfolgen von Arbeitsaufgaben können Sie Programmgesteuerte Fehler, Aufgaben und andere WITs erstellen, ändern und suchen. Sie können auch eigene benutzerdefinierte Steuerelemente erstellen, die einem Arbeitsaufgabenformular Funktionen hinzufügen.

Sie können auch ein benutzerdefiniertes Steuerelement hinzufügen, das über den Visual Studio Marketplace verfügbar ist. Zum Beispiel:

Informationen zum Hinzufügen eines benutzerdefinierten Steuerelements zum neuen Webformular finden Sie unter WebLayout- und Steuerelementelemente.

Ändern eines Attributs eines vorhandenen Felds

Sie verwenden witadmin changefield , um die Attribute eines vorhandenen Felds zu ändern. Mit dem folgenden Befehl wird beispielsweise der anzeigename geändert, der für "MyCompany.Type" definiert ist, in die Auswertungsmethode.

witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.Type /name:"Evaluation Method"

In der folgenden Tabelle sind die Attribute zusammengefasst, die Sie mit witadmin changefield ändern können.

Attribute BESCHREIBUNG
Datentyp Gibt den Datentyp an, den das Feld akzeptiert. Im Allgemeinen können Sie den Felddatentyp nach der Definition nicht mehr ändern. Sie können den Felddatentyp nur für Felder vom Typ HTML oder PlainText wechseln.
Anzeigename Der Anzeigename wird in den Dropdownmenüs von Arbeitsaufgabenabfragen angezeigt und muss in allen Feldern eindeutig sein, die in einer Projektsammlung definiert sind. Der Anzeigename kann sich von der Formularbezeichnung unterscheiden, die im Arbeitsaufgabenformular angezeigt wird.
Berichterstellungsattribute Sie können den Namen des Felds ändern, wie es in einem Bericht, dem Berichtsverweisnamen und dem Berichtstyp angezeigt wird. Sie können den Anzeigenamen der Berichterstellung lokalisieren.

Der Berichtstyp bestimmt, ob die Daten des Felds in die relationale Warehouse-Datenbank geschrieben werden, sowohl in die relationale Lagerdatenbank als auch in den OLAP-Cube, oder um beim Verarbeiten des OLAP-Cubes eine vorab berechnete Summe von Werten zu generieren.

Eine vollständige Liste der standardmäßigen berichtsfähigen Felder finden Sie unter Referenz zu berichtsfähigen Feldern. Weitere Informationen zu berichterstattungsfähigen Attributen finden Sie unter Arbeitselementfelder und -attribute, Berichtsfähige Attribute.
Synchronization Sie können die Synchronisierung für Personennamenfelder mit Active Directory aktivieren oder deaktivieren.

Ändern des Index-Attributs eines Felds

Sie können die Indizierung für ein Feld aktivieren, um die Abfrageantwortzeiten beim Filtern im Feld zu verbessern. Standardmäßig werden die folgenden Felder indiziert: Zugewiesen an, Datum der Erstellung, Geändert von, Zustand, Grund, Bereichs-ID, Iterations-ID und Arbeitselementtyp.

Verwenden Sie den Befehl "witadmin indexfield", um die Indizierung für ein Feld zu aktivieren oder zu deaktivieren.

Löschen eines Felds

Wenn Sie ein Feld aus einem bestimmten Arbeitselementtyp entfernen, wird dieses Feld nicht aus der Auflistung oder dem Datenbankserver entfernt, auch wenn es nicht mehr von WIT referenziert wird. Führen Sie die folgenden Schritte aus, um ein Feld zu entfernen.

  1. Entfernen Sie die FIELD Definition aus allen WIT-Definitionen und allen globalen Workflows, die darauf verweisen.

  2. Überprüfen Sie, ob das Feld nicht verwendet wird. Zum Beispiel:

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomContact
    
    Field: MyCompany.CustomContact
    Name: Custom Contact
    Type: String
    Reportable As: dimension
    Use: Not In Use
    Indexed: False
    
  3. Löschen Sie das Feld. Zum Beispiel:

    witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomContact
    
  4. Wenn das gelöschte Feld berichtbar war und Ihr Projekt SQL Server Reporting Services verwendet, erstellen Sie das Data Warehouse neu, um das alte Feld und dessen Werte zu löschen.

Weitere Informationen finden Sie unter "Verwalten von Arbeitsaufgabenfeldern".

Test-, Build- und Versionssteuerungsfelder

Mehrere Arbeitsaufgabentypen enthalten Felder, die Informationen bereitstellen, die von automatisierten Prozessen generiert werden, die in team Foundation Build, Microsoft Test Manager und Team Foundation-Versionssteuerung integriert werden. Wenn Sie Ihren benutzerdefinierten WITs eines dieser Felder hinzufügen möchten, bearbeiten Sie die WIT-Definition gemäß den schritten, die zuvor in diesem Thema beschrieben wurden.

Sie können beispielsweise die Felder "Gefunden in " und "Integriert in Build " hinzufügen, die in den Typdefinitionen für Fehler angezeigt werden. Diese Felder ordnen Fehler den Builds zu, in denen sie gefunden oder korrigiert wurden. Sie können den folgenden Codeausschnitt verwenden, um diese Felder einer Arbeitsaufgabentypdefinition hinzuzufügen.

<FIELD name="Found In" refname="Microsoft.VSTS.Build.FoundIn" type="String" reportable="dimension">
    <HELPTEXT>Product build number (revision) in which this item was found</HELPTEXT>
</FIELD>
<FIELD name="Integration Build" refname="Microsoft.VSTS.Build.IntegrationBuild" type="String" reportable="dimension">
    <HELPTEXT>Product build number this bug was fixed in</HELPTEXT>
</FIELD>

Weitere Informationen finden Sie unter Auf Build- und Testintegrationsfeldern basierende Abfrage.

Feldnamen und Berichterstellung

Sie können Felder hinzufügen oder die Attribute vorhandener Felder ändern, um die Berichterstellung zu unterstützen. Wenn Sie Felder hinzufügen oder ändern, sollten Sie sie systematisch benennen, damit Sie das Feld im Analysis Services-Cube finden können, da die Felder logisch in Ordner gruppiert sind. Weitere Informationen finden Sie unter Hinzufügen oder Ändern von Arbeitsaufgabenfeldern zur Unterstützung der Berichterstellung.

In diesem Artikel wurde erläutert, wie Felder für gehostete XML- und lokale XML-Prozessmodelle hinzugefügt und angepasst werden. Informationen zum Hinzufügen und Anpassen von Arbeitsaufgabentypen für gehostete XML- und lokale XML-Prozessmodelle finden Sie unter Hinzufügen oder Ändern eines Arbeitsaufgabentyps. Informationen zum Vererbungsprozessmodell finden Sie unter Anpassen eines Prozesses.

Andere verwandte Themen oder Ressourcen: