Compartilhar via


Adicionar extensões no formulário de item de trabalho por meio de xml de definição de tipo de item de trabalho

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Você pode exportar um tipo de item de trabalho como xml usando a witadmin ferramenta, que inclui o layout do formulário de item de trabalho. Como parte deste exemplo, adicionamos as contribuições de página, grupo e controle ao layout. Também adicionamos o controle ao tipo de item de trabalho "User Story" do Agile. Para obter mais informações, consulte WebLayout xml reference.

Observação

A personalização do formulário de item de trabalho via xml tem suporte apenas no Servidor de DevOps do Azure, não nos Serviços de DevOps do Azure.

Adicionar extensão no formulário de item de trabalho

  1. Instale extensões de formulário de item de trabalho no Servidor de DevOps do Azure.

  2. Abra o Developer Command Prompt. Exporte o arquivo xml para sua área de trabalho com o seguinte comando.

    witadmin exportwitd /collection:CollectionURL /p:Project /n:TypeName /f:FileName
    

    Um arquivo é criado no diretório que você especificou.

  3. Dentro desse arquivo, vá para a seção WebLayout . Dentro da seção WebLayout, um blob de comentário especifica quais extensões instaladas direcionam formulários de item de trabalho para sua coleção. Para cada extensão, todas as suas contribuições de formulário são listadas com seus IDs e entradas (se for uma contribuição de controle). No exemplo a seguir, o comentário mostra a extensão color-control-dev instalada na coleção. A extensão tem uma contribuição de controle que leva duas entradas.

         <!--**********************************Work Item Extensions***************************
    
     Extension:
         Name: color-control-dev
         Id: example.color-control-dev
    
         Control contribution:
             Id: example.color-control-dev.color-control-contribution
             Description:
             Inputs:
                 Id: FieldName
                 Description: The field associated with the control.
                 Type: Field
                 IsRequired: true
    
                 Id: Colors
                 Descriptions: The colors that match the values in the control.
                 Type: String
                 IsRequired: false
    
  4. Encontre sua ID de extensão na seção Extensões de Item de Trabalho:

         <!--**********************************Work Item Extensions*************************** 
    
     Extension:
         Name: color-control-dev
         Id: example.color-control-dev
         ...
    
  5. Adicione uma marca de extensão abaixo da seção Extensões de Item de Trabalho, mostrada a seguir, para disponibilizar sua extensão para o formulário de item de trabalho. Para colocar uma contribuição dentro do formulário, sua extensão deve ser especificada na Extensions seção.

         <!--**********************************Work Item Extensions***************************
         ...
    
         Note: For more information on work item extensions use the following topic:
         https://go.microsoft.com/fwlink/?LinkId=816513
         -->
    
         <Extensions>
             <Extension Id="example.color-control-dev" />
         </Extensions>
    
  6. A especificação das extensões no xml coloca automaticamente as contribuições de página e de grupo definidas nas extensões dentro do formulário. Você pode mover as contribuições nos exemplos a seguir.

Adicionar contribuição de página

    <Page Id="Details">
    <PageContribution Id="<page contribution id>" />
    ...       

Adicionar contribuição de grupo

    <Page Id="Details">
    ...
        <Section>
        ...
            <GroupContribution Id="<group contribution id>" />
            ...

Uma contribuição de página e uma contribuição de grupo não podem usar outros elementos de layout.

Adicionar contribuição de controle

Ao contrário das contribuições de página e de grupo , especificar as extensões no xml não coloca automaticamente as contribuições de controle . Para adicionar essas contribuições no formulário, adicione-as com uma tag de contribuição dentro do formulário. O exemplo a seguir adiciona o ControlContribution ao grupo Planning .

Se uma contribuição de controle tiver qualquer entrada necessária definida, os usuários deverão fornecer um valor para essa entrada. Para qualquer entrada não necessária, os usuários podem decidir se definem um valor para a entrada. No exemplo a seguir, as FieldName entradas e Colors são definidas.

    <Page Id="Details">
    ...
        <Section>
        ...
            <Group Id="Planning">
            ...
                <ControlContribution Label="Priority" Id="example.color-control-dev.color-control-contribution">
                    <Inputs>
                        <Input Id="FieldName" Value="Microsoft.Azure DevOps Services.Common.Priority" />
                        <Input Id="Colors" Value="red;green" />
                    </Inputs>
                </ControlContribution>

                <Control Label="Risk" Type="FieldControl" FieldName="Microsoft.Azure DevOps Services.Common.Risk" />
  1. Importe este arquivo xml, usando witadmin.

    witadmin importwitd /collection:CollectionURL /p:Project /f:FileName

Sua extensão é configurada através do formulário de item de trabalho!