2012-04-14 20 views
6

Questi elementi di lavoro (e i changeset collegati) sono spesso soggetti a errori. Quindi, buoni candidati per la revisione del codice di squadra, e dovrebbe prestare maggiore attenzione.Come richiedere elementi di lavoro con troppi changeset

Ho controllato Work Item Query Language and Client Object Model e WIQL syntax for Link Query, ma non riesco ancora a ottenere questi elementi di lavoro (con il conteggio dei changeset) in modo efficace.

C'è un modo per interrogare in questo modo (dovrebbe essere WIQL, la sintassi SQL qui solo per la dimostrazione)?

SELECT [Source].[System.Id], COUNT(1) AS Changesets FROM WorkItemLinks 
WHERE [Source].[System.WorkItemType] = 'Bug' 
    AND [System.Links.LinkType] = 'Changeset' 
GROUP BY [Source].[System.Id] 
HAVING Changesets > 5 

O c'è un modo efficiente di utilizzare le API, che non hanno bisogno di leggere ogni elemento di lavoro per ottenere il conteggio?

Oppure è possibile solo eseguire query SQL direttamente sul database (like this)?

Oppure possiamo avere qualcosa di simile CurrentRelatedLinkCount/ExternalLinkCount/HyperLinkCount/RelatedLinkCount, che sono supportati per default (da VS IDE o API), come il campo di query?

risposta

0

È difficile senza lo schema della tabella. Ma immagino tu stia provando a farlo:

SELECT [Source].[System.Id], COUNT(1) AS Changesets FROM WorkItemLinks 
WHERE [Source].[System.WorkItemType] = 'Bug' 
    AND [System.Links.LinkType] = 'Changeset' 
GROUP BY [Source].[System.Id] 
HAVING COUNT(1) > 5 

Ho ragione?

+0

Una query SQL migliore. Tuttavia, COUNT non è supportato da WIQL. –

0

Il report eseguirà questa operazione: Generatore report supporta SQL.

0

Se SQL Server Analysis Services è installato, è possibile interrogare le relazioni. Ecco come farlo in Excel:

  1. Collegamento al cubo Tfs_Analysis in Excel (Dati -> Altre fonti -> Analysis Services)
  2. selezionare i campi dell'elemento di lavoro di modifiche,
  3. Cercare il Version Control Changeset dimensione, e selezionare Changeset ID
  4. Cercare la dimensione degli elementi di lavoro e selezionare ID

Questo vi permetterà di interrogare le relazioni tra elementi di lavoro e Changeset. Se ne visualizzi uno come campo Riga e l'altro come campo Colonna, e ottieni i totali parziali per ogni riga, questo ti darà il conteggio delle modifiche per articolo di lavoro (così come il conteggio oggetti di lavoro per gruppo di modifiche).

Si noti, tuttavia, che l'esecuzione di questa query su un progetto molto grande in TFS può essere proibitivamente costosa, quindi è consigliabile farlo per una piccola gamma di changeset e una piccola gamma di elementi di lavoro. Per fare ciò, si noti che per filtrare le date per i changeset è necessario utilizzare la dimensione Date, mentre per filtrare le date per gli elementi di lavoro è necessario utilizzare uno dei campi dell'oggetto di lavoro (data di creazione, data di modifica, ecc.)

Probabilmente potresti modificare il cubo OLAP per far sì che queste informazioni mettano in pratica le tabelle cambiando il suo processo ETL dal magazzino, e in tal caso sarai in grado di interrogare il conteggio dei changeset.

3

È possibile utilizzare ExternalLinkCount per i collegamenti del changeset. enter image description here

Problemi correlati