Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Azure DevOps Server | Azure DevOps Server 2022
El proyecto incluye 100 o más campos de datos, según el proceso usado para crearlo, como Agile, Basic, Scrum o CMMI. Cada elemento de trabajo está asociado a un tipo de elemento de trabajo (WIT) y los datos que puede realizar el seguimiento corresponden a los campos asignados a ese WIT. Puede actualizar los datos del elemento de trabajo modificando el campo de datos dentro de un elemento de trabajo.
Nota:
Si usa el modelo de proceso heredado, vea Agregar un campo personalizado a un tipo de elemento de trabajo.
Puede modificar campos existentes o agregar campos personalizados para realizar un seguimiento de más datos. Por ejemplo, puede personalizar una lista de selección en un menú desplegable, establecer un valor predeterminado o restringir los valores que puede aceptar un campo.
Las listas de selección se definen de diferentes maneras, como a través de la interfaz de usuario, los flujos de trabajo wiT o agregando cuentas de usuario a un proyecto, como se muestra en la tabla siguiente.
| Definición de WIT | Cambio de línea de comandos (proceso XML local) |
|---|---|
|
-
Personalizar una lista de selección - Agregar reglas a un campo - Agregar un campo personalizado - Cambiar la etiqueta de campo en el formulario - Adición de un control personalizado |
-
Enumerar campos - Cambiar un atributo de campo - Eliminar un campo - Indexar un campo |
Requisitos previos
| Categoría | Requisitos |
|---|---|
| Enumerar campos | Debe tener el permiso Ver información de nivel de proyecto para el proyecto en la colección establecido en Permitir. |
| Agregar o personalizar un campo | Ser miembro del grupo Administradores de proyectos o tener el permiso Editar información de nivel de proyecto establecido en Permitir. |
| Eliminar, cambiar el nombre o cambiar un campo | Ser miembro del grupo de seguridad Administradores de Team Foundation o del grupo de seguridad Administradores de colecciones de proyectos. |
Para agregarse como administrador, cambie los permisos de nivel de colección de proyectos.
Métodos por los que se agregan los campos de elemento de trabajo
Los campos de elemento de trabajo realizan un seguimiento de los datos de un tipo de elemento de trabajo, definen criterios de filtro de consulta y generan informes. Cualquier elemento de datos que desee realizar un seguimiento, excepto para los campos del sistema, debe definirse como un campo de elemento de trabajo. Puede definir campos dentro de un tipo de elemento de trabajo (WIT) o una definición de flujo de trabajo global.
Los campos de elemento de trabajo se mantienen en el nivel de colección de proyectos y se agregan en los escenarios siguientes:
- Crear un proyecto: se crean campos definidos en la plantilla de proceso seleccionada para WIT o flujos de trabajo globales. Los campos del sistema principal se incluyen automáticamente para cada tipo de elemento de trabajo. Para obtener una lista de los campos principales del sistema, vea Índice de campo de elemento de trabajo. Para obtener más información sobre las plantillas, consulte Plantillas de proceso.
- Importación de una definición de WIT: se agregan nuevos campos definidos en la definición de WIT a la colección. Obtenga más información en Referencia de todos los elementos XML WITD.
- Importación de una definición de flujo de trabajo global: se agregan nuevos campos definidos en el flujo de trabajo global a la colección. Los flujos de trabajo globales permiten campos compartidos entre varios tipos de elementos de trabajo. Consulte Personalización del flujo de trabajo global para obtener más información.
El conjunto completo de campos de una colección incluye todos los campos definidos en WIT y flujos de trabajo globales en todos los proyectos. Puede modificar atributos, cambiar el nombre o eliminar campos, pero estos cambios pueden afectar a los servidores locales y a los informes.
Para agregar o personalizar un campo, edite el contenido XML de la definición WIT. Defina cada campo mediante un elemento FIELD dentro de la sección FIELDS . Para obtener más información, consulte Referencia de todos los elementos XML FIELD.
Agregar un campo, aplicar una regla o cambiar un atributo
Para agregar un campo personalizado, agregar reglas de campo o cambiar la etiqueta de un campo en un formulario de elemento de trabajo, modifique el WIT o los tipos que usan el campo. Siga la secuencia de personalización que coincida con el modelo de proceso.
Para cambiar un atributo de campo o cambiar el nombre de un campo, use la herramienta de línea de comandos witadmin . De lo contrario, para modificar un campo, agregue o modifique las reglas asociadas al campo dentro de una definición WIT.
Edición de un archivo de definición de WIT
Para agregar reglas o agregar un campo personalizado, exportar, editar e importar el archivo de definición wiT.
Sugerencia
Con witadmin, puede importar y exportar archivos de definición. Otras herramientas que puede usar incluyen el Editor de procesos (requiere que haya instalado una versión de Visual Studio). Instale el editor de plantillas de proceso desde Visual Studio Marketplace.
Para realizar un seguimiento de los datos, agregue el campo al archivo de definición WIT, excepto los campos del sistema, que son campos con un nombre de referencia que empieza por System.. Los campos del sistema se definen automáticamente para todos los WIT, incluso si no se incluyen en la definición de WIT. Para obtener más información, consulte Índice de campo de elemento de trabajo.
Agregar una casilla o un campo booleano
Use la sintaxis siguiente para agregar un campo booleano dentro de la sección FIELDS de la definición de WIT.
<FIELD name="Triage" refname="Fabrikam.Triage" type="Boolean" >
<DEFAULT from="value" value="False" />
<HELPTEXT>Triage work item</HELPTEXT>
</FIELD>
A continuación, agregue la siguiente sintaxis dentro de la sección FORM para que el campo aparezca en el formulario.
<Control Label="Triage" Type="FieldControl" FieldName="Fabrikam.Triage" />
El campo aparece como una casilla en el formulario.
Personalizar una lista de selección
Las listas de selección son valores enumerados que se muestran en menús desplegables en formularios de elementos de trabajo y en la columna Valor del editor de consultas. Para personalizar una lista de selección para la mayoría de los campos de cadena o enteros, edite la definición de WIT. Por ejemplo, use el siguiente XML para agregar un campo resolución personalizado con una lista de selección.
Campo personalizado y lista de selección
<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>
Las reglas permiten combinar listas, restringir quién puede tener acceso a una lista y establecer condiciones para cuando aparezca una lista en el formulario de elemento de trabajo. Puede usar los atributos expanditems y filteritems para controlar si una lista de distribución muestra miembros individuales o filtra elementos específicos.
Para simplificar el mantenimiento, use listas globales para listas compartidas entre WIT o proyectos. Las listas globales reducen el esfuerzo necesario para actualizar las listas compartidas. Si las partes de una lista deben diferir entre los WIT o los proyectos, puede definir una lista global para partes específicas de una lista de selección. Para obtener más información, vea Definir listas de selección y Definir listas globales.
Agregar reglas a un campo
Para agregar un campo personalizado o aplicar reglas a un campo, edite la definición de WIT. Puede restringir las reglas a usuarios o grupos específicos usando los atributos para o not para definir a quién se aplica o se excluye de la regla.
Por ejemplo, el siguiente fragmento de código aplica una regla que solo los miembros del equipo de gestión, un grupo definido de forma personalizada, pueden modificar el campo de clasificación de prioridades después de que se crea un elemento de trabajo.
<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>
Puede aplicar reglas a los campos para lograr las siguientes acciones:
| Acción | Elemento XML |
|---|---|
| Agregue una sugerencia sobre herramientas a un campo. | HELPTEXT |
| Defina o restrinja los valores que puede tener un campo. | CANNOTLOSEVALUE, EMPTY, FROZEN, NOTSAMEAS, READONLY, REQUIRED |
| Copie un valor o establezca un valor predeterminado para un campo. | COPY, DEFAULT, SERVERDEFAULT |
| Restringir quién puede modificar un campo. | VALIDUSER, para, no |
| Exigir la coincidencia de patrones para los campos de cadena. | PARTIDO |
| Aplicar reglas condicionalmente basadas en otros valores de campo. | WHEN, WHENNOT, WHENCHANGED, WHENNOTCHANGED |
Los campos del sistema, identificados por el prefijo "Sistema", por ejemplo, System.ID, permiten la personalización de reglas limitadas. Por ejemplo, no puede copiar o borrar campos que realicen un seguimiento de quién creó, cambió o cerró un elemento de trabajo o campos de fecha y hora administrados por el sistema.
Para obtener más información sobre las reglas y restricciones de campo, consulte Reglas y evaluación de reglas.
Agregar un campo personalizado
Para agregar un campo personalizado, edite la definición WIT para agregar un elemento FIELD dentro de la sección FIELDS y un elemento Control dentro de la sección FORM.
Exporte el archivo de definición de WIT en función del modelo de proceso que use.
Busque la sección del archivo XML que comienza por
FIELDS.Agregue el
FIELDelemento que especifica el nombre del campo personalizado que se va a agregar. Debe especificar los siguientes atributos necesarios: descriptivoname,refname(nombre de referencia) ytype. Para obtener más información, vea Referencia de elementos FIELD (Definición).El código siguiente especifica el campo personalizado, solicitante, con un nombre de referencia de
FabrikamFiber.MyTeam.Requestory una lista de selección de valores permitidos, con el valor predeterminado de Customer.<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>Sugerencia
Los elementos de la lista siempre aparecen en orden alfanumérico, independientemente de cómo los escriba en el archivo de definición XML. El nombre de referencia, o
refname, es el nombre mediante programación del campo. Todas las demás reglas deben hacer referencia a .refnamePara más información, consulte Convenciones y restricciones de nomenclatura.Agregue el
Controlelemento dentro de laFORMsección para que el campo personalizado aparezca en el formulario dentro del grupo de elementos donde desea que aparezca.Por ejemplo, el siguiente fragmento de código agrega el campo Solicitante para que aparezca debajo del campo Motivo en el formulario del elemento de trabajo.
<Column PercentWidth="50"> <Group Label="Status"> <Column PercentWidth="100"> <Control FieldName="System.AssignedTo" Type="FieldControl" Label="Assi&gned To:" LabelPosition="Left" /> <Control FieldName="System.State" Type="FieldControl" Label="&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>Sugerencia
En la definición de esquema para el seguimiento del trabajo, todos los elementos secundarios del elemento
FORMdeben usar camel case, mientras que todos los demás elementos deben estar en mayúsculas. Asegúrese de que la estructura de mayúsculas y minúsculas de las etiquetas de apertura y cierre coincidan con las reglas de sintaxis XML para evitar errores de validación. Para obtener más información, vea Referencia de elementos XML de control.Importe el archivo de definición WIT según el modelo de proceso que use.
Abra el portal web o Team Explorer para ver los cambios. Si el cliente ya está abierto, actualice la página.
En la ilustración siguiente se muestra que el formulario del elemento de trabajo pendiente del producto ahora contiene el nuevo campo.
Cambiar la etiqueta de campo en un formulario de elemento de trabajo
Para modificar la etiqueta de campo, cambie el valor asignado al Control atributo de elemento Label . Para quitar un campo del formulario de elemento de trabajo, elimine el Control elemento asociado al campo.
Exporte el archivo de definición wit según el modelo de proceso.
En las
FORMsecciones yLayout, busque la definición del campo que desea modificar. En este ejemplo se modifica la etiqueta del campo Título :<Column PercentWidth="70"> <Control Type="FieldControl" FieldName="System.Title" Label="Title" LabelPosition="Left" /> </Column>Cambie la etiqueta del campo para que la sucursal portuguesa que trabaja en este proyecto en particular pueda leer el nombre del campo Título cuando trabajan con el formulario de elemento de trabajo. Incluya la palabra portuguesa para el título (Titulo) en el campo Título.
<Column PercentWidth="70"> <Control Type="FieldControl" FieldName="System.Title" Label="Title (Titulo):" LabelPosition="Left" /> </Column>Importe la definición de WIT modificada.
Agregar un control personalizado
Con las API REST para realizar el seguimiento de elementos de trabajo, puede crear, actualizar y buscar errores, tareas y otros tipos de elementos de trabajo (WIT) mediante programación. Además, puede crear controles personalizados para mejorar la funcionalidad de un formulario de elemento de trabajo.
Como alternativa, puede usar controles personalizados disponibles a través de Visual Studio Marketplace, como:
- Control de varios valores: permite la entrada de varios valores para un campo mediante una lista de casillas.
- Control de lista de colores: permite agregar colores a los elementos de la lista de selección.
- Formulario del elemento de trabajo - acciones de selección única: proporciona un conjunto personalizable de reglas para acciones de selección única.
Para agregar un control personalizado al nuevo formulario web, consulte Elementos WebLayout y Control.
Cambiar un atributo de un campo existente
Use witadmin changefield para cambiar los atributos de un campo existente. Por ejemplo, el siguiente comando cambia el nombre descriptivo definido para MyCompany.Type a Método de evaluación.
witadmin changefield /collection:http://AdventureWorksServer:8080/ DefaultCollection/n:MyCompany.Type /name:"Evaluation Method"
En la tabla siguiente se resumen los atributos que puede cambiar mediante witadmin changefield.
| Atributo | Descripción |
|---|---|
| Tipo de datos | Especifica el tipo de datos que acepta el campo. En general, no se puede cambiar el tipo de datos de campo una vez definido. Puede cambiar el tipo de datos de campo solo para campos de tipo HTML o PlainText. |
| Nombre descriptivo | El nombre descriptivo aparece en los menús desplegables de consultas de elementos de trabajo y debe ser único en todos los campos definidos dentro de una colección de proyectos. El nombre descriptivo puede diferir de la etiqueta de formulario que aparece en el formulario de elemento de trabajo. |
| Atributos de informes | Puede cambiar el nombre del campo tal como aparece en un informe, el nombre de referencia del informe y el tipo de informe. Puede localizar el nombre descriptivo de los informes. El tipo de informe determina si los datos del campo se escriben en la base de datos de almacenamiento relacional, en la base de datos de almacenamiento relacional y en el cubo OLAP, o si se genera una suma calculada previamente de valores al procesar el cubo OLAP. Para obtener una lista completa de los campos notificables predeterminados, vea Referencia de campos que se pueden notificar. Para obtener más información sobre los atributos que se pueden notificar, vea Campos y atributos de elemento de trabajo, Atributos que se pueden notificar. |
| Sincronización | Puede habilitar o deshabilitar la sincronización de campos de nombre de persona con Active Directory. |
Cambiar el atributo de índice de un campo
Habilite la indexación de un campo para mejorar los tiempos de respuesta de consulta al filtrar. De forma predeterminada, se indizan los campos siguientes: Asignado a, Fecha de creación, Modificado por, Estado, Motivo, Identificador de área, Id de iteración y Tipo de elemento de trabajo.
Para habilitar o deshabilitar la indexación de un campo, use el comando witadmin indexfield.
Eliminar un campo
Cuando se quita un campo de un WIT específico, el campo permanece en la colección o en el servidor de bases de datos, incluso si ya no hace referencia a él ningún WIT. Para quitar completamente un campo, siga estos pasos.
Quite la
FIELDdefinición de todas las definiciones de WIT y los flujos de trabajo globales que hagan referencia a ella.Compruebe que el campo no está en uso. Por ejemplo:
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: FalseElimine el campo. Por ejemplo:
witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomContactSi el campo eliminado se puede notificar y el proyecto usa SQL Server Reporting Services, recompile el almacenamiento de datos para purgar el campo antiguo y sus valores.
Para obtener más información, vea Administrar campos de elementos de trabajo.
Campos de prueba, compilación y control de versiones
Algunos tipos de elementos de trabajo incluyen campos generados por procesos automatizados que se integran con Team Foundation Build, Microsoft Test Manager y control de versiones de Team Foundation. Para agregar estos campos a los tipos de elementos de trabajo personalizados (WIT), edite la definición de WIT siguiendo los pasos descritos anteriormente.
Por ejemplo, puede agregar los campos Found In y Integrated in Build (Encontrado en e Integrado en la compilación), que asocian errores a las compilaciones donde fueron encontrados o solucionados. Use el siguiente fragmento de código para incluir estos campos en una definición WIT:
<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>
Para más información, consulte Creación de una consulta basada en campos de integración de compilación y prueba.