1

非常に限られた WIQL では不可能と思われる方法で作業項目クエリをカスタマイズする必要があります。少し変更する必要があるかなり標準的なクエリがあります。

<?xml version="1.0" encoding="utf-8"?><WorkItemQuery Version="1">
<TeamFoundationServer>http ://blah-
blah01:8080/tfs/blahcollection</TeamFoundationServer>
<TeamProject>Blah</TeamProject><Wiql>

SELECT 
[Microsoft.VSTS.Common.Priority],[System.AreaPath],
[Microsoft.VSTS.Common.Severity],[System.CreatedDate],[System.Id],
[System.WorkItemType],[System.Title],[System.CreatedBy],[System.State],
[System.AssignedTo],[System.ChangedDate],[BLAH.Category],[System.AreaId] 

FROM WorkItems

WHERE [System.TeamProject] = @project 
and [System.WorkItemType] &lt;&gt; '' 
and [System.CreatedDate] &gt;= '2012-01-27T00:00:00.0000000' 
and [System.CreatedBy] &lt;&gt; 'blah' 
and not [System.State] contains 'Tested' 
and not [System.State] contains 'Released' 
and [System.State] &lt;&gt; 'Developed' 
and ([System.State] &lt;&gt; 'Closed' 
and not [System.State] contains 'Resolved') 
and [System.AssignedTo] in ('blah1', 'blah2', 'blah3') 

ORDER BY 

[System.WorkItemType], 
[Microsoft.VSTS.Common.Priority], 
[System.AreaPath], 
[Microsoft.VSTS.Common.Severity], 
[System.Id] desc, 
[System.AssignedTo] 

</Wiql></WorkItemQuery>

[System.AreaPath] 列内で、'Foo' を含む項目が最初に表示され、'Bar' を含む項目が次に表示され、次に列の残りの部分が表示されることを除いて、現在とまったく同じ結果が返されるはずです。通常通り注文。

これはT-SQLでは簡単ですが、WIQLを使用すると一見不可能に見えるので、アイデアや回避策をいただければ幸いです。

回避策に関連する可能性があるのは、TFS インスタンスが完全な SQL Server ではなく SQLExpress の上にあるという不幸な事実です (これはもともと概念実証であり、置き換え中です。それについて私ができることは何もありません)。現時点ではまだクエリを整理する必要があります)

どうもありがとうサイモン

4

0 に答える 0