Dela via


Lägga till eller ändra ett fält för arbetsspårning

Azure DevOps Server | Azure DevOps Server 2022 | Azure DevOps Server 2020

Projektet innehåller 100 eller fler datafält, beroende på vilken process som används för att skapa den, till exempel Agile, Basic, Scrum eller CMMI. Varje arbetsobjekt är kopplat till en arbetsobjektstyp (WIT), och de data som du kan spåra motsvarar de fält som tilldelats till denna WIT. Du kan uppdatera arbetsobjektdata genom att ändra datafältet i ett arbetsobjekt.

Kommentar

Om du använder den ärvda processmodellen kan du läsa Lägga till ett anpassat fält i en arbetsobjekttyp.

Du kan ändra befintliga fält eller lägga till anpassade fält för att spåra mer data. Du kan till exempel anpassa en urvalslista i en listruta, ställa in ett standardvärde eller begränsa vilka värden ett fält kan acceptera.

Välj listor definieras på olika sätt, till exempel via användargränssnittet, WIT-arbetsflöden eller genom att lägga till användarkonton i ett projekt, som du ser i följande tabell.

WIT-definition Ändring av kommandorad (lokal XML-process)
- Anpassa en urvalslista
- Lägga till regler i ett fält
- Lägga till ett anpassat fält
- Ändra fältetiketten i formuläret
- Lägga till en anpassad kontroll
- Listfält
- Ändra ett fältattribut
- Ta bort ett fält
- Index ett fält

Förutsättningar

Kategori Krav
Listfält Ha behörigheten Visa information på projektnivå inställd på Tillåt för projektet i samlingen.
Lägga till eller anpassa ett fält Vara medlem i gruppen Projektadministratörer eller ha behörigheten Redigera information på projektnivå inställd på Tillåt.
Ta bort, byt namn på eller ändra ett fält Vara medlem i säkerhetsgruppen Team Foundation-administratörer eller säkerhetsgruppen Administratörer för projektsamling .

Om du vill lägga till som administratör ändrar du behörigheter på projektsamlingsnivå.

Metoder med vilka arbetsobjektfält läggs till

Arbetsobjektfält spårar data för en typ av arbetsobjekt, definierar frågefiltervillkor och genererar rapporter. Alla dataelement som du vill spåra, förutom systemfält, måste definieras som ett arbetsobjektfält. Du kan definiera fält inom en arbetsobjektstyp (WIT) eller global arbetsflödesdefinition.

Arbetsobjektfält underhålls på projektsamlingsnivå och läggs till i följande scenarier:

  • Skapa ett projekt: Fält som definierats i den valda processmallen för WIT eller globala arbetsflöden skapas. Kärnsystemfält inkluderas automatiskt för varje typ av arbetsobjekt. En lista över kärnsystemfält finns i Index för arbetsobjektfält. Mer information om mallar finns i Bearbeta mallar.
  • Importerar en WIT-definition: Nya fält som definierats i WIT-definitionen läggs till i samlingen. Läs mer i Komplett referensguide för alla WITD XML-element.
  • Importerar en global arbetsflödesdefinition: Nya fält som definierats i det globala arbetsflödet läggs till i samlingen. Globala arbetsflöden tillåter delade fält i flera typer av arbetsobjekt. Mer information finns i Anpassa globalt arbetsflöde .

Den fullständiga uppsättningen fält i en samling innehåller alla fält som definierats i WIT och globala arbetsflöden i alla projekt. Du kan ändra attribut, byta namn på eller ta bort fält, men dessa ändringar kan påverka lokala servrar och rapportering.

Om du vill lägga till eller anpassa ett fält redigerar du XML-innehållet i WIT-definitionen. Definiera varje fält med hjälp av ett FÄLT-element i avsnittet FÄLT . Mer information finns i Referens för alla FÄLT-XML-element.

Lägga till ett fält, tillämpa en regel eller ändra ett attribut

Om du vill lägga till ett anpassat fält lägger du till fältregler eller ändrar etiketten för ett fält i ett arbetsobjektformulär genom att ändra wit eller typer som använder fältet. Följ anpassningssekvensen som matchar din processmodell.

Om du vill ändra ett fältattribut eller byta namn på ett fält använder du kommandoradsverktyget witadmin . Om du vill ändra ett fält lägger du annars till eller ändrar de regler som är associerade med fältet i en WIT-definition.

Skärmbild som visar Sammanfattning av fältattribut och fältregler.

Redigera en WIT-definitionsfil

Om du vill lägga till regler eller lägga till ett anpassat fält exporterar, redigerar och importerar du wit-definitionsfilen.

Tips

Med witadmin kan du importera och exportera definitionsfiler. Andra verktyg som du kan använda är processredigeraren (kräver att du har installerat en version av Visual Studio). Installera redigeraren För processmall från Visual Studio Marketplace.

För att spåra data lägger du till fältet i WIT-definitionsfilen, förutom systemfält, som är fält med ett referensnamn som börjar med System.. Systemfält definieras automatiskt för alla WIT,även om de inte ingår i WIT-definitionen. Mer information finns i Fältindex för arbetsobjekt.

Lägg till en kryssruta eller ett booleskt fält

Använd följande syntax för att lägga till ett booleskt fält i avsnittet FÄLT i WIT-definitionen.

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

Lägg sedan till följande syntax i avsnittet FORMULÄR så att fältet visas i formuläret.

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

Fältet visas som en kryssruta i formuläret.

Anpassa en urvalslista

Väljlistor är uppräknade värden som visas i nedrullningsmenyer på arbetsobjektformulär och i Värde-kolumnen i frågeredigeraren. Om du vill anpassa en listruta för de flesta sträng- eller heltalsfält redigerar du WIT-definitionen. Använd till exempel följande XML för att lägga till ett anpassat lösningsfält med en listruta.

Anpassat fält och välj lista
Skärmbild som visar en anpassad urvalsruta.

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

Med regler kan du kombinera listor, begränsa vem som kan komma åt en lista och ange villkor för när en lista visas i arbetsobjektsformuläret. Du kan använda attributen expanditems och filteritems för att styra om en distributionslista visar enskilda medlemmar eller filtrerar specifika objekt.

För att förenkla underhållet använder du globala listor för delade listor över WIT:er eller projekt. Globala listor minskar det arbete som krävs för att uppdatera delade listor. Om delar av en lista måste skilja sig åt mellan WIT:er eller projekt kan du definiera en global lista för specifika delar av en listruta. För mer information, se Definiera urvalslistor och Definiera globala listor.

Lägga till regler i ett fält

Om du vill lägga till ett anpassat fält eller tillämpa regler på ett fält redigerar du WIT-definitionen. Du kan begränsa regler till specifika användare eller grupper med hjälp av attributen för eller inteför att definiera vem regeln gäller för eller exkluderar.

Följande kodfragment tillämpar till exempel en regel som endast medlemmar i ledningsgruppen, en anpassad definierad grupp, kan ändra fältet Stack Rank när ett arbetsobjekt har skapats:

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

Du kan tillämpa regler på fält för att uppnå följande åtgärder:

Åtgärd XML-element
Lägg till ett verktygstips i ett fält. HJÄLPTEXT
Definiera eller begränsa de värden som ett fält kan ha. CANNOTLOSEVALUE, EMPTY, FROZEN, NOTSAMEAS, READONLY, REQUIRED
Kopiera ett värde eller ange ett standardvärde för ett fält. KOPIERA, STANDARD, SERVERDEFAULT
Begränsa vem som kan ändra ett fält. VALIDUSER, för, inte
Framtvinga mönstermatchning för strängfält. TÄNDSTICKA
Tillämpa regler villkorligt baserat på andra fältvärden. WHEN, WHENNOT, WHENCHANGED, WHENNOTCHANGED

Systemfält som identifieras med prefixet "System", till exempel System.ID, tillåter begränsad regelanpassning. Du kan till exempel inte kopiera eller rensa fält som spårar vem som har skapat, ändrat eller stängt ett arbetsobjekt eller systemhanterade datum-tidsfält.

Mer information om fältregler och begränsningar finns i Regler och regelutvärdering.

Lägga till ett anpassat fält

Om du vill lägga till ett anpassat fält redigerar du WIT-definitionen för att lägga till ett FÄLT-element i avsnittet FÄLT och ett kontrollelement i avsnittet FORMULÄR .

  1. Exportera WIT-definitionsfilen baserat på den processmodell som du använder.

  2. Leta upp avsnittet i XML-filen som börjar med FIELDS.

  3. Lägg till elementet FIELD som anger namnet på det anpassade fält som ska läggas till. Du måste ange följande obligatoriska attribut: friendly name, refname (referensnamn) och type. Mer information finns i ELEMENTreferens för FÄLT (definition).

    Följande kod anger det anpassade fältet, Requestor, med ett referensnamn FabrikamFiber.MyTeam.Requestor för och en plocklista med tillåtna värden, med standardvärdet Kund.

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

    Tips

    Element i listan visas alltid i alfanumerisk ordning, oavsett hur du anger dem i XML-definitionsfilen. Referensnamnet, eller refname, är det programmatiska namnet för fältet. Alla andra regler bör referera till refname. Mer information finns i Namngivningsbegränsningar och konventioner.

  4. Lägg till elementet ControlFORM i avsnittet så att det anpassade fältet visas i formuläret i gruppen med element där du vill att det ska visas.

    Följande kodfragment lägger till exempel fältet Requestor för att visas under fältet Orsak i arbetsobjektsformuläret.

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

    Tips

    I schemadefinitionen för arbetsspårning måste alla underordnade element i elementet FORM använda camelCase, medan alla andra element måste vara i versaler. Se till att ärendestrukturen för att öppna och stänga taggar matchar XML-syntaxregler för att undvika valideringsfel. Mer information finns i Kontrollera XML-elementreferens.

  5. Importera WIT-definitionsfilen enligt den processmodell som du använder.

  6. Öppna antingen webbportalen eller Team Explorer för att visa ändringarna. Om klienten redan är öppen uppdaterar du sidan.

    Följande bild visar att arbetsobjektsformuläret för produktens kvarvarande uppgifter nu innehåller det nya fältet.

    Skärmbild som visar Nytt fält i formulär.

Ändra fältetiketten i ett arbetsobjektformulär

Ändra fältetiketten genom att ändra värdet som tilldelats elementattributet ControlLabel . Om du vill ta bort ett fält från arbetsobjektsformuläret tar du bort elementet Control som är associerat med fältet.

  1. Exportera WIT-definitionsfilen enligt din processmodell.

  2. I avsnitten FORM och Layout hittar du definitionen av det fält som du vill ändra. I det här exemplet ändras etiketten för fältet Rubrik :

    <Column PercentWidth="70">  
       <Control Type="FieldControl" FieldName="System.Title" Label="Title" LabelPosition="Left" />  
    </Column>
    
  3. Ändra etiketten för fältet så att det portugisiska avdelningskontoret som arbetar med det här projektet kan läsa namnet på fältet Rubrik när de arbetar med arbetsobjektformuläret. Inkludera det portugisiska ordet för titel (Titulo) i fältet Rubrik.

    <Column PercentWidth="70">  
       <Control Type="FieldControl" FieldName="System.Title" Label="Title (Titulo):" LabelPosition="Left" />  
    </Column>
    
  4. Importera den ändrade WIT-definitionen.

Lägga till en anpassad kontroll

Med HJÄLP av REST-API:erna för att spåra arbetsobjekt kan du programmatiskt skapa, uppdatera och hitta buggar, uppgifter och andra typer av arbetsobjekt (WIT). Dessutom kan du skapa anpassade kontroller för att förbättra funktionerna i ett arbetsobjektformulär.

Du kan också använda anpassade kontroller som är tillgängliga via Visual Studio Marketplace, till exempel:

För att lägga till en anpassad kontroll i det nya webbformuläret, se WebLayout och Control-elementen.

Ändra ett attribut för ett befintligt fält

Du använder witadmin changefield för att ändra attributen för ett befintligt fält. Till exempel ändrar följande kommando det vänliga namn som har definierats för MyCompany.Type till Utvärderingsmetod.

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

I följande tabell sammanfattas de attribut som du kan ändra med hjälp av witadmin changefield.

Attribut beskrivning
Datatyp Anger vilken typ av data som fältet accepterar. I allmänhet kan du inte ändra fältdatatypen när den har definierats. Du kan bara byta fältdatatyp för fält av typen HTML eller PlainText.
Användarvänligt namn Det beskrivande namnet visas i rullgardinsmenyerna för arbetsobjektsfrågor och måste vara unikt över alla fält som är definierade inom en projektsamling. Det vänliga namnet kan skilja sig från etiketten som visas i arbetsobjektsformuläret.
Rapporteringsattributen Du kan ändra namnet på fältet så som det visas i en rapport, rapportens referensnamn och rapporttypen. Du kan lokalisera det användarvänliga rapportnamnet.

Rapporteringstypen avgör om fältets data skrivs till relationslagerdatabasen, till både relationslagerdatabasen och till OLAP-kuben, eller för att generera en förberäknad summa värden när OLAP-kuben bearbetas.

En fullständig lista över de rapportbara standardfälten finns i Referens för rapportbara fält . Mer information om rapportbara attribut finns i Fält och attribut för arbetsobjekt, Rapportbara attribut.
Synkronisering Du kan aktivera eller inaktivera synkronisering för personnamnsfält med Active Directory.

Ändra indexattributet för ett fält

Aktivera indexering för ett fält för att förbättra svarstiderna för frågor vid filtrering. Som standard indexeras följande fält: Tilldelad till, Skapat datum, Ändrat efter, Tillstånd, Orsak, Områdes-ID, Iterations-ID och Typ av arbetsobjekt.

Om du vill aktivera eller inaktivera indexering för ett fält använder du kommandot witadmin indexfield.

Ta bort ett fält

När du tar bort ett fält från en specifik WIT finns fältet kvar i samlingen eller databasservern, även om det inte längre refereras av någon WIT. Följ dessa steg om du vill ta bort ett fält helt.

  1. FIELD Ta bort definitionen från alla WIT-definitioner och eventuella globala arbetsflöden som refererar till den.

  2. Kontrollera att fältet inte används. Till exempel:

    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. Ta bort fältet. Till exempel:

    witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomContact
    
  4. Om det borttagna fältet kunde rapporteras och projektet använder SQL Server Reporting Services återskapar du informationslagret för att rensa det gamla fältet och dess värden.

Mer information finns i Hantera arbetsobjektfält.

Test-, build- och versionskontrollfält

Vissa typer av arbetsobjekt omfattar fält som genereras av automatiserade processer som integreras med Team Foundation Build, Microsoft Test Manager och Team Foundation-versionskontroll. Om du vill lägga till dessa fält i dina anpassade arbetsobjektstyper (WIT) redigerar du WIT-definitionen enligt stegen som beskrevs tidigare.

Du kan till exempel lägga till fälten Found In och Integrated i Build , som associerar buggar med de versioner där de hittades eller åtgärdades. Använd följande kodfragment för att inkludera dessa fält i en WIT-definition:

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

Mer information finns i Fråga baserat på bygg- och testintegreringsfält.

Fältnamn och rapportering

Du kan lägga till fält eller ändra attributen för befintliga fält som stöd för rapportering. När du lägger till eller ändrar fält bör du namnge dem systematiskt så att du kan hitta fältet i Analysis Services-kuben eftersom fälten grupperas logiskt i mappar. Mer information finns i Lägga till eller ändra arbetsobjektfält som stöd för rapportering.