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 Services | Azure DevOps Server | Azure DevOps Server 2022
Sugerencia
¿La primera vez que consulta? Comience con Definir una consulta para conocer los pasos de procedimientos o la referencia rápida de consultas para obtener ejemplos.
Use esta guía de referencia para buscar tipos de datos de campo, operadores de consulta, macros y variables al compilar consultas en el Editor de Power Query. Todos los operadores y macros se admiten en Azure Boards; algunos solo se aplican a versiones específicas de Azure DevOps Server.
Para ver ejemplos rápidos y tareas del editor, consulte Referencia rápida de consultas y Administración y organización de consultas.
Requisitos previos
| Categoría | Requisitos |
|---|---|
| Pertenencia a proyectos | Debe agregarse como miembro del proyecto. |
| Niveles de acceso | - Para ver y ejecutar consultas compartidas: debe ser miembro de Project. - Para agregar y guardar una consulta compartida: debe tener al menos acceso básico. |
| Permisos | Asegúrese de que el permiso De contribución está establecido en Permitir para la carpeta en la que desea agregar una consulta. Es posible que su organización tenga que configurar manualmente el grupo Colaboradores para conceder este permiso. |
Nota
Necesita un nivel de acceso suficiente y permiso De contribución para guardar consultas compartidas. El acceso básico no es suficiente.
| Categoría | Requisitos |
|---|---|
| Pertenencia a proyectos | Debe agregarse como miembro del proyecto. |
| Niveles de acceso | - Para ver y ejecutar consultas compartidas: debe ser miembro de Project. - Para agregar y guardar una consulta compartida: debe tener al menos acceso básico. |
| Permisos | Asegúrese de que el permiso De contribución está establecido en Permitir para la carpeta en la que desea agregar una consulta. Es posible que su organización tenga que configurar manualmente el grupo Colaboradores para conceder este permiso. |
Nota
Necesita un nivel de acceso suficiente y permiso De contribución para guardar consultas compartidas. El acceso básico no es suficiente.
Valores y tipos de datos de campo de consulta
Especifique un valor que coincida con el tipo de datos de un campo. En la tabla siguiente se enumeran los tipos de datos admitidos:
Nota
Para Azure Boards (nube), el tipo de datos coincide con el campo que se muestra en la página Process > Fields. Para las implementaciones locales, el tipo de datos corresponde al type atributo en una FIELD definición. Consulte Campos de elemento de trabajo y atributos de campo para obtener más información.
| Tipo de dato | Description |
|---|---|
| Booleano | Almacena un valor True/False. |
| DateTime o Fecha y hora | Use una variable de fecha (por ejemplo, @Today o ) o @Today-1una fecha explícita como 01/01/2025. Introduzca las fechas en el formato configurado en su perfil. Para obtener ejemplos de consultas, vea Query by date or @CurrentIteration. En el caso de las consultas WIQL, también puede especificar fechas en UTC. Consulte Sintaxis para el lenguaje de consulta de elementos de trabajo (WIQL). |
| Doble o Decimal | Almacena un número real, como 0,2 o 3,5. Consulte Consulta por campos numéricos para obtener ejemplos. |
| GUID | Almacena una cadena de identificador única. |
| Historial | Campo con formato personalizado usado para la información histórica (el campo Historial ). Cuando la búsqueda de texto completo está disponible, este campo se indexa para las consultas de texto completo. Consulte Historial y auditoría. |
| HTML | Almacena texto con formato, como Descripción o Pasos de reproducción. Cuando la búsqueda de texto completo está disponible, estos campos se indexan. Para consultar campos de texto enriquecido, consulte Consulta por títulos, identificadores y campos de texto enriquecido. |
| Identidad | Almacena una cadena de texto corta que identifica una identidad de usuario. |
| Entero | Almacena un entero de 32 bits con signo, como 0, 1, 2 o 34. |
| Texto sin formato o Campo de texto (varias líneas) | Almacena valores de texto largos, como información de inicio de la aplicación. Los campos se indexan para la búsqueda de texto completo cuando se admite. Consulte Consulta por títulos, identificadores y campos de texto enriquecido. |
| picklistDouble | Campo personalizado que contiene una lista de selección de valores decimales. |
| picklistInteger | Campo personalizado que contiene una lista de selección de valores enteros. |
| picklistString | Campo personalizado que contiene una lista de selección de valores de texto corto (255 caracteres o menos). |
| Campo de cadena o de texto (una sola línea) | Almacena texto corto de hasta 255 caracteres Unicode. Los equipos suelen usar estos campos para listas de selección o menús desplegables. |
| TreePath | Representa una estructura de árbol ramificada, como Ruta de área o Ruta de iteración. Elija un valor de nodo válido. Puede filtrar por igualdad, desigualdad, "Under" o "Not Under". Use los In operadores y Not In para especificar varios valores. Defina estructuras de árbol para un proyecto ( rutas de acceso de área y rutas de acceso de iteración ) y seleccione los nodos que se van a asociar a los equipos. Para obtener ejemplos de consultas, consulte Consulta por área o ruta de acceso de iteración y Consulta por fecha o iteración actual. |
Nota
Los picklist... tipos solo se aplican a los campos personalizados definidos para un proceso heredado.
Patrón de fecha y hora
El patrón de fecha y hora que escriba para los campos DateTime debe coincidir con el que seleccione mediante el perfil. Para ver o cambiar la selección, consulte Establecimiento de preferencias de usuario.
Operadores de consulta
Use operadores para definir cómo debe relacionarse un valor de cláusula con el valor de campo de un elemento de trabajo. Para los tipos de datos de campo, consulte Referencia de los campos de elementos de trabajo. Para obtener ayuda para crear consultas, consulte Definición de una consulta.
| Operador de consulta | Cuando el operador devuelve elementos de trabajo coincidentes | Tipos de datos aplicables |
|---|---|---|
| = | Coincide con el valor de la cláusula . | Number (Double/Decimal/GUID/Integer), String, DateTime, TreePath |
| <> | No coincide con el valor de la cláusula. | Number, String, DateTime, TreePath |
| > | Es mayor que el valor de la cláusula. | Número, Cadena, Fecha y Hora |
| < | Es menor que el valor de la cláusula. | Número, Cadena, Fecha y Hora |
| >= | Es mayor o igual que el valor de la cláusula. | Número, Cadena, Fecha y Hora |
| <= | Es menor o igual que el valor de la cláusula. | Número, Cadena, Fecha y Hora |
| Campo | Coincide con el valor de otro campo especificado (debe ser el mismo tipo de datos). | Nombre de un campo del mismo tipo de datos (los campos booleanos comparan la igualdad con otros campos). |
| <>[Campo] | No coincide con el valor de otro campo especificado. | Nombre de un campo del mismo tipo de datos. |
| >[Campo] | Es mayor que el valor de otro campo especificado. | Nombre de un campo del mismo tipo de datos. |
| <[Campo] | Es menor que el valor de otro campo especificado. | Nombre de un campo del mismo tipo de datos. |
| >=[Campo] | Es mayor o igual que el valor de otro campo especificado. | Nombre de un campo del mismo tipo de datos. |
| <=[Campo] | Es menor o igual que el valor de otro campo especificado. | Nombre de un campo del mismo tipo de datos. |
| Contains | Contiene una coincidencia de texto exacta o parcial. | String |
| No contiene | No contiene ninguna coincidencia de texto, ni exacta ni parcial. | String |
| Contiene palabras | Coincide con una frase o palabras exactas (admite comodines al final *). Límite: 100 caracteres. Este operador utiliza la indexación de texto completo; consulta la sección Texto completo de este artículo para conocer los requisitos del servidor y de la colación. |
Campos de texto largo indexados para la búsqueda de texto completo (Texto sin formato, HTML, Historial y Título). |
| No contiene palabras | Excluye los elementos que contienen la frase o palabras especificadas. Límite: 100 caracteres. Use Contains Words con cláusulas complementarias para incluir o excluir términos clave. |
Campos de texto indexados para la búsqueda de texto completo. |
| En | Coincide con cualquier valor de un conjunto delimitado (use el separador de lista regional del sistema operativo, normalmente una coma). | Number, String, DateTime, TreePath |
| Está vacío | Coincide con los elementos en los que un campo HTML no contiene contenido (ningún valor especificado). Compatible con Azure Boards y Azure DevOps Server. | HTML |
| No está vacío | Coincide con los elementos en los que un campo HTML contiene contenido. Compatible con Azure Boards y Azure DevOps Server. | HTML |
| No en el | Excluye los valores de un conjunto delimitado (use el separador de lista regional). Compatible con Azure Boards y Azure DevOps Server. | Number, String, DateTime, TreePath |
| En grupo | Coincide con valores que pertenecen a un grupo nombrado (equipo, grupo de seguridad o categoría). Por ejemplo, use el grupo Colaboradores o un grupo de equipos denominado en el patrón [Project Name]\Team Name. Consulte Consulta por asignación o cambios de flujo de trabajo para obtener ejemplos. Utilice In Group solo con campos de tipo Cadena o Tipo de Elemento de Trabajo. Puede usar grupos de Microsoft Entra ID cuando la cuenta usa Microsoft Entra ID o grupos de Active Directory para el entorno local. |
Cadena de texto (coincide con el nombre de grupo o equipo) o tipo de elemento de trabajo |
| No en grupo | Excluye a los miembros de un grupo específico. | Cadena que coincide con un grupo de usuarios o una categoría de proyecto. |
| No pertenece a | Excluye los elementos iguales o contenidos en el nodo de árbol especificado. | TreePath |
| En | Coincide con los elementos que son iguales o que están contenidos bajo el nodo del árbol especificado. | TreePath |
| Fue | Corresponde a un valor que un campo mantuvo en cualquier momento anterior. (Editor de Power Query: solo campos de cadena. La compatibilidad con DateTime requiere consultas WIQL directas). | String, FechaHora |
Sugerencia
Puede crear consultas WIQL que utilicen operadores (por ejemplo, Was Ever) con otros tipos de datos, como la ruta de iteración. Consulte Enumerar elementos de trabajo movidos fuera de un sprint para obtener un ejemplo.
Ejemplos de operadores comunes
Estos son ejemplos de consultas representativas que usan varios operadores:
| Query | Devoluciones |
|---|---|
State = Active |
Elementos de trabajo con el estado "Activo" |
Priority <> Low |
Todos los elementos excepto aquellos con prioridad baja |
Created Date >= @Today-7 |
Elementos de trabajo creados en los últimos 7 días |
Assigned To = @Me |
Elementos asignados al usuario actual |
Tags Contains "frontend" |
Elementos con una etiqueta que contiene "frontend" |
State In (Active, In Progress) |
Elementos en cualquiera de los dos estados |
Area Path Under "Project\Web" |
Todos los elementos del área web, incluidas las subáreas |
Assigned To In Group "[Project]\Developers" |
Elementos asignados a cualquier persona del grupo Desarrolladores |
Description Contains Words "urgent" |
Elementos en los que la descripción contiene la palabra "urgente" |
Búsquedas parciales y de texto completo
Use Contains o Does Not Contains para buscar coincidencias exactas o parciales en campos de texto largo. Estos operadores usan el índice de consulta. Utilice Contiene palabras o No contiene palabras para buscar frases exactas, o bien un carácter comodín al final (*). Estos operadores requieren el índice de texto completo.
Puede usar el carácter comodín solo al final de una palabra o frase parcial. Si desea ver algunos ejemplos, consulte Ejemplo de consultas de elemento de trabajo y Consulta de elementos de trabajo mediante el campo Historial.
Nota
No todas las implementaciones admiten la búsqueda de texto completo. Por ejemplo, SQL Express y algunas configuraciones de SQL en la nube no admiten la búsqueda de texto completo. En esas implementaciones, solo los operadores Contains y Does Not Contains están visibles.
Azure DevOps Server indexa campos de texto largo (Texto sin formato y HTML) y el campo Título para la búsqueda de texto completo cuando el SQL Server subyacente admite la indexación de texto completo.
La búsqueda de texto completo también requiere una colación SQL con un separador de palabras registrado para el idioma que utilice. Si la ordenación de la base de datos de la colección no coincide con un idioma admitido, es posible que los resultados no sean los esperados. En esos casos, use Contains o Does Not Contains en su lugar.
Para más información, vea Consultas de búsqueda de texto completo y la configuración de intercalación.
Operadores de combinación
Las consultas usan lógica AND para combinar varias cláusulas. Cada cláusula adicional filtra aún más los resultados. Por ejemplo:
-
State = Active AND Priority = Highdevuelve elementos de trabajo que están activos Y tienen prioridad alta. -
State = Active AND State <> Closeddevuelve elementos activos excepto los marcados como cerrados. -
Assigned To = @Me AND State <> Donedevuelve elementos que le han sido asignados y que no están completos.
Puede usar paréntesis para agrupar condiciones para consultas complejas en sintaxis WIQL directa:
-
(State = Active OR State = In Progress) AND Priority = Highdevuelve elementos de alta prioridad en estados activos o en curso.
Para obtener más ejemplos y detalles de sintaxis WIQL, consulte Sintaxis para el lenguaje de consulta de elementos de trabajo (WIQL).
Solución de problemas y errores comunes
| Problema | Causa probable | Solución |
|---|---|---|
| Macro no devuelve ningún resultado | @CurrentIteration solo funciona en el portal web; Es posible que las API REST y la CLI devuelvan resultados vacíos | Use fechas directas en su lugar en scripts o API. Para obtener alternativas, consulte Consulta por fecha o iteración actual. |
| @TeamAreas consulta devuelve resultados inesperados | La macro solo funciona con el campo Ruta de acceso del área ; usarlo con otros campos no tiene ningún efecto | Compruebe que está filtrando por Ruta de acceso del área. Utilice en su lugar otros campos de ruta de árbol (ruta de iteración) con el operador Under. |
| Error del operador Contiene palabras | La consulta supera el límite de 100 caracteres o usa la colocación de caracteres comodín no válida | Reduzca el texto de la consulta a menos de 100 caracteres. Use el carácter comodín solo al final del término (por ejemplo, feature*), no al principio. |
| Error en la consulta de grupo | El formato de nombre de grupo es incorrecto o el grupo no existe | Use el formato exacto: Assigned To In Group "[Project]\\Team Name" para los equipos. Compruebe el nombre del grupo en la configuración del proyecto. |
| El operador Ha sido alguna vez no funciona con fechas | Editor de Power Query no admite Was Ever en campos DateTime |
Use la sintaxis de WIQL directa en lugar del editor de consultas visuales. Para más información, consulte Sintaxis para el lenguaje de consulta de elemento de trabajo (WIQL). |
| La consulta de campo booleano no devuelve ningún resultado | El valor distingue entre mayúsculas y minúsculas en las consultas WIQL | Use el caso exacto: CustomBoolField = True o CustomBoolField = False (T/F mayúscula en WIQL). |
Consulta de macros y variables
Use las macros siguientes para filtrar las consultas dinámicamente.
Nota
Las macros siguientes solo se admiten desde el portal web: @CurrentIteration, @CurrentIteration +/- n, @Follows, @MyRecentActivity, @RecentMentions, @RecentProjectActivity y @TeamAreas. Las consultas que contienen estas macros no funcionarán cuando se abran en Visual Studio/Team Explorer, Microsoft Excel o Microsoft Project.
| Macro | Description |
|---|---|
| [Any] | Utilícelo con Tipo de elemento de trabajo o Estado para buscar en todos los tipos o estados. Por ejemplo, Work Item Type=[Any] quita el filtrado basado en tipos. |
| @CurrentIteration | Use con Iteration Path para filtrar los elementos de trabajo en el sprint actual según el contexto del equipo actual. Consulte Consulta por fecha o iteración actual para obtener ejemplos. @CurrentIteration solo funciona cuando se ejecuta desde el portal web (no en las API REST ni en algunas operaciones de copia o clonación). |
| @CurrentIteration +/-n | Use la ruta de iteración para incluir sprints relativos a la iteración actual (por ejemplo, @CurrentIteration-1 o @CurrentIteration+2). Se admite en el portal web para Azure Boards y Azure DevOps Server. |
| @Follows | Utilícelo con ID y el operador In para mostrar una lista de los elementos de trabajo que sigue en el proyecto. Consulte Seguir un elemento de trabajo o una solicitud de incorporación de cambios. Esta macro solo funciona desde el portal web. |
| @Me | Use con campos de identidad para filtrar los elementos vinculados a su cuenta (por ejemplo, Created By=@Me). Consulte Consulta por asignación, flujo de trabajo o cambios en el panel. |
| @MyRecentActivity | Usa con ID y In para enumerar los elementos de trabajo que has visto o actualizado en los últimos ~30 días. Consulte el pivote Mi actividad de la página Elementos de trabajo para ver la misma lista. |
| @Project | Use con Team Project para filtrar los elementos de trabajo en el proyecto actual (por ejemplo, Team Project=@Project). Consulte Consulta entre proyectos. |
| @RecentMentions | Úselo con ID y In para mostrar una lista de los elementos de trabajo en los que se le menciona en las discusiones. Consulte el pivote Mencionado de la página Elementos de trabajo. |
| @RecentProjectActivity | Úsalo con ID y In para mostrar una lista de los elementos de trabajo actualizados recientemente en todo el proyecto. La macro devuelve hasta 5000 elementos; la ventana real depende de la actividad del proyecto. |
| @StartOfDay | Use con campos DateTime para filtrar en relación con hoy (por ejemplo, Closed Date>=@StartOfDay-7). |
| @StartOfMonth | Use con campos DateTime para filtrar con respecto al inicio del mes (por ejemplo, Created Date>=@StartOfMonth-3). |
| @StartOfWeek | Use con campos DateTime para filtrar en relación con el inicio de la semana (por ejemplo, Changed Date>=@StartOfWeek-2). |
| @StartOfYear | Use con campos DateTime para filtrar en relación con el inicio del año (por ejemplo, Target Date>=@StartOfYear). |
| @TeamAreas | Úsalo solo con Ruta de área y el operador = para buscar elementos asignados a las rutas de área de un equipo (por ejemplo, Area Path=@TeamAreas [Fabrikam Fiber]\Web). Se admite en el portal web para Azure Boards y Azure DevOps Server. |
| @Today | Use con campos DateTime para filtrar en relación con hoy (por ejemplo, Created Date>=@Today-7). Consulte Consulta por fecha o iteración actual. |
Ejemplos de macros comunes
Estos son ejemplos de consultas representativas que usan macros para realizar consultas dinámicas:
| Query | Devoluciones (Portal web) |
|---|---|
Iteration Path = @CurrentIteration |
Elementos de trabajo en el sprint actual |
Iteration Path = @CurrentIteration-1 |
Elementos de trabajo del sprint anterior |
Assigned To = @Me |
Elementos asignados al usuario actual |
Created Date >= @Today-30 |
Elementos creados en los últimos 30 días |
State = Active AND Area Path = @TeamAreas [Project]\MyTeam |
Elementos activos en el área de tu equipo |
Work Item Type = [Any] |
Todos los tipos de elementos de trabajo (quita el filtrado de tipos) |
Assigned To In Group @Follows |
Elementos asignados a las personas que sigue |
Nota
Las macros como @CurrentIteration, @Me, @Followsy @TeamAreas solo funcionan en el portal web. En el caso de las API REST, la CLI y los Power BI, use fechas directas e identificadores de usuario en su lugar. Para obtener alternativas, consulte Consulta por fecha o iteración actual.
Contenido relacionado
- Usar la referencia rápida sobre consultas
- Detalles sobre las consultas administradas
- Acceso al índice del campo del elemento de trabajo
- Descripción de la sintaxis de WIQL
REST API
Para interactuar mediante programación con las consultas, consulte uno de estos recursos sobre la API REST: