2012-04-14 27 views
6

Các mục công việc này (và các bộ thay đổi được liên kết) thường dễ bị lỗi. Vì vậy, các ứng cử viên tốt để đánh giá mã nhóm và cần chú ý hơn.Cách truy vấn các mục công việc có quá nhiều thay đổi

Tôi đã kiểm tra Work Item Query Language and Client Object ModelWIQL syntax for Link Query, nhưng vẫn không thể nhận được các mục công việc này (với số lượng thay đổi) một cách hiệu quả.

Có cách nào để truy vấn như thế này (phải là WIQL, cú pháp SQL ở đây chỉ để trình diễn)?

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 

Hoặc là có cách hiệu quả để sử dụng API, không cần đọc từng mục công việc để đếm?

Hoặc chỉ có thể đạt được bằng cách thực hiện truy vấn SQL trên cơ sở dữ liệu trực tiếp (like this)?

Hoặc chúng ta có thể có một cái gì đó như CurrentRelatedLinkCount/ExternalLinkCount/HyperLinkCount/RelatedLinkCount, được hỗ trợ theo mặc định (từ VS IDE hoặc API), làm trường truy vấn?

Trả lời

0

Rất khó mà không có lược đồ bảng của bạn. Nhưng tôi đoán bạn đang cố gắng thực hiện điều này:

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 

Tôi có đúng không?

+0

Truy vấn SQL tốt hơn. Tuy nhiên, COUNT không được hỗ trợ bởi WIQL. –

0

Báo cáo sẽ thực hiện việc này - Trình tạo báo cáo hỗ trợ SQL.

0

Nếu bạn đã cài đặt Dịch vụ phân tích SQL Server, bạn có thể truy vấn các mối quan hệ. Dưới đây là làm thế nào để làm điều đó trong Excel:

  1. Connect để cube Tfs_Analysis của bạn trong Excel (dữ liệu -> Nguồn khác -> Analysis Services)
  2. Chọn các trường Workitem changeset,
  3. Look cho phiên bản điều khiển changeset tham số và chọn changeset ID
  4. Hãy tìm những khía cạnh Work Item và chọn ID

này sẽ cho phép bạn truy vấn mối quan hệ giữa hạng mục công trình và changesets. Nếu bạn hiển thị một trường dưới dạng trường Hàng và trường khác dưới dạng trường Cột và sau đó nhận tổng phụ cho mỗi hàng, điều này sẽ cho bạn số lượng thay đổi cho mỗi mục công việc (cũng như số mục công việc cho mỗi changeset). Tuy nhiên, lưu ý rằng việc chạy truy vấn này trên một dự án rất lớn trong TFS có thể cực kỳ tốn kém, vì vậy bạn nên làm điều này cho một loạt các thay đổi và một phạm vi nhỏ các mục công việc. Để thực hiện điều này, hãy lưu ý rằng để lọc ngày cho changesets bạn cần sử dụng thứ nguyên Ngày, trong khi để lọc ngày cho mục công việc bạn cần sử dụng một trong các trường mục công việc (ngày tạo, ngày thay đổi, v.v.)

Bạn có thể sửa đổi khối OLAP để đưa thông tin này được đưa vào bảng thực tế cho bạn bằng cách thay đổi quy trình ETL của nó từ kho, và trong trường hợp đó bạn sẽ chỉ có thể truy vấn số lượng thay đổi.

3

Bạn có thể sử dụng ExternalLinkCount cho các liên kết Thay đổi. enter image description here