Compartir a través de


Definir listas de selección

Puede enumerar un conjunto de valores para un campo si define una lista de selección como parte de su definición, o en un momento determinado del flujo de trabajo. Puede especificar que la lista solo puede contener valores permitidos, no puede contener valores prohibidos o puede sugerir valores. Si sugiere valores, los usuarios pueden especificar un valor diferente de los incluidos en la lista de selección.

También puede definir listas de selección dependientes en las que defina dos o más listas para un campo, pero solo aparecerá una lista en tiempo de ejecución según cómo se evalúe una regla condicional.

En este tema

  • Estructura de sintaxis

  • Estructura de sintaxis para elementos GLOBALLIST y LISTITEM

  • Permitir un valor existente

  • Especificar un conjunto de valores permitidos

  • Definir listas de selección dependientes

Nota

Para agregar o modificar una lista de selección para una definición FIELD, use la herramienta de línea de comandos witadmin para importar e importar la definición para el tipo de elemento de trabajo.Consulte Importar, exportar y administrar tipos de elementos de trabajo [witadmin].

Estructura de sintaxis

Puede usar los elementos ALLOWEDVALUES, SUGGESTEDVALUES y PROHIBITEDVALUES para especificar una lista con los valores que un usuario debe especificar, puede especificar o no debe especificar como valor para un campo. Si utiliza cada uno de estos elementos, puede enumerar una lista de elementos o especificar una lista global. Puede usar ALLOWEXISTINGVALUE para permitir que un campo almacene un valor existente si quita un elemento de la lista de selección.

Puede especificar estos elementos como elementos secundarios del elemento FIELD (Definición) o del elemento FIELD (Flujo de trabajo).

  • Use el elemento ALLOWEDVALUES para definir una lista con los valores que los usuarios pueden especificar en un formulario de elemento de trabajo o en el editor de consultas. Los usuarios deben especificar uno de los valores del elemento GLOBALLIST o el conjunto de entradas del elemento LISTITEM.

    <ALLOWEDVALUES for="userGroupName" not="userGroupName" expanditems="true | false" filteritems="excludegroups">
       <GLOBALLIST name="globalListName" />
       <LISTITEM value="Name1" />
       <LISTITEM value="Name2" />
       <LISTITEM value="Name3" />
    . . . 
    </ALLOWEDVALUES>
    
  • Use el elemento PROHIBITEDVALUES para definir una lista de valores que no puede contener un campo. Los usuarios no pueden guardar un elemento de trabajo si el campo contiene un valor prohibido. Use este elemento si desea restringir el uso de un valor que antes se permitía pero que ya no es válido.

    <PROHIBITEDVALUES for="userGroupName" not="userGroupName" expanditems="true | false" filteritems="excludegroups">
       <GLOBALLIST name="globalListName" />
       <LISTITEM value="Name1" />
       <LISTITEM value="Name2" />
       <LISTITEM value="Name3" />
    . . . 
    </PROHIBITEDVALUES>
    
  • Use el elemento SUGGESTEDVALUES para definir una lista de valores que puede contener un campo. Los usuarios pueden especificar otros valores, además de los que usted sugiera.

    <SUGGESTEDVALUES for="userGroupName" not="userGroupName" expanditems="true | false" filteritems="excludegroups">
       <GLOBALLIST name="globalListName" />
       <LISTITEM value="Name1" />
       <LISTITEM value="Name2" />
       <LISTITEM value="Name3" />
    . . . 
    </SUGGESTEDVALUES>
    

Para cada uno de estos elementos, puede especificar uno o varios atributos de la tabla siguiente:

Atributo

Descripción

for

Opcional. Especifica el nombre de un usuario o grupo en Team Foundation al que se le aplica la regla. Los nombres válidos constan de una cadena de texto que contiene entre 1 y 255 caracteres.

Valor de patrón: ^[^\\]+\\[^\\]+$

Ejemplo de valor de patrón: Domain\UserID

not

Opcional. Especifica el nombre de un usuario o grupo en Team Foundation al que no se le aplica la regla. Los nombres válidos constan de una cadena de texto que contiene entre 1 y 255 caracteres.

Valor de patrón: ^[^\\]+\\[^\\]+$

Ejemplo de valor de patrón: Domain\UserID

expanditems

Opcional. Especifica si un grupo identificado en el elemento LISTITEM debe expandirse para incluir grupos subordinados en la lista. El valor predeterminado es true.

filteritems

Opcional. Especifica que la lista incluye solo los miembros de los grupos, no los nombres de los grupos. El único valor válido para este atributo es excludegroups.

Para obtener más información, consulte Expandir elementos de lista y excluir grupos de listas.

Estructura de sintaxis para elementos GLOBALLIST y LISTITEM

Puede usar los elementos GLOBALLIST y LISTITEM para enumerar una lista de elementos que se pueden actualizar globalmente o que son específicos de un único campo.

  • Use el elemento GLOBALLIST para definir un conjunto de elementos LISTITEM que se almacena para una colección de proyectos de equipo y que pueden usar todos los proyectos de equipo de dicha colección. GLOBALLIST es un elemento secundario necesario del elemento GLOBALLISTS y un elemento secundario opcional de los elementos ALLOWEDVALUES, SUGGESTEDVALUES y PROHIBITEDVALUES. Puede definir una lista global dentro de una definición de elemento de trabajo, una definición de lista global o un flujo de trabajo global.

    <GLOBALLIST name="globalListName">
       <LISTITEM value="Name1" />
       <LISTITEM value="Name2" />
       <LISTITEM value="Name3" />
    . . . 
    </GLOBALLIST> 
    

    globalListName: cadena de texto que contiene entre 1 y 255 caracteres.

    Importante

    Si define una lista global en un archivo XML que define un tipo de elemento de trabajo, debe asignar un nombre único a la lista.De lo contrario, podría sobrescribir una lista existente que ya se hubiera definido para la colección.

  • Use el elemento LISTITEM para enumerar un conjunto de valores. LISTITEM es un elemento secundario necesario de GLOBALLIST y un elemento secundario opcional de los elementos ALLOWEDVALUES, SUGGESTEDVALUES y PROHIBITEDVALUES.

    <LISTITEM value="listName" />
    

    listName: cadena de texto que contiene entre 1 y 255 caracteres.

Permitir un valor existente

Puede usar el elemento ALLOWEXISTINGVALUE para permitir que un campo mantenga los valores existentes, después de especificar una lista de selección de elementos mediante el elemento ALLOWEDVALUES. Si no especifica el elemento ALLOWEXISTINGVALUE, obliga al usuario a especificar en tiempo de edición uno de los valores válidos para dicho campo. El elemento ALLOWEXISTINGVALUE solo modifica los elementos del mismo bloque.

<ALLOWEXISTINGVALUE />

Especifique este elemento en el elemento FIELD (Flujo de trabajo) para aplicarlo a las reglas definidas para el campo. En esta aplicación se incluyen las reglas que están especificadas por los elementos STATE, TRANSITION, DEFAULTREASON y REASON del campo. Especifique este elemento en el elemento STATE para aplicarlo no solo a las reglas que se definen en el estado del campo, sino a las reglas que se definen para el campo para todas las transiciones al estado.

Especifique este elemento en el elemento TRANSITION para aplicarlo no solo a las reglas que se definen en la transición del campo, sino a las reglas que se definen para el campo en los elementos REASON y DEFAULTREASON.

Especificar una lista

Las listas de campos se componen de elementos de lista individuales. Cada lista de campos debe contener por lo menos un elemento.

Nota

Las listas globales no deben incluir grupos con un ámbito de proyecto, ya que no se ciñen a un proyecto.

Para especificar los elementos de una lista de campos, use el elemento <LISTITEM value="">. Puede especificar una cadena, un nombre de usuario o un nombre de grupo.

<LISTITEM value="Emergency"/>
<LISTITEM value="Major"/>
<LISTITEM value="Minor"/>
<LISTITEM value="Domain\joe"/>
<LISTITEM value="[Global]\GlobalGroup" />
<LISTITEM value="[Project]\ProjectGroup" />

Nota

En tiempo de ejecución, los elementos de una lista aparecen ordenados alfabéticamente según el idioma del servidor que ejecuta Visual Studio Team Foundation Server.

Especificar un conjunto de valores permitidos

En este ejemplo, el campo Gravedad del cliente puede tener cualquiera de estos tres valores: Emergencia, Alta y Baja. El campo puede definirse según las necesidades, pero el valor predeterminado es Baja. En tiempo de ejecución, los usuarios pueden especificar uno de los valores de una lista desplegable.

<FIELD refname="System.Title" name="Title" type="String">
<HELPTEXT>Provide a brief description of the work item</HELPTEXT>
<REQUIRED/>
</FIELD>
<FIELD refname="MyCorp.CusSeverity" name="Customer Severity" type="String">
<HELPTEXT>Indicate the severity of the problem</HELPTEXT>
    <ALLOWEDVALUES>
        <LISTITEM value="Emergency">
        <LISTITEM value="Major">
        <LISTITEM value="Minor">
    </ALLOWEDVALUES>
<DEFAULT from="value" value="Minor"/>
</FIELD>

Definir listas de selección dependientes

Puede definir una lista de selección que esté activa solamente cuando la cláusula condicional principal sea verdadera. En el ejemplo, se definen dos conjuntos de listas de selección para Mi campo. En tiempo de ejecución, solo aparece una lista en función de si se asignan Requisitos al campo MyCompany.MyTeam.Discipline.

Nota

Las reglas WHEN y WHENNOT de este ejemplo también pueden aplicarse a otras reglas para especificar cuándo deben evaluarse dichas reglas.Para obtener más información, vea Asignar reglas y valores basados en condiciones.

<FIELD name="My Field" refname="MyCompany.MyProcess.MyField" type="String" reportable="dimension">
  <WHEN field="MyCompany.MyTeam.Discipline" value="Requirements"> 
    <ALLOWEDVALUES> 
      <LISTITEM value="Planning" /> 
      <LISTITEM value="Review" /> 
    </ALLOWEDVALUES> 
  </WHEN> 
  <WHENNOT field=" MyCompany.MyTeam.Discipline" value="Requirements"> 
    <ALLOWEDVALUES> 
      <LISTITEM value="Process Management" /> 
      <LISTITEM value="Planning" /> 
      <LISTITEM value="Review" /> 
    </ALLOWEDVALUES> 
  </WHENNOT>
</FIELD>

Vea también

Otros recursos

Seguimiento de elementos de trabajo: Índice de definiciones de elementos XML

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