Share via


Agregar extensiones en el formulario de elemento de trabajo mediante xml de definición de tipo de elemento de trabajo

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

Puede exportar un tipo de elemento de trabajo como xml mediante la witadmin herramienta , que incluye el diseño del formulario de elemento de trabajo. Como parte de este ejemplo, agregamos las contribuciones de página, grupo y control al diseño. También agregamos el control al tipo de elemento de trabajo "User Story" ágil. Para obtener más información, vea Referencia xml de WebLayout.

Nota:

La personalización de formularios de elemento de trabajo mediante xml solo se admite en Azure DevOps Server, no en Azure DevOps Services.

Agregar extensión en el formulario de elemento de trabajo

  1. Instale extensiones de formulario de elemento de trabajo en Azure DevOps Server.

  2. Abra Developer Command Prompt. Exporte el archivo xml al escritorio con el siguiente comando.

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

    Se crea un archivo en el directorio especificado.

  3. Dentro de este archivo, vaya a la sección WebLayout . Dentro de la sección WebLayout, un blob de comentario especifica qué extensiones instaladas tienen como destino formularios de elemento de trabajo para la colección. Para cada extensión, todas sus contribuciones de formulario se muestran con sus identificadores y entradas (si es una contribución de Control). En el ejemplo siguiente, el comentario muestra la extensión color-control-dev instalada en la colección. La extensión tiene una contribución de control que toma dos 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. Busque el identificador de extensión en la sección Extensiones de elemento de trabajo:

         <!--**********************************Work Item Extensions*************************** 
    
     Extension:
         Name: color-control-dev
         Id: example.color-control-dev
         ...
    
  5. Agregue una etiqueta de extensión debajo de la sección Extensiones de elemento de trabajo, como se muestra a continuación, para que la extensión esté disponible para el formulario de elemento de trabajo. Para colocar una contribución dentro del formulario, su extensión debe especificarse en la Extensions sección .

         <!--**********************************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. La especificación de las extensiones en el xml coloca automáticamente las contribuciones de página y grupo definidas en las extensiones dentro del formulario. Puede mover las contribuciones en los ejemplos siguientes.

Agregar contribución de página

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

Agregar contribución de grupo

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

Una contribución de página y una contribución de grupo no pueden tomar ningún otro elemento de diseño.

Agregar contribución de control

A diferencia de las contribuciones de página y grupo , especificar las extensiones en el xml no coloca automáticamente las contribuciones de control . Para agregar estas contribuciones en el formulario, agréguelas con una etiqueta de contribución dentro del formulario. En el ejemplo siguiente se agrega ControlContribution al grupo Planning.

Si una contribución de control tiene definida alguna entrada necesaria, los usuarios deben proporcionar un valor para esa entrada. Para cualquier entrada no necesaria, los usuarios pueden decidir si se debe establecer un valor en la entrada. En el ejemplo siguiente, se establecen las FieldName entradas y Colors .

    <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 archivo xml mediante witadmin.

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

La extensión se configura a través del formulario de elemento de trabajo.