Búsqueda avanzada en Jira
Además de la búsqueda rápida, accesible en cualquier pantalla en la zona superior a la derecha, o la búsqueda básica, accesible pulsando en la barra superior Tareas-> Buscar incidencias, en Jira podemos ejecutar la búsqueda avanzada.
¿Qué es una búsqueda avanzada?
La búsqueda avanzada permite utilizar consultas estructuradas para buscar asuntos de JIRA. Los resultados de búsqueda se muestran en el "Navegador de Asuntos", donde el listado se puede exportar a múltiples formatos accediendo al submenú "Exportar" arriba a la derecha. También es posible guardar esta consulta como un filtro y suscribirse a esta búsqueda avanzada.
Cuando se realiza una búsqueda avanzada, se está usando el lenguaje de consultas de JIRA (JQL o "JIRA Query Language").
Una consulta simple en JQL (también conocida como una "cláusula" ) consiste en un campo, seguido por un operador, seguido de uno o más valores o funciones. Por ejemplo, la siguiente consulta sencilla encontrará todos los temas en el proyecto de "TEST":
project = "TEST"
(Este ejemplo usa el campo Proyecto ("project"), el operado IGUAL y el valor TEST)
Se debe tener en cuenta que no es posible comparar dos campos.
JQL proporciona una sintaxis parecida a SQL, tal como el ORDER BY (para la ordenación) y la función de SQL "ISNULL()". De todas formas, JQL no es un lenguaje de consultas a bases de datos. Por ejemplo, JQL no dispone de una sentencia SELECT.
Documentación oficial
La documentación más actualizada en relación a búsqueda avanzada se puede encontrar en: https://confluence.atlassian.com/jiracorecloud/advanced-searching-operators-reference-765593718.html
Cómo realizar una búsqueda avanzada
Desde el interfaz de Jira, navegar en "Tareas" -> "Buscar incidencias". Se mostrará el Navegador de asuntos.
Si se muestra el enlace de "Búsqueda avanzada", pulsar para cambiar.
Teclear la consulta JQL usando los campos, operadores y valores de campo o funciones.
Pulsar sobre el botón de búsqueda para ejecutar la consulta.
Una vez ejecutada la consulta, Jira nos permite guardar la consulta como un filtro. Utilizaremos el botón "Guardar como".
Uso de la función de autocompletado
A la vez que se escribe la consulta, Jira reconocerá el contexto y ofrecerá una lista de sugerencias de "autocompletado" de la siguiente forma:
La lista de sugerencias de autocompletado se muestra por orden alfabético e incluye las 15 primeras coincidencias. Anotar aquí que las sugerencias de autocompletado no se ofrecen para las funciones.
Cambio entre la búsqueda "avanzada" y la "simple"
En general, una consulta creada usando una búsqueda simple estará disponible para ser traducida a una "Búsqueda avanzada" (o JQL), y al revés.
De todas formas, una consulta creada usando la "Búsqueda avanzada" podría no estar disponible para su traducción a una búsqueda, particularmente si:
la consulta contiene un operador OR (anotar que se puede tener un operador IN y éste será traducido, por ejemplo project in (A, B))
p.e. incluso cuando se tiene una consulta como:
(project = JRA OR project = CONF)
que es equivalente a esta query:(project in (JRA, CONF))
, únicamente la secunda consulta será traducida.
la consulta contiene un operador NOT
la consulta contiene un operador EMPTY
la consulta contiene cualquiera de los operadores de comparación: !=, IS, IS NOT, >, >=, <, <=
la consulta especifica un campo y valor que está relacionado con un proyecto (p.e. version, component, custom fields) y el proyecto no está explicitamente incluido en la consulta (p.e.
fixVersion = "4.0"
, sin elAND project=JRA
). Esto es especialmente difícil con los campos personalizados, ya que se pueden configurar en base a un proyecto / asunto tipo. La regla general es que si la consulta no se puede crear en el formulario 'Búsqueda Simple', entonces si se crea utilizando "Búsqueda avanzada" no podrá ser traducido a "Búsqueda simple".
Configuración de la precedencia de los operadores
Se puede utilizar paréntesis en las declaraciones JQL complejos para hacer cumplir la precedencia de operadores.
Por ejemplo, si desea buscar todos los problemas resueltos en el proyecto SysAdmin, así como todos los asuntos (cualquier estado, cualquier proyecto) asignadas al administrador del sistema (hmora), puede utilizar paréntesis para hacer cumplir la precedencia de los operadores lógicos en su consulta, p.e.:
|
Anotar que si no se usan paréntesis, la declaración será evaluada de izquierda a derecha.
También se pueden usar paréntesis para agrupar consultas, tal que puedes aplicar el operador NOT al grupo
Palabras clave
Una palabra clave en JQL es una palabra o frase que hace (o es) cualquiera de estas:
une dos o más cláusulas juntas para formar una consulta JQL compleja
altera la lógica de una o más cláusulas
altera la lógica de los operadores
tiene una definición explícita en una consulta JQL
realiza una función específica que altera los resultados de una consulta JQL.
Listado de palabras clave
AND
OR
NOT
EMPTY
NULL
ORDER BY
Operadores
Un operador en JQL es uno o más símbolos o palabras que comparan el valor de un campo en su lado izquierdo con uno o más valores (o funciones) en su lado derecho, de tal manera que sólo los resultados verdaderos son recuperados por la cláusula. Algunos operadores pueden utilizar la palabra clave NOT.
Listado de Operadores
EQUALS: =
NOT EQUALS: !=
GREATER THAN: >
GREATER THAN EQUALS: >=
LESS THAN: <
LESS THAN EQUALS: <=
IN
NOT IN
CONTAINS: ~
DOES NOT CONTAIN: !~
IS
IS NOT
WAS
WAS IN
WAS NOT IN
WAS NOT
CHANGED
Refencia de Campos
Un campo en JQL es un palabra que representa un campo JIRA (o un campo personalizado que se haya definido). En una cláusula, un campo es seguido por un operador, que a su vez es seguido por uno o más valores (o funciones).
El operador compara el valor del campo con uno o más valores o funciones de la parte derecha, tal que únicamente resultados ciertos o "verdaderos" son devueltos por la cláusula.
Listado de campos
Campo | Traducción | Descripción |
---|---|---|
assignee | Asignado | Usuario de JIRA que tiene asignado el asunto |
category | Categoría | Categoría del proyecto |
comment | Comentario | |
component | Componente | |
created | Fecha de Creación | |
description | Descripción | Campo con la descripción |
due | Fecha de Entrega | |
level | Nivel de Seguridad | |
parent | Asunto Padre | |
priority | Prioridad | |
project | Proyecto | Clave o nombre del proyecto |
reporter | Informador | Usuario de JIRA que abre la incidencia |
resolution | Resolución | Código de resolución |
status | Estado | Estado en el que se encuentra el asunto dentro del flujo de trabajo |
summary | Resumen | Resumen del asunto |
updated | Fecha de Actualización | Última fecha en la que el asunto fue modificado |