Eseguire query in base a titoli, ID e campi RTF in Azure Boards e Azure DevOps

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Quando si desidera trovare elementi di lavoro basati su una parola chiave o una frase o un campo di testo Null, è possibile filtrare in base a testo a riga singola (String), testo a più righe (testo non crittografato) e rtf (HTML). Se si ritiene che le query richiedono troppo tempo per restituire i risultati, vedere Creare una query o procedure consigliate.

Operatori e macro supportati

Le clausole di query che specificano un campo di testo o RTF possono usare gli operatori e le macro elencate nella tabella seguente.


Tipo di dati

Operatori e macro supportati


Rtf (HTML)
Stringhe di testo a più righe (Testo normale)

Contains Words, Does Not Contain Words, Is Empty1, Is Not Empty1


Testo singolo (stringa)

= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], Contains, Does Not Contain, In, Not In, In Group, Not In Group, Was EverMacro: [Any], valido con il campo Tipo elemento di lavoro e @Project2, valido con il campo Progetto team.


ID

= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], In, Not In, Was EverMacro: @Follows, @MyRecentActivity, @RecentMentions, @RecentProjectActivity valido con il campo ID e Not InIn gli operatori@Project 2, validi con il campo Progetto team.


Campi Tipo di elemento di lavoro e stato

= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], Contains, non contiene, in, non in, group, not in group not in group, was ever **Macros**:[Any]' valid with entrambi i campi.


Nota

  1. Gli Is Empty operatori e Is Not Empty sono supportati per Azure DevOps Server 2019 RC2 e versioni successive
  2. Per impostazione predefinita, il sistema applica automaticamente il filtro in base al progetto corrente. Per altre informazioni, vedere Query tra progetti.

Usare Contains words per le corrispondenze di stringa

Quando si vuole filtrare in base a una corrispondenza di stringa, provare a usare l'operatore Contains Words anziché Contains. L'operatore Contains Words esegue una ricerca full-text nel campo specificato, più veloce nella maggior parte dei casi. La stringa di testo è limitata a 100 caratteri.

Mentre l'operatore esegue un'analisi Contains di tabella, che non è solo più lenta, ma usa anche più cicli di CPU. Questi cicli della CPU contribuiscono al limite di velocità di utilizzo delle risorse.

Nota

L'operatore Contains Words usa l'indicizzazione full-text di SQL. Quando un nuovo valore viene salvato in un campo long-text, SQL Server:

  • Dividere la frase in singole parole
  • Rimuovere tutte le parole comuni che non aggiungono realmente valore a una ricerca (ad esempio "a" o "is" in inglese)
  • Convertire le parole nel loro gambo comune (ad esempio, corsa, corsa e runner verrebbero convertite in "run", perché sono tutte varianti su tale parola)
  • Archiviare queste parole chiave univoche in un indice.

Quando un utente esegue una query su questo campo usando l'operatore Contains Words , la ricerca verrà eseguita sulle parole chiave univoche archiviate nell'indice. Per i campi di testo lungo, questa operazione rende la ricerca molto più efficiente e veloce rispetto all'esecuzione di una ricerca di sottostringa. Per impostazione predefinita, SQL definisce una "parola" come set di caratteri tra punteggiatura. Ad esempio, i punti indicano la fine di una parola, ma il punto non viene considerato parte della parola. Poiché l'indice di ricerca full-text contiene parole chiave anziché frasi esatte, si otterranno tutti i risultati che contengono le stesse parole chiave, come determinato dall'indicizzazione.

Query con parole chiave o frasi con caratteri jolly

Utilizzare Contains o Contains Words per elencare elementi che corrispondono parzialmente o esattamente alle parole o alle frasi immesse.

Editor per la query elenco flat per filtrare le parole chiave.

Scegliere Contiene o Non contiene per cercare corrispondenze esatte o parziali di una parola o di una frase. Scegliere Contiene parole o Non contiene parole da cercare in base a una frase esatta o usare il carattere jolly * . Questi operatori usano l'indice di ricerca full-text.

Ad esempio, specificare Contiene parole e informare* per filtrare in base a un campo di testo contenente informazioni o informazioni.

Usare il carattere jolly con Contiene parole.

Suggerimento

Per informazioni sul AND/OR raggruppamento delle clausole, vedere Creare e salvare query gestite, clausole Group. Per visualizzare la sintassi WIQL per una query, installare l'estensione dell'editor di query WIQL che consente di visualizzare la versione WIQL di qualsiasi voce dell'editor di query.

Eseguire una query per parole specifiche e non per altri

Utilizzare Contiene parole e non contiene operatori di parole per elencare gli elementi che corrispondono esattamente alle parole o alle frasi immesse ed escludere altre parole o frasi. È possibile usare questi operatori in combinazione e con il carattere jolly (*).

Nell'esempio seguente, questi operatori filtrano gli elementi di lavoro per gli elementi che contengono la fase di lavoro, ma non la parola Phasor.

Screenshot delle Editor di query per includere ed escludere parole esatte.

Query sul valore del campo non definito

È possibile trovare elementi di lavoro con un valore di campo non definito usando l'operatore equals (=) e lasciando vuoto il valore Value per il campo. Ad esempio, i filtri seguenti elencano tutti gli elementi di lavoro di tipo Task il cui campo Attività è vuoto.

Filtrare in base alle voci vuote

Per elencare gli elementi di lavoro in base a un campo che non è vuoto, usare l'operatore not (<>) e lasciare vuoto Il valore.

Query di campo HTML vuote o non vuote

È possibile trovare elementi di lavoro in cui non è stata immessa alcuna descrizione . L'uso di Is Empty o Is Not Empty con un campo HTML supporta l'inserimento di elementi di lavoro con campi RTF vuoti o non vuoti. Non si specifica un valore con questo operatore.

Ad esempio, i filtri di query seguenti elencano tutti gli elementi di lavoro in cui sono state apportate alcune voci nel campo Descrizione .

Filtrare i campi HTML non vuoti

Nota

La possibilità di eseguire query per gli elementi di lavoro che non dispongono di tag associati non è una funzionalità supportata. Se vuoi votare la richiesta di supporto per questa funzionalità, puoi farlo nella pagina Community degli sviluppatori, essere in grado di cercare tag vuoti.

Query basate su categorie

Per filtrare gli elementi di lavoro in base alla categoria a cui appartengono, usare l'operatore In Group . Ad esempio, i criteri di filtro seguenti restituiscono tutti gli elementi di lavoro presenti nel progetto corrente, assegnati al membro del team e definiti come appartenenti alla categoria di bug.

Clausola di query per trovare gli elementi di lavoro per categoria

Quali elementi vengono visualizzati nelle categorie Requisito o Attività?

Le assegnazioni predefinite dei tipi di elementi di lavoro per ogni categoria sono elencate di seguito per ogni processo.

Processo Categoria di requisiti Categoria attività
Di base Problema Attività
Agile Storia utente Attività
Scrum Elemento backlog prodotto, bug Attività
CMMI Requisito Attività

Ogni team può determinare se il tipo di elemento di lavoro Bug viene visualizzato nella categoria Requisito o Attività. Vedere Mostra bug nei backlog e nelle bacheche. È possibile aggiungere tipi di elementi di lavoro personalizzati a un backlog. Per altre informazioni, vedere Aggiungere o modificare un tipo di elemento di lavoro, Aggiungere un WIT personalizzato a un backlog o a una scheda.

Eseguire una query per gli elementi di lavoro che si stanno seguendo

È possibile usare la macro @Follows per filtrare un elenco in base agli elementi di lavoro che si stanno seguendo insieme ad altri filtri di query.

Ad esempio, la query seguente mostra come eseguire query in tutti i progetti per gli elementi di lavoro attivi che si stanno seguendo. Usare il campo ID e l'operatore In con la macro @Follows .

Editor di query con ID Nella clausola di query @Follows

Query per l'attività recente dell'elemento di lavoro

È possibile utilizzare le macro seguenti per elencare gli elementi di lavoro in base all'attività recente:

  • @MyRecentActivity: elencare gli elementi visualizzati o modificati di recente.
  • @RecentMentions: elementi dell'elenco a cui è stato aggiunto un @mention negli ultimi 30 giorni.
  • @RecentProjectActivity: elencare gli elementi creati o modificati di recente nel progetto.

Specificare il campo ID e gli operatori In o Not In .

Ad esempio, la query seguente mostra come eseguire una query per gli elementi di lavoro visualizzati o modificati di recente.

Editor di query con ID Nella clausola di query @MyRecentActivity

Campi comuni per la maggior parte dei tipi di elementi di lavoro

Nella tabella seguente vengono descritti i campi comuni usati per filtrare le query. I campi ID identificano in modo univoco gli elementi di lavoro in un elenco. Utilizzare il campo Titolo per distinguere l'elemento di lavoro da tutti gli altri dello stesso tipo. I campi Description e altri campi rich-text (data type=HTML) forniscono informazioni aggiuntive necessarie per implementare le modifiche di lavoro e tenere traccia delle modifiche. Dopo aver creato un elemento di lavoro, è possibile modificare tutti i campi ad eccezione dell'ID. Quando si aggiunge e salva un elemento di lavoro, l'ID viene assegnato dal sistema e non può essere modificato.

Nota

Il sistema indicizza automaticamente tutti i campi long-text con un tipo di dati di campi PlainText e HTML per la ricerca full-text. Sono inclusi i campi Titolo, Descrizione e Passaggi da riprovare . Per altre informazioni e requisiti di regole di confronto e server applicabili ad Azure DevOps locale, vedere Campi di query, operatori, valori e variabili - Ricerche full-text e parziali di parole.

Nome campo

Descrizione

Tipo di elemento di lavoro


Criteri di accettazione 1

Descrizione dei criteri da soddisfare prima che l'elemento di bug o di backlog del prodotto possa essere chiuso.

Prima di iniziare il lavoro su un elemento di bug o backlog del prodotto, i criteri per l'accettazione dei clienti devono essere descritti il più chiaramente possibile. Le conversazioni tra il team e i clienti per definire i criteri di accettazione consentono al team di comprendere le aspettative dei clienti. I criteri di accettazione possono essere utilizzati come base per i test di accettazione in modo da poter valutare in modo più efficace se un elemento è stato completato in modo soddisfacente.

Nome di riferimento=Microsoft.VSTS.Common.AcceptanceCriteria, Data type=HTML

Bug, Epic, Feature, Product backlog item (Scrum)

Descrizione 1, 2

Utilizzare questo campo per fornire informazioni approfondite su un elemento di lavoro.

Reference name=System.Description, Data type=HTML

Tutte le date

ID

Identificatore univoco assegnato a un elemento di lavoro. Gli ID elemento di lavoro sono univoci in tutti i progetti e all'interno di una raccolta di progetti.

Reference name=System.Id, Data type=Integer

Tutte le date

Passaggi di riproduzione (o passaggi da riprodurre) 1

Passaggi necessari per riprodurre un comportamento imprevisto. Acquisire informazioni sufficienti in modo che altri membri del team possano comprendere l'impatto completo del problema e se hanno risolto il bug. Sono incluse le azioni eseguite per trovare o riprodurre il bug e il comportamento previsto.
Nome di riferimento=Microsoft.VSTS.TCM.ReproSteps, Data type=HTML

Bug

Risoluzione

Descrive come è stato risolto un ostacolo.

Nome di riferimento=Microsoft.VSTS.Common.Resolution, Tipo di dati=HTML

Ostacoli (Scrum)

Informazionidi sistema 1

Informazioni sulla configurazione del software e del sistema rilevanti per il bug, la revisione del codice o il feedback.

Nome di riferimento=Microsoft.VSTS.TCM.SystemInfo, Tipo di dati=HTML

Bug, richiesta di revisione del codice, richiesta di feedback

Team di progetto

Progetto a cui appartiene un elemento di lavoro. Aggiungere questo campo a una query quando si desidera filtrare l'elenco in elementi in uno o più progetti. Per altre informazioni, vedere Query di esempio, eseguire query tra progetti.

Reference name=System.TeamProject, Data type=String

Tutte le date

Title

Breve descrizione che riepiloga l'elemento di lavoro e aiuta i membri del team a distinguerlo da altri elementi di lavoro in un elenco.

Reference name=System.Title, Data type=String

Tutte le date

Tipo di elemento di lavoro

Nome del tipo di elemento di lavoro. I tipi di elemento di lavoro vengono definiti in base al processo usato durante la creazione del progetto. Per altre informazioni, vedere Informazioni sui processi e sui modelli di processo e Aggiungere o modificare un tipo di elemento di lavoro.

Per filtrare gli elementi di lavoro in base all'assegnazione di categoria, è possibile usare gli operatori In gruppo e Non in gruppo e selezionare una categoria dall'elenco a discesa.

Reference name=System.WorkItemType, Data type=String

Tutte le date

Nota

Dopo l'aggiornamento a Team Foundation Server 2012, il campo Descrizione è stato modificato da un tipo di campo PlainText a HTML. Usando il comando witadmin changefield è possibile ripristinare il tipo di dati per questo campo. Vedere Gestire i campi dell'elemento di lavoro (witadmin).

REST API

Per interagire a livello di codice con le query, vedere una delle risorse dell'API REST seguenti: