Agregar o modificar campos de elementos de trabajo para admitir informes

Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 - TFS 2013
Azure DevOps Server anteriormente se denominaba Visual Studio Team Foundation Server.

Importante

Este tema se aplica a la personalización del proyecto para los modelos de proceso XML locales. Para poder ver informes, debe haber configurado tfs y proyecto para admitir informes. Vea Agregar informes a un proyecto.

Para obtener información general sobre los modelos de proceso y las opciones de personalización, consulte Personalización de la experiencia de seguimiento de trabajo.

Los campos de elementos de trabajo se usan para realizar un seguimiento de los datos de un tipo de elemento de trabajo, definir los criterios de filtro de las consultas y usarlos en los informes. Cualquier campo, excepto los campos del sistema, que desee que aparezca en un informe debe definirse en el archivo de definición para los tipos de elementos de trabajo de los que el campo realizará el seguimiento. Los campos del sistema se definen automáticamente para cada tipo de elemento de trabajo. Sin embargo, deben incluirse en el formulario de elemento de trabajo para que admitan la entrada de datos.

Para que se admita la generación de informes, puede agregar campos o cambiar los atributos de los campos existentes. Al agregar o modificar campos, debe aplicar convenciones de nomenclatura sistemáticas para asegurarse de que los datos se agrupan lógicamente en carpetas del cubo SQL Server Analysis Services datos.

Para obtener una lista de los campos que se pueden notificar definidos en las plantillas de proceso predeterminadas, vea Referencia de campos que se pueden notificar.

Procedimientos recomendados

Antes de agregar o modificar un campo, revise los siguientes procedimientos recomendados:

  • Determine si puede usar un campo que ya esté definido en la colección de proyectos que contiene el proyecto. El uso de un campo existente admite informes entre proyectos.

  • Determine si puede usar un campo que ya esté definido en otra colección de proyectos en la implementación de Visual Studio Team Foundation Server. El uso de un campo existente admite informes entre proyectos.

  • No puede tener más de 1024 campos en cada colección de proyectos y no más de 1024 campos de informes únicos en todas las colecciones de proyectos a lo largo de una implementación de Team Foundation Server. Los campos combinados cuentan como un campo que se puede notificar.

  • Instituye un procedimiento estándar y un proceso de revisión para agregar y modificar campos en plantillas de proceso, proyectos o colecciones de proyectos.

  • Use convenciones de nomenclatura sistemáticas al etiquetar campos para los informes. Al asignar nombres de referencia de forma sistemática en todas las colecciones de proyectos en una implementación de Team Foundation Server, se garantiza un esquema de cubo y almacenamiento más coherente y utilizable, y se evitan conflictos de esquema en el almacenamiento. Para obtener más información, vea Resolver conflictos de esquema de almacenamiento de datos.

    Puede asignar hasta cuatro atributos de etiqueta a un campo de elemento de trabajo:

    Nota

    A los campos definidos en las plantillas de proceso Microsoft Solutions Framework no se les asigna un nombre de informe ni un nombre de referencia de informes. De forma predeterminada, se usan los atributos de nombre y nombre de referencia.

    • name. Nombre descriptivo del campo que aparece en los menús desplegables de las consultas de elementos de trabajo. El nombre descriptivo debe ser único en todos los campos definidos en un proyecto. Además, el nombre descriptivo puede ser diferente de la etiqueta mostrada que se asigna al campo en el formulario de elemento de trabajo. Para obtener más información, vea Control.

    • refname. Etiqueta única que se asigna al campo que la distingue de todos los demás campos definidos en la colección de proyectos. No se puede cambiar el valor asignado refname a .

      Para conocer los requisitos de y las restricciones en los nombres descriptivos y los nombres de referencia de los campos, vea Convenciones de nomenclatura para objetos de seguimiento de elementos de trabajo.

    • reportingname. Atributo opcional. Nombre que se usa para identificar un campo en los informes. Cuando no se establece explícitamente, se usa el valor asignado name al atributo .

    • reportingrefname. Atributo opcional. Etiqueta única que se asigna a un campo de informes que la distingue de todos los demás campos de informes definidos en todas las colecciones de proyectos. Cuando no se establece explícitamente, se usa el valor asignado refname al atributo . Para obtener las convenciones de nomenclatura recomendadas, vea Procedimientos recomendados al asignar nombres de referencia de informes más adelante en este tema.

      Nota

      Los nombres de referencia de informes solo son visibles desde un informe de tabla dinámica o Analysis Services cubo.

Uso de un campo existente

Debe usar un campo que ya esté definido si ese campo coincide con la información de la que desea realizar un seguimiento e informar. Para usar un campo existente, realice los pasos siguientes:

  • Identifique el campo que desea usar. Use el comando witadmin listfields para identificar los campos y sus atributos definidos para todas las colecciones de proyectos. Para obtener más información, vea Enumerar los campos definidos para una colección de proyectos más adelante en este tema.

  • Determine si el campo es informable y si los atributos que se pueden notificar satisfacen sus necesidades de informes.

  • Si no es reportable, use el campo de cambio witadmin para cambiar el atributo que se puede notificar para las colecciones de proyectos en las que se usa. Para obtener más información, vea Cambiar un atributo que se puede notificar para un campo más adelante en este tema.

  • Para la colección de proyectos en la que no está definido el campo, agrégrelo a los archivos de definición XML de los tipos de elemento de trabajo que desea usar para realizar el seguimiento de los datos. Para obtener más información, vea Agregar campos para admitir informes más adelante en este tema.

Enumerar los campos definidos para una colección de proyectos

Puede usar el comando witadmin listfields para enumerar los campos y sus atributos. Puede enumerar un campo especificado o todos los campos definidos en una colección de proyectos. El comando witadmin listfields tiene la sintaxis siguiente:

witadmin listfields /collection:CollectionURL /n:RefName  

Para obtener más información, vea Administrar campos de elemento de trabajo.

Atributos de campo que se pueden notificar

Los campos que se pueden notificar reportable tienen un valor de atributo de , o DetailDimensionMeasure . Los atributos siguientes determinan cómo se exportan y procesan los campos de elementos de trabajo a las bases de datos de almacenamiento de datos:

  • reportingtype. Para incluir un campo en los informes, debe asignar uno de los siguientes valores al reportable atributo :

    • Asigne Detail para exportar el campo a la base de datos de almacenamiento relacional, pero no al cubo. Como se muestra en el ejemplo siguiente, use el Detail tipo solo para los campos Integer, Double, String o DateTime:

      <FIELD refname="MyCorp.Summary" name="Summary" type="String" reportable="detail">  
      
    • Asigne Dimension para exportar el campo a la base de datos de almacenamiento relacional y al cubo. Como se muestra en el ejemplo siguiente, use Dimension solo para los campos Integer, String o DateTime. Este valor es útil para incluir campos que se usan para filtrar informes (por ejemplo, campos que tienen listas de valores válidos).

      <FIELD refname="MyCorp.Category" name="Category" type="String" reportable="dimension">  
      
    • Asignar Measure para admitir el procesamiento de valores precalculados en el cubo. Use el Measure tipo solo para los campos Integer y Double.

      Al asignar Measure como reportingtype , debe asignar como , como se muestra en el ejemplo sumformula siguiente:

      <FIELD refname="MyCorp.Cost" name="Cost" type="Integer" reportable="measure" formula="sum">  
      
  • reportingrefname. Puede asignar un nombre de referencia diferente a un campo marcado como informable. Si no se especifica ningún valor, se usa el valor asignado refname al atributo .

    Puede usar este atributo para combinar o divergen los campos que se incluyen en los informes. Para combinar dos campos que tienen nombres de referencia distintos y que se definen en colecciones de proyectos diferentes, asigne lo mismo reportingrefname a ambos. Para divergen dos campos que tienen el mismo nombre de referencia pero que están definidos en colecciones de proyectos diferentes, asigne un campo diferente a reportingrefname cada campo.

    Siempre que sea posible, deberá fusionar mediante combinación los campos para minimizar el número de campos del almacén de datos y para mantener los campos para informes dentro del límite máximo, que es de 1024. Puede generar informes entre grupos con campos combinados.

  • reportingname. Puede asignar una etiqueta diferente a un campo que se usa para mostrar datos en informes. Si no se especifica ningún valor, se usa el nombre descriptivo asignado para name el atributo. El valor asignado a aparece reportingname en el cubo. El valor asignado a no reportingrefname aparece.

    Importante

    Debe usar los procedimientos recomendados para etiquetar los campos de informes para que se a agruparán en los informes de tabla dinámica. Para obtener más información, vea Procedimientos recomendados al asignar nombresde referencia de informes .

Cambio de un atributo que se puede notificar para un campo de elemento de trabajo

Puede hacer que un campo existente pueda notificarse cambiando las asignaciones de atributos del campo definido para una colección de proyectos. Un campo existente se define en una o varias definiciones de tipo de elemento de trabajo. Además, puede cambiar todos los atributos que determinan cómo se procesa un campo en los almacenamientos de datos.

Puede usar la siguiente secuencia de pasos para cambiar la asignación de atributos de un campo:

  1. Puede usar el comando witadmin changefield para cambiar una asignación de atributos a un campo. Puede ejecutar este comando para una colección de proyectos. Use la sintaxis siguiente:

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

    Para que un campo existente sea informable, cambie el tipo de informe. Por ejemplo, para crear el AW. El campo Common.TeamPriority está disponible para el filtrado de informes, asígnele el valor dimensión:

    witadmin changefield /collection:http://AdventureWorksServer:8080/AWTeam/Collection1 /n:AW.Common.TeamPriority /reportingtype:dimension   
    

    Para obtener más información, vea Administrar campos de elemento de trabajo.

  2. (Opcional) Si tiene más de una colección de proyectos, puede que desee realizar cambios similares en el campo de elemento de trabajo que se define en esa colección. Para evitar conflictos de esquema al exportar y procesar datos a las bases de datos de almacenamiento de datos, debe asignar los mismos valores a estos atributos en todas las colecciones:

  3. Después de realizar todos los cambios en los campos de elemento de trabajo que desea usar para los informes, debe procesar las bases de datos de almacenamiento de datos. Puede usar los servicios web ProcessWarehouse y ProcessAnalysis, que están disponibles a través de WarehouseControlWebService.

    Este paso se asegura de que las personas que usan informes no ven un error al cambiar los atributos de campo.

    Para obtener más información, vea Administrar campos de elemento de trabajo.

Agregar campos para admitir informes

Puede agregar campos a la definición de tipos o tipos de elemento de trabajo. Al agregar el campo, debe agregar la misma definición de elemento de campo a todos los tipos de elementos de trabajo para los que el campo admitirá informes. Si desea que el campo admita informes entre proyectos, el campo debe agregarse a todos los tipos de elementos de trabajo de todos los proyectos sobre los que se va a informar.

Para obtener más información, vea Acerca de los campos y atributos de los elementos de trabajo.

Comprobación de los cambios realizados en los atributos de campo que se pueden notificar

Puede comprobar los cambios realizados en los atributos de campo notificables procesando los almacenamientos de datos a petición y comprobando los informes para comprobar que están actualizados. O puede esperar hasta que se ejecuten los trabajos del adaptador de almacenamiento. De forma predeterminada, la base de datos relacional se procesa cada pocos minutos. Sin embargo, el cubo se procesa cada dos horas de forma predeterminada.

Nota

Para obtener más información sobre WarehouseControlWebService, vea Procesar manualmente el almacenamiento de datos de TFS y elcubo de Analysis Services .

  1. Procese el almacenamiento de datos relacionales a petición mediante ProcessWarehouse WarehouseControlWebService.

  2. Procese el cubo a petición mediante ProcessAnalysisDatabase WarehouseControlWebService.

  3. Compruebe que los informes se están actualizando. Ver un informe a través del panel o Administrador de informes.

Procedimientos recomendados al asignar nombres de referencia de informes

Para los nombres de referencia de informes, quiere asignar etiquetas para que pueda encontrar fácilmente los campos en el informe de tabla dinámica y el cubo. Para lograrlo, aplique convenciones de nomenclatura sistemáticas para que los campos se apliquen en una secuencia lógica. Además, si los campos no se agrupan de una manera útil, puede cambiar el nombre de referencia de informes de un campo.

La aplicación de una convención de nomenclatura sistemática es cada vez más importante porque todos los datos que se pueden notificar de todos los proyectos definidos en todas las colecciones de proyectos se escriben en un único almacenamiento de datos relacionales. Los datos de dicho almacenamiento se procesan y escriben posteriormente en el cubo. Dado que los campos de elementos de trabajo se administran de forma distinta para cada colección de proyectos, se pueden aplicar etiquetas diferentes y dar lugar a un conjunto de campos que no están bien organizados para admitir la creación de informes.

Los campos de elemento de trabajo que tienen un tipo de dimensión que se puede notificar corresponden a los atributos de dimensión del cubo. Los atributos de dimensión se organizan en carpetas basadas en el nombre de referencia de informes que se asigna en la definición de tipo de elemento de trabajo o plantilla de proceso. A continuación se indican los tipos de correspondencias:

  • Los campos que tienen el prefijo "Sistema" son intrínsecos y aparecen directamente en la dimensión Elemento de trabajo, con el anteponer "Elemento de trabajo".

  • Otros campos se ponen en carpetas cuyos nombres corresponden a los prefijos en sus nombres de referencia. Por ejemplo, los campos que tienen el prefijo "Microsoft.VSTS.Common" aparecen en la carpeta con la etiqueta "Microsoft VSTS Common".

    Como se muestra en la ilustración siguiente, se agrega una carpeta para cada grupo de prefijos de campos que comparten un prefijo común:

    Estructura de carpetas en el cubo de datosOLAP

    En la tabla siguiente se enumeran los campos cuyos nombres de referencia comienzan por "System" y que aparecen en el informe de tabla dinámica con el prefijo "Elemento de trabajo". Estos campos se ponen directamente en la dimensión Elemento de trabajo. Todos los demás campos se ponen en carpetas cuyos nombres corresponden a los prefijos en sus nombres de referencia.

Nota

Las implementaciones que no usan la versión Enterprise de SQL Server Analysis Services no tienen acceso a las características de traducción proporcionadas por esa versión. En estas implementaciones, los campos se identifican por su nombre de referencia completo en el cubo, con " entero". reemplazada por " « « (por ejemplo, "System_Id" y "System_Title").

Nombre en el informe y el cubo de tabla dinámica Nombre de referencia Tipo de datos
Work Item.Area Path System.AreaPath TreeType
Elemento de trabajo.Asignado a System.AssignedTo String
Elemento de trabajo.Cambiado por System.ChangedBy String
Work Item.Changed Date System.ChangedDate DateTime
Elemento de trabajo.Creado por System.Created By String
Work Item.Created Date System.CreatedDate DateTime
Trabajo Item.ID System.Id Entero
Ruta de acceso item.iteration de trabajo System.IterationPath TreeType
Elemento de trabajo.Estado anterior System.PreviousState String
Work Item.Reason System.Reason String
Work Item.Rev System.Rev Entero
Work Item.State System.State String
Work Item.Title System.Title String
Elemento de trabajo.Tipo de elemento de trabajo System.WorkItemType String

En la tabla siguiente se enumeran los campos que aparecen en el informe de tabla dinámica de la carpeta con la etiqueta "Microsoft.VSTS.Common" en la dimensión Elemento de trabajo. Estos campos tienen nombres de referencia que comienzan por "Microsoft.VSTS.Common".

Nombre en el informe y el cubo de tabla dinámica Nombre de referencia Tipo de datos
Elemento de trabajo.Activado por Microsoft.VSTS.Common.ActivatedBy String
Work Item.Activated Date Microsoft.VSTS.Common.ActivatedDate DateTime
Elemento de trabajo.Cerrado por Microsoft.VSTS.Common.ClosedBy String
Work Item.Closed Date Microsoft.VSTS.Common.ClosedDate DateTime
Elemento de trabajo.Creado por Microsoft.VSTS.Common.CreatedBy String
Work Item.Created Date Microsoft.VSTS.Common.CreatedDate DateTime
Elemento de trabajo.Resuelto por Microsoft.VSTS.Common.ResolvedBy String
Work Item.Resolved Date Microsoft.VSTS.Common.ResolvedDate DateTime
Work Item.Resolved Reason Microsoft.VSTS.Common.ResolvedReason String
Work Item.Priority Microsoft.VSTS.Common.Priority Entero
Work Item.Severity Microsoft.VSTS.Common.Severity String
Work Item.Stack Rank Microsoft.VSTS.Common.StackRank Doble