Share via


Administrar campos de elementos de trabajo [witadmin]

Puede administrar los campos de tipo de elemento de trabajo que se definen para cada colección de proyectos de equipo usando los siguientes comandos de witadmin:

  • changefield: cambia uno o varios atributos de un campo. Al cambiar uno de los atributos siguientes, se cambia para todos los tipos de elemento de trabajo y proyectos de equipo de la misma colección de proyectos de equipo:

    • Tipo de datos para los campos PlainText o HTML.

      Importante

      Si actualiza Team Foundation Server de una versión anterior a la actual, la asignación de tipo para el campo Descripción (System.Description) se convierte automáticamente de PlainText a HTML.Con el comando changefield puede restaurar el contenido de este campo para que vuelva a mostrar texto.

    • Nombre descriptivo que se muestra en la consulta de elementos de trabajo. Puede no ser el mismo que se muestra en el formulario de elemento de trabajo.

    • Atributos de informes que incluye el nombre del campo que aparece en un informe, el nombre de referencia del informe y el tipo de informe.

    • Sincronización con Active Directory. Puede habilitar o deshabilitar la sincronización de campos de nombre de persona.

  • deletefield: elimina el campo especificado.

  • indexfield: activa o desactiva la indización para el campo especificado. 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.

  • listfields: enumera los atributos de todos los campos o de un campo especificado.

Para ejecutar la herramienta de la línea de comandos witadmin, abra una ventana de símbolo del sistema donde se haya instalado Visual Studio o Team Explorer y escriba:

cd %programfiles(x86)%\Microsoft Visual Studio 12.0\Common7\IDE

En una edición de 32 bits de Windows, reemplace %programfiles(x86)% por %programfiles%.

Para consultar información general sobre los campos definidos en las plantillas de proceso predeterminadas de Team Foundation Server, vea Referencia de campos de elementos de trabajo para Visual Studio ALM.

Nota

Puede crear y modificar campos de elemento de trabajo mediante Process Editor, una herramienta avanzada para Visual Studio.Esta herramienta no es compatible.Para más información, vea la siguiente página del sitio web de Microsoft: Herramientas avanzadas de Team Foundation Server.

Requisitos

  • Para enumerar los campos, debe tener el permiso Ver información de nivel de colección del proyecto de equipo de la colección establecido en Permitir.

  • Para eliminar campos o cambiarles el nombre, o para cambiar el atributo de un campo, debe ser miembro del grupo de seguridad Administradores de Team Foundation o Administradores de la colección de proyectos.

Para obtener más información, consulta Referencia de permisos para Team Foundation Server.

Nota

Incluso si ha iniciado sesión con permisos administrativos, debe abrir una ventana de símbolo del sistema con privilegios elevados para ejecutar esta función en un servidor que ejecute Windows Server 2008.Para abrir una ventana del símbolo del sistema con privilegios elevados, elija Inicio, abra el menú contextual de Símbolo del sistema y, a continuación, elija Ejecutar como administrador.Para obtener más información, vea el sitio web de Microsoft: Control de cuentas de usuario.

witadmin changefield /collection:CollectionURL /n:RefName    [/name:NewName]     [/syncnamechanges:true | false]    [/reportingname:ReportingName]     [/reportingrefname:ReportingRefName]    [/reportingtype:Type]    [/reportingformula:Formula]    [/type:PlainText | HTML]    [/noprompt]

witadmin deletefield /collection:CollectionURL /n:RefName [/noprompt]

witadmin indexfield /collection:CollectionURL /n:Name /index:on|off 

witadmin listfields /collection:CollectionURL /n:RefName [/unused]

Parámetros

Parámetro

Descripción

/collection:CollectionURL

Especifica el URI de la colección de proyectos de equipo. El formato del URI es el siguiente: http://NombreDeServidor:Puerto/NombreDeDirectorioVirtual/NombreDeColección

Si no se usa ningún directorio virtual, el formato del identificador URI será el siguiente:

http://NombreDeServidor:Puerto/NombreDeColección

/n:RefName

/n:Name

Nombre de referencia de un campo de tipo de elemento de trabajo.

/index

Especifica si la indización se debe habilitar o deshabilitar para el campo especificado. Especifique on para habilitar la indización y off para deshabilitarla.

/name:NewName

Especifica el nuevo nombre del campo.

/syncnamechanges

Especifica que el campo de elemento de trabajo se use para almacenar nombres y para actualizar cuando se hagan cambios en Active Directory o en un grupo de trabajo. Esta opción solo es válida cuando se especifica un campo con el tipo de datos String para typename.

Especifique true para habilitar la sincronización para el campo de datos o false para deshabilitarla.

/reportingname:ReportingName

Especifica el nombre del campo del almacén de datos que se debe usar para crear informes.

/reportingrefname:ReportingRefName

Especifica el nombre de referencia del campo del almacén de datos que se debe usar para crear informes.

/reportingtype:Type

Especifica cómo se usa el campo del almacén de datos para crear informes. Valores válidos son:

  • dimension: Se usa para los campos Integer, String o DateTime.

  • detail: Se usa para los campos Double, String o DateTime.

  • measure: Se usa para los campos Integer y Double. El tipo de agregación predeterminado es suma. Puede especificar otro tipo de agregación usando el parámetro formula.

  • none: Se usa para deshabilitar la posibilidad de crear informes con el campo.

Para obtener más información, consulta Definir y modificar campos de elementos de trabajo.

/reportingformula:Formula

Especifica la fórmula de agregación que se debe usar cuando el campo es una measure. La única fórmula admitida es sum.

/type:HTML | PlainText

Indica que el contenido del campo se debe convertir de PlainText a HTML, o de HTML a PlainText. Esta opción solo se puede especificar para campos cuya asignación de tipo es PlainText o HTML. Consulta Referencia de elemento FIELD (Definición).

/unused

Enumera todos los campos que no está usando ningún proyecto de equipo definido en la colección de proyectos de equipo.

/noprompt

Deshabilita la solicitud de confirmación.

/? or help

Muestra ayuda sobre el comando en la ventana del símbolo del sistema.

Comentarios

Campos indizados

Se crea un índice de consulta basado en los campos que tienen habilitada la indización. El índice mejora el tiempo de respuesta cuando se ejecutan consultas que incluyen campos indizados.

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. Si hay otros campos que el equipo usa con frecuencia en las consultas, puede agregarlos al índice de la consulta.

Sincronización de nombres de persona con Active Directory

Es necesario habilitar de forma manual la sincronización de cualquier campo de elemento de trabajo personalizado que se use para asignar nombres de persona que hagan referencia a Active Directory. Debe habilitar la sincronización de cada campo de cada colección de proyectos de equipo que contenga los campos personalizados.

Todos los campos de referencia al sistema que muestran nombres de persona tiene el atributo syncnamechanges establecido en true. Esos campos son System.AuthorizedAs, System.AssignedTo, System.ChangedBy y System.CreatedBy. Se habilita la sincronización de cada campo de nombre de persona definido en alguna de las plantillas de proceso predeterminadas. Para obtener más información, consulta Referencia de campos de asignaciones y flujo de trabajo.

Una vez que se habilita la sincronización, el campo deja de mostrar una cadena estática. En lugar de ello, muestra el nombre asociado a una cuenta de usuario. Si cambia el nombre de usuario en Active Directory o en un grupo de trabajo, un campo que tenga syncnamechanges establecido en true muestra automáticamente el nuevo nombre.

Si asigna el atributo syncnamechanges a un campo de tipo String, el campo acepta siempre los nombres de usuario válidos. Con todo, el campo no admite los nombres de grupos almacenados en Team Foundation Server o en Active Directory si alguna de las condiciones siguientes es true:

  • La regla VALIDUSER está especificada en todos los tipos de elementos de trabajo

  • La regla VALIDUSER está especificada para un tipo de elemento de trabajo

  • La regla ALLOWEDVALUES está especificada para un tipo de elemento de trabajo y dicha regla tiene un criterio de filtro que excluye a los grupos

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

Atributos que se pueden cambiar para cada tipo de elemento de trabajo

Los siguientes atributos o valores definidos para un campo se pueden cambiar cambiando la definición del tipo de elemento de trabajo en la que aparece el campo:

Ejemplos

A menos que se especifique lo contrario, se aplican los siguientes valores en cada ejemplo:

  • URI para la colección de proyectos de equipo: http://AdventureWorksServer:8080/tfs/DefaultCollection

  • Nombre de campo de elemento de trabajo: AdventureWorks.Field

  • Codificación predeterminada: UTF-8

Campos de lista

Use witadmin listfields para ver el conjunto de campos que se usan, para seleccionar uno y agregarlo a un tipo de elemento de trabajo. También, puede mostrar las asignaciones de atributos definidas para un campo concreto y determinar qué campos utilizan los proyectos de equipo.

Ver los atributos de un campo de elemento de trabajo

  • Especifique el siguiente comando para enumerar los atributos definidos para un campo especificado, por ejemplo Microsoft.VSTS.Common.Issue.

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:Microsoft.VSTS.Common.Issue
    

    Se muestra la información de campo y atributo del campo especificado, como se ve en este ejemplo.

    Field: Microsoft.VSTS.Common.Issue
    Name: Issue
    Type: String
    Reportable As: dimension
    Use: Adventure Works (Shared Steps), AW Future (Shared Steps), AW Current (Shared Steps)
    Indexed: False
    

    El parámetro Use indica el nombre de cada proyecto y el tipo de elemento de trabajo en el que se usa el campo. Para obtener más información sobre los atributos de campo, vea Referencia de campos de elementos de trabajo para Visual Studio ALM.

Enumerar todos los campos de una colección de proyectos de equipo

  • Especifique el siguiente comando para enumerar todos los campos definidos para una colección de proyectos de equipo.

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection
    

    Aparece la información de campo de todos los campos de la colección de proyectos especificada. Consulta Referencia de campos de elementos de trabajo para Visual Studio ALM.

Mostrar campos que no se usan

  • Especifique el siguiente comando para enumerar los campos que ya no se usan en la colección de proyectos de equipo por cualquier tipo de elemento de trabajo.

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /unused
    

    Aparece la información de campo y atributos para cada campo que no se utiliza, como se ve en este ejemplo.

    Field: Microsoft.VSTS.CMMI.TaskType
    Name: Task Type
    Type: String
    Reportable As: dimension
    Use: Not In Use
    Indexed: False
    
    Field: Microsoft.VSTSUE.Common.Flag
    Name: Flag
    Type: String
    Reportable As: dimension
    Use: Not In Use
    Indexed: False
    
    Field: Microsoft.VSTSUE.Common.Progress
    Name: Progress
    Type: String
    Reportable As: dimension
    Use: Not In Use
    Indexed: False
    

Cambiar el nombre de un campo

Puede cambiar el nombre descriptivo de un campo de elemento de trabajo para cumplir las convenciones de nomenclatura de su equipo. Observe que el nuevo nombre se aplica a todos los tipos de elemento de trabajo que hacen referencia al campo modificado en todos los proyectos de equipo de la colección de proyectos. El nombre descriptivo se muestra al definir los criterios de filtro en una consulta de elementos de trabajo. El nombre que aparece en un formulario de elemento de trabajo puede ser diferente que el nombre descriptivo definido para el campo.

Para cambiar el nombre de un campo de elemento de trabajo

  1. Especifique el siguiente comando para cambiar a "Important Rank" el nombre descriptivo asignado a Microsoft.VSTS.Common.Rank.

    witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:Microsoft.VSTS.Common.Rank /name:"Important Rank"
    
  2. En la solicitud de confirmación, escriba y y, a continuación, presione ENTRAR. Espere hasta recibir el siguiente mensaje:

    Field renamed.

Para comprobar los cambios importados en un solo proyecto

  1. En Team Explorer, elija Actualizar Actualizar.

    Se descargan del servidor las últimas actualizaciones, que tienen los cambios que acaba de hacer en el nombre de campo. Espere unos segundos para que termine la actualización.

  2. Elija Nueva consulta para crear una consulta.

  3. En el Editor de consultas, elija el vínculo Haga clic aquí para agregar una nueva cláusula para agregar una fila, seleccione la celda en blanco Campo y escriba Rank en la celda. El siguiente mensaje aparece por encima de la lista de resultados. Este mensaje indica que no se encuentra "Rank".

    Ejecutar la consulta para ver los resultados. TF51005: la consulta hace referencia a un campo que no existe. El error lo produjo <<Rank>>.

  4. Elimine el valor Rank de la celda Campo y escriba Important Rank en la celda.

  5. Seleccione <> en la celda Operador y escriba 1 en la celda Valor.

  6. En la barra de herramientas Consulta, elija Ejecutar consulta (Team Explorer) Ejecutar.

  7. Abra el menú contextual de cualquier fila de los resultados y seleccione Opciones de columna. Desplácese hacia abajo en la lista Columnas disponibles. Observe que el campo Rank ya no aparece, y sí está el campo Important Rank.

  8. Seleccione Important Rank en el cuadro Columnas disponibles y, a continuación, elija el botón > (agregar columnas seleccionadas). Elija Aceptar.

    Observe que el nombre descriptivo de Microsoft.VSTS.Common.Rank ha cambiado de Rank a Important Rank en todo el generador de consultas y en la lista de resultados.

  9. Cierre la consulta. Elija No cuando se le pida que guarde la consulta.

  10. Cree un elemento de trabajo de tarea. Elija el vínculo Nuevo elemento de trabajo y, a continuación, elija Tarea.

    Este elemento de trabajo se crea a partir del tipo de elemento de trabajo que ha modificado e importado.

  11. Observe que en el cuadro Estado no ha cambiado la etiqueta del campo cuyo nombre ha cambiado, Rank. Es así porque las etiquetas de los campos de los formularios de elemento de trabajo están en el ámbito del proyecto de equipo principal y son independientes del nombre de campo de servidor que se acaba de especificar.

    Nota

    Para obtener más información sobre cómo cambiar etiquetas de campo en los formularios de elemento de trabajo, vea Referencia del elemento Control de XML.

  12. Cierre la nueva tarea y elija No cuando se le pida que guarde el elemento de trabajo.

Cambiar el parámetro informa como valor de un campo

El siguiente comando especifica la posibilidad de notificar el tipo del campo AdventureWorks.CreatedOn de DateTime en una dimensión. Los datos de este campo se introducen en las bases de datos del almacén y de Analysis Services de forma que se pueda usar para filtrar informes.

witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.CreatedOn /reportingtype:dimension

El siguiente comando especifica la posibilidad de notificar el tipo del campo AdventureWorks.Field de Double en una medida. Todas las medidas se agregan mediante suma.

witadmin reportfield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.Field /reportingtype:measure

Habilitar la sincronización de un campo de nombre de persona personalizado

El siguiente comando habilita la sincronización para el campo de elemento de trabajo AW.CustomerName definido para Collection1 en el servidor AdventureWorksServer.

Comprobar el tipo de datos del campo que se desea convertir

  • Compruebe el tipo de datos asignado al campo, como MyCompany.CustomerName, que desea sincronizar especificando el siguiente comando:

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomerName
    

Habilitar la sincronización

  1. Para habilitar la sincronización de un campo de nombre de persona, escriba el siguiente comando, usando sus datos en lugar de los argumentos que se muestran aquí:

    witadmin changefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.CustomerName /syncnamechanges:true
    
  2. Aparece la siguiente solicitud de confirmación:

    This will change properties for field {0} on the Team Foundation Server. Do you want to continue?

  3. Escriba 0 para confirmar que desea cambiar el campo o 1 para cancelar la solicitud.

    Si la solicitud de cambio se realiza correctamente, aparece el siguiente mensaje de confirmación:

    The field was updated.

    Si la solicitud de cambio no se realiza correctamente, aparece un mensaje de error. Los errores más habituales que se suelen cometer son tratar de cambiar un campo de referencia al sistema o tratar de cambiar un campo cuyo tipo de datos no es String. Estas operaciones no se admiten.

Eliminar un campo

Antes de eliminar un campo, compruebe que no se está usando. Si el campo se está usando, primero debe quitarlo de los tipos de elemento de trabajo que lo usan y, después, eliminarlo de la colección de proyectos de equipo. El siguiente comando elimina el campo AdventureWorks.Field de Collection1:

witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:AdventureWorks.Field

Comprobar que un campo no está en uso

  1. Escriba el siguiente comando, especificando el nombre de referencia del campo de elemento de trabajo, por ejemplo MyCompany.MyProcess.MyField.

    witadmin listfields /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:MyCompany.MyProcess.MyField
    

    En la información mostrada para el campo, compruebe que el valor para Use es "Not In Use" como sigue en este ejemplo.

    Field: MyCompany.MyProcess.MyField
    Name: MyField
    Type: String
    Reportable As: dimension
    Use: Not In Use
    Indexed: False
    
  2. Si el campo Use indica que el campo está en uso, debe eliminarlo de cada tipo de elemento de trabajo para cada proyecto de equipo que se muestre. Por ejemplo, el campo Microsoft.VSTS.TCM.SystemInfo indica que está siendo utilizado por los tipos de elemento de trabajo Error y Defecto de código para cuatro proyectos: Arroyo, Desert, Palm y Springs.

    Field: Microsoft.VSTS.TCM.SystemInfo
    Name: System Info
    Type: Html
    Reportable As: None
    Use: Arroyo (Bug), Desert (Bug), Palm (Bug), Springs (Bug, Code Defect)
    Indexed: False
    

    Antes de poder eliminar este campo, debe quitarlo de cada uno de los tipos de elemento de trabajo enumerados para cada proyecto de equipo para el que esté definido. Para quitar el campo, debe modificar la definición del tipo de elemento de trabajo eliminando los elementos FIELD y Control que contienen el nombre de referencia del campo. Vea Importar, exportar y administrar tipos de elementos de trabajo [witadmin], Referencia de elemento FIELD (Definición) y Referencia del elemento Control de XML.

Eliminar un campo de una colección de proyectos de equipo

  • Escriba el comando siguiente para eliminar el campo MyCompany.MyProcess.MyField y, a continuación, elija Entrar.

    witadmin deletefield /collection:http://AdventureWorksServer:8080/tfs/DefaultCollection /n:RefName
    

    Escriba y cuando aparezca la pregunta de confirmación para completar este paso.

Preguntas y respuestas

P: ¿Qué personalizaciones puedo realizar que sigan utilizando el asistente para Configurar características con el fin de actualizar mi proyecto de equipo tras una actualización de TFS?

R: puede agregar campos personalizados, personalizar una lista de selección y agregar reglas a un campo. El asistente para Configurar características actualizará sus proyectos de equipo, y obtendrá acceso a las últimas características.

No es recomendable cambiar los atributos de campos. Para información sobre qué personalizaciones puede realizar con seguridad y cuáles debe evitar, vea Personalizar la experiencia de seguimiento del trabajo: Antes de realizar la personalización, debe entender las implicaciones de esta en el mantenimiento y la actualización.

Vea también

Conceptos

Resolver los conflictos del esquema que se producen en el almacén de datos

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

Referencia de campos de elementos de trabajo para Visual Studio ALM

Referencia de campos para informe para Visual Studio ALM

Otros recursos

witAdmin: Personalizar y administrar objetos para el seguimiento de elementos de trabajo