Definir y modificar campos de elementos de trabajo

Utilice campos de elemento de trabajo para realizar el seguimiento de los datos para un tipo de elemento de trabajo y definir los criterios de filtro para las consultas, así como para generar los informes. Todos los elementos de datos, salvo los campos de datos básicos del sistema en Team Foundation Server (TFS), de los que desee hacer seguimiento, usar para definir el flujo de trabajo o que aparezcan en el formulario de un tipo de elemento de trabajo se deben definir como campos de elemento de trabajo. Puede definir campos de elementos de trabajo dentro de la definición de un tipo de elemento de trabajo o de un flujo de trabajo global.

Los campos del elemento de trabajo se mantienen para una colección de proyectos de equipo. Agregue los campos al realizar una de las siguientes tareas:

  • Crear un proyecto de equipo. Todos los campos que se definen dentro de las definiciones de los tipos de elemento de trabajo o flujos de trabajo globales que estén definidos para la plantilla de proceso seleccionada. Los campos de sistema básicos se definen automáticamente para cada tipo de elemento de trabajo definido para un proyecto de equipo. Para obtener una lista de estos campos, vea Referencia de campos de elementos de trabajo para Visual Studio ALM.

  • Importar una definición de un tipo de elemento de trabajo. Todos los campos nuevos definidos dentro de la definición de un tipo de elemento de trabajo se agregan a la colección. Para obtener más información, vea Referencia de todos los elementos WITD de XML.

  • Importar una definición de flujo de trabajo global. Todos los nuevos campos que se definen dentro del flujo de trabajo global se agregan a la colección. Los flujos de trabajo globales se definen para mantener un conjunto de elementos de trabajo que comparten varios tipos de elementos de trabajo. Para obtener más información, vea Personalizar el flujo de trabajo global.

  • Asignar una colección de proyectos a una instancia de Project Web App (PWA). Después de instalar las Team Foundation Server Extensiones de Project Server, configure la integración asignando varios componentes de Team Foundation. Al asignar una colección, se importa una definición de flujo de trabajo global que admite varios campos en campos de Project Server. Para obtener más información, vea Campos de Project Server agregados a TFS para admitir la sincronización de datos.

Todos los campos definidos en todos los tipos de elemento de trabajo y todos los flujos de trabajo global para todos los proyectos de equipo constituyen el conjunto completo de campos que se define para la colección de proyectos. Puede cambiar el atributo, cambiar el nombre y eliminar los campos existentes. Sin embargo, se incurre en ciertos costos al realizar estos tipos de cambios. Para obtener más información, vea Personalizar los objetos de seguimiento del trabajo para admitir los procesos de su equipo.

Para agregar o personalizar un campo de una colección, modifique el contenido XML para la definición de un tipo de elemento de trabajo o flujo de trabajo global. Defina cada campo a través de un elemento FIELD dentro de la sección FIELDS de la definición para un tipo de elemento de trabajo o el flujo de trabajo global. Para obtener información sobre la estructura y la ubicación de estos archivos, vea Referencia de todos los elementos WITD de XML y Personalizar el flujo de trabajo global.

Estructura de la sintaxis de FIELD (Definition)

Cada elemento FIELD (Definition) tiene un solo nombre, que es opcional, y un nombre de referencia, que se obligatorio. El nombre de referencia debe ser único dentro de la colección. Para obtener más información, vea Convenciones de nomenclatura para objetos de seguimiento de elementos de trabajo.

Importante

Puede cambiar el nombre descriptivo de un campo utilizando la herramienta de la línea de comandos witadmin changefield.Ahora bien, el cambio del nombre de un campo afecta a todos los tipos de elemento de trabajo de todos los proyectos de equipo dentro de la colección.

Defina un campo con el siguiente archivo de sintaxis de definición XML para el tipo de elemento de trabajo.

<FIELD name="fieldDisplayName"
   refname="fieldReferenceName" type="String | Integer | Double | DateTime | PlainText | HTML | History | TreePath | GUID"
   syncnamechanges="true | false"
   reportingname="reportingDisplayName"
   reportingrefname="reportingReferenceName"
   reportable="Dimension | Detail | Measure" 
   formula="sum" >
   <ALLOWEDVALUES> . . . </ALLOWEDVALUES>
   <ALLOWEXISTINGVALUE />
   <CANNOTLOSEVALUE />
   <COPY />
   <DEFAULT />
   <EMPTY />
   <FROZEN />
   <HELPTEXT> . . . </HELPTEXT>
   <MATCH />
   <NOTSAMEAS />
   <PROHIBITEDVALUES /> . . . </PROHIBITEDVALUES>
   <READONLY />
   <REQUIRED />
   <SERVERDEFAULT />
   <SUGGESTEDVALUES /> . . . </SUGGESTEDVALUES>
   <VALIDUSER />
   <WHEN>> . . . </WHEN>
   <WHENNOT> . . . </WHENNOT>
   <WHENCHANGED> . . . </WHENCHANGED>
   <WHENNOTCHANGED> . . . </WHENNOTCHANGED>
</FIELD>

Para obtener más información, vea Referencia de elemento FIELD (Definición).

Tipos de datos

El tipo de un campo define la naturaleza y el tamaño de los datos que puede almacenar en el campo. Un campo solo puede tener un tipo definido en una colección de proyectos de equipo. Ésta es una restricción que anima a las organizaciones a utilizar campos comunes para distintos proyectos y tipos de elemento de trabajo.

En la lista siguiente se muestran los tipos de campos compatibles:

Tipo de datos

Descripción

DateTime

Especifica una fecha según la Hora universal coordinada (Hora UTC).

Agregue un campo DateTime a un formulario de elemento de trabajo mediante los atributos FieldControl o DateTimeControl type.

Double

Especifica un valor de coma flotante. Los campos de tipo Double se utilizan frecuentemente en filtros de consulta y listas de resultados.

Agregue un campo Double a un formulario de elemento de trabajo mediante el atributo FieldControl type.

GUID

Especifica un campo que contendrá un identificador único.

No puede agregar un campo GUID a un formulario de elemento de trabajo.

History

Permite ver los hilos de discusión y seguimiento de otra información histórica.

Nota

El campo System.History es el único campo que utiliza este tipo de datos.No puede definir ningún campo personalizado utilizando este tipo de datos.

Agregue el campo System.History a un formulario de elemento de trabajo mediante el atributo WorkItemLogControl type, que admite controles de formato de texto enriquecido.

HTML

Admite la capacidad de capturar datos de texto enriquecido y utilizar descripciones de texto más largas, tales como una descripción de elemento de trabajo. Un campo HTML se diferencia de un campo PlainText en que el primero está fuertemente tipado en HTML para la presentación de información más completa.

Agregue un campo HTML a un formulario de elemento de trabajo mediante el atributo HTMLControl type, que admite controles de formato de texto enriquecido.

Integer

Especifica un valor entero de 32 bits con signo. Los campos de tipo Integer se utilizan frecuentemente en filtros de consulta y listas de resultados.

Agregue un campo Integer a un formulario de elemento de trabajo mediante el atributo FieldControl type.

PlainText

Admite la entrada de una cadena de texto con más de 255 caracteres Unicode.

Agregue un campo PlainText a un formulario de elemento de trabajo mediante el atributo de tipo FieldControl, que se limita al texto sin formato, o el atributo HTMLControl type, que admite controles de formato de texto enriquecido.

String

Admite la entrada de una cadena de texto hasta 255 caracteres Unicode. Utilice un campo String para una etiqueta u otra cadena de texto corta hasta una línea de longitud. Los campos de tipo String se utilizan frecuentemente en filtros de consulta y listas de resultados.

Agregue un campo String a un formulario de elemento de trabajo mediante el atributo FieldControl type.

TreePath

Especifica un campo que muestra las entradas con una estructura jerárquica o de árbol, tales como los requisitos para mostrar rutas de acceso de área e iteración para un producto.

Nota

Los campos System.AreaPath y System.IterationPath son los únicos campos que utilizan este tipo de datos.No puede definir ningún campo personalizado utilizando este tipo de datos.

Agregue los campos System.AreaPath y System.IterationPath a un formulario de elemento de trabajo mediante el atributo WorkItemClassificationControl type.

Atributos para informes

Algunos valores de campo son especialmente útiles para crear informes. Con el lenguaje de definición de tipos de elemento de trabajo, puede especificar los siguientes atributos opcionales:

  • reportable. Establezca el atributo reportable en None, Detail, Dimension o Measure, en función de si desea incluir el campo en los informes y cómo desea que se incluya. Los datos de campos que tienen un valor distinto de None para este atributo se exportan al almacén de datos y se pueden incluir en informes.

    Al agregar un campo existente a un tipo de elemento de trabajo, se utiliza el valor actual para el atributo reportable. Al agregar un campo a un tipo de elemento de trabajo, los informes están deshabilitados a menos que lo especifique explícitamente utilizando el atributo reportable.

  • reportingname. Asigne una etiqueta diferente a un campo que se use cuando los datos aparezcan en los informes. Si no especifica un valor, se usa el nombre descriptivo asignado para el atributo name.

  • reportingrefname. Asigne un nombre de referencia diferente a un campo que se use cuando los datos se exporten al almacén de datos relacional. Si no especifica un valor, se usa el valor asignado al atributo refname.

    Use este atributo para combinar o diferenciar los campos incluidos en los informes. Para combinar dos campos que tienen nombres de referencia distintos y están definidos en colecciones de proyectos diferentes, asigne el mismo valor de reportingrefname a ambos campos. Para distinguir dos campos con el mismo nombre de referencia que están definidos en colecciones de proyectos diferentes, asigne un valor de reportingrefname diferente a cada campo.

Después de definir un campo, puede usar el comando witadmin changefield en un símbolo del sistema para cambiar el valor de todos los atributos salvo refname.

Para obtener información sobre los procedimientos recomendados sobre cómo etiquetar campos para informes, vea Agregar o modificar campos de elementos de trabajo para admitir la creación de informes.

Valores del atributo para informes

Como se observa en la siguiente tabla, se puede asignar uno de los siguientes valores al atributo reportable: ninguno, dimensión, detalle y medida.

Nota

Puede hacer un campo reportable después de que se haya utilizado para un elemento de trabajo.Después de establecer el valor reportable, las nuevas revisiones del elemento de trabajo que se copian en el almacén de datos contendrán el valor del campo.Sin embargo, las revisiones que ya estén en el almacén de datos no se rellenarán de manera retroactiva con los valores existentes.

Valor del atributo

Descripción

Detail

Utilice el tipo Detail solamente para campos de tipo Integer, Double, String o DateTime.

Los datos de este campo se mueven a la base de datos relacional del almacén de datos en las tablas de elementos de trabajo y del elemento de trabajo actual, pero no en el cubo de SQL Server Analysis Services. Al utilizar este tipo para campos de texto sin restricciones, puede utilizarlos en informes sin que el cubo aumente de tamaño de manera significativa.

Dimension

Use el tipo Dimension solamente para los campos Integer, String o DateTime.

Los datos de este campo se incorporan a la base de datos relacional del almacén de datos y al cubo de Analysis Services como un atributo de dimensión de elemento de trabajo, de modo que los datos se puedan utilizar para filtrar los informes. Utilice este tipo para campos que tengan listas de valores válidos. El tipo de elemento de trabajo y el estado son buenos ejemplos dimensiones.

Measure

Utilice el tipo Measure solamente para campos de tipo Integer y Double. Las medidas son los valores numéricos de los informes.

Durante el procesamiento del cubo de Analysis Services, los datos se calculan previamente en los campos que están establecidos en Measure. Por ejemplo, los grupos de medida de elementos de trabajo y del elemento de trabajo actual contienen datos acumulados para los siguientes campos: Estimación original, Horas restantes y Horas completadas. Para obtener más información acerca de grupos de medida, vea Perspectivas y grupos de medidas proporcionados en el cubo de Analysis Services para Visual Studio.

Cuando especifique Measure, debe especificar sum para el atributo formula, que devuelve la suma de cada medida a la que se hace referencia en la consulta.

None

Especifique None si no desea incluir el campo en informes. Este valor es la asignación predeterminada.

Ejemplos que muestran cómo especificar informes

Ejemplo de detalle

<FIELD refname="MyCorp.Summary" name="Summary" type="String" reportable="detail">

Ejemplo de dimensión

<FIELD refname="MyCorp.Category" name="Category" type="String" reportable="dimension">

Ejemplo de medida

<FIELD refname="MyCorp.Cost" name="Cost" type="Integer" reportable="measure" formula="sum">

Campos indizados

Puede habilitar o deshabilitar la indización para un campo de elemento de trabajo utilizando el comando witadmin indexfield. Al habilitar la indización para un campo, puede aumentar el rendimiento de la búsqueda de elementos de trabajo cuyas consultas especifiquen ese campo. Si agrega un campo personalizado que utilice en muchas de sus consultas de elementos de trabajo, quizá desee habilitar la indización para ese campo. Para obtener más información, consulte Administrar campos de elementos de trabajo [witadmin].

Elementos secundarios de FIELD (Definition)

Hay varios elementos secundarios opcionales que puede especificar para un campo de elemento de trabajo, por ejemplo:

  • Texto de ayuda. Define la información sobre herramientas o información de ayuda que se muestra para un campo en el formulario de elemento de trabajo (HELPTEXT).

  • Restricciones de campo. Especifica un campo como necesario, de solo lectura, vacío, inmovilizado o que coincide con un modelo concreto (REQUIRED, READONLY, EMPTY, FROZEN, MATCH).

  • Rellenado automático de valor de campo. Especifica un valor para el campo (DEFAULT, COPY, SERVERDEFAULT).

  • Lista de campos. Especifica valores permitidos, sugeridos o prohibidos. (ALLOWEDVALUES, SUGGESTEDVALUES, PROHIBITEDVALUES)

  • Condiciones de campo. Aplica una o más reglas a un campo cuando otro campo se modifica o no se modifica, u otro campo tiene o no tiene un valor concreto u otra condición (WHEN, WHENNOT, WHENCHANGED, WHENNOTCHANGED, CANNOTLOSEVALUE, NOTSAMEAS).

Para obtener más información, consulte Referencias de todos los elementos FIELD de XML.

Campos del sistema y predefinidos

Todos los campos definidos por el sistema tienen nombres de referencia que comienzan por System, por ejemplo, System.AreaPath, System.AssignedTo y así sucesivamente.

Los campos predefinidos por las plantillas de proceso predeterminadas que TFS proporciona comienzan por Microsoft.VSTS y después varían en función de su uso. Ejemplos de campos predefinidos que se utilizan habitualmente, para propósitos de programación e integración con Microsoft Project, para la integración con Team Foundation Build y la integración con Team Foundation son los siguientes:

  • Microsoft.VSTS.Common.Priority

  • Microsoft.VSTS.Scheduling.DueDate

  • Microsoft.VSTS.Build.FoundIn

  • Microsoft.VSTS.TCM.Steps

Para obtener información general de todo el sistema y de los campos predefinidos para las plantillas de proceso predefinidas que proporciona TFS, consulte Referencia de campos de elementos de trabajo para Visual Studio ALM. Para obtener más información acerca de especificar nombres de campo, consulte Convenciones de nomenclatura para objetos de seguimiento de elementos de trabajo.

Atributos ocultos y no cambiables y el explorador de campos de elementos de trabajo

Además de los atributos que puede cambiar para un campo de elemento de trabajo, hay varios atributos no cambiables y virtualmente ocultos para cada campo. Puede buscar las asignaciones de estos campos utilizando el Explorador de campos de elementos de trabajo. Obtenga acceso a la herramienta del explorador de campos de elementos de trabajo desde la herramienta avanzada Editor de procesos.

Explorador de campos de elementos de trabajo

Explorador de campos de los elementos de trabajo

Nota

La herramienta avanzada Editor de procesos ofrece una interfaz gráfica de usuario para personalizar las plantillas de proceso de Team Foundation Server.Puede usar esta herramienta para importar y exportar tipos de elemento de trabajo, modificar el contenido de la plantilla de proceso y explorar el conjunto de campos definidos para una colección de proyectos de equipo.Para más información, vea la siguiente página del sitio web de Microsoft: Herramientas avanzadas de Team Foundation Server.

Vea también

Referencia

Administrar campos de elementos de trabajo [witadmin]

Conceptos

Agregar o modificar campos de elementos de trabajo para admitir la creación de informes

Referencias de todos los elementos FIELD de XML

Otros recursos

Modificar o agregar un campo para admitir consultas, informes y flujos de trabajo