Tabellen zur Versionsgeschichte von Arbeitsaufgaben
Sie können Verlaufsdaten zu Fehlern, Aufgaben und anderen Typen von Arbeitsaufgaben abfragen, indem Sie "FactWorkItemHistory" und die zugeordneten Dimensionstabellen verwenden, wie die folgende Abbildung zeigt. Verlaufsdaten enthalten Informationen zum Status einer Arbeitsaufgabe oder Wert eines Felds einer Arbeitsaufgabe bzw. wie es sich mit der Zeit geändert hat. Status- und Burndowndiagramme sind Beispiele für Berichte, die aus Versionstabellen von Arbeitsaufgaben erstellt werden. Die Daten werden mithilfe von Kompensationsdatensätzen gespeichert.
Weitere Informationen zu Measures und Dimensionen, die diesen Tabellen im SQL Server Analysis Services-Cube zugeordnet sind, finden Sie in Analysieren und Erstellen von Berichten über Arbeitsaufgaben- und Testfalldaten mithilfe der Arbeitsaufgabenperspektive.
"FactWorkItemHistory" ist den folgenden Dimensionstabellen zugeordnet:
DimArea
DimIteration
DimPerson
DimTeamProject
DimWorkItem
Mit der folgenden Beispielabfrage können Sie den Arbeitsauslastungstrend für den Zeitraum vom 21.09.2009 bis 30.09.2009 für bestimmte User Storys suchen. Für jede User Story im Teamprojekt gibt diese Abfrage Informationen zu den insgesamt abgeschlossenen Aufgaben, den ursprünglich geschätzten Aufgaben, den verbleibenden Aufgaben und den gesamten Story-Punkten für jeden Tag in diesem Zeitraum zurück.
Hinweis
Bei dieser Abfrage wird davon ausgegangen, dass eine User Story mit anderen Arbeitsaufgaben durch untergeordnete Verknüpfungen verknüpft ist.
declare @TeamProjectNodeSK int
select @TeamProjectNodeSK = ProjectNodeSK from GetProjectNodeInfoFromReportFolder(N'/TfsReports/VSTSDF/ProcessDev10')
-- This table value function returns the ProjectNodeSK: the Surrogate Key of a team project under a certain area path.
declare @TeamProjectCollectionGuid nvarchar(36)
select @TeamProjectCollectionGuid = pc.ProjectNodeGUID from DimTeamProject p inner join DimTeamProject pc on p.ParentNodeSK = pc.ProjectNodeSK where p.ProjectNodeSK = @TeamProjectNodeSK
-- This query finds the team project collection GUID by joining TeamProject.ParentNodeSK to TeamProject.ProjectNodeSK
select
d.DateSK
,wi.System_Title
,wi.System_Id
,coalesce(sum(wih_child.Microsoft_VSTS_Scheduling_CompletedWork), 0) as Total_CompletedWork, -- Finds the total number of hours of completed work.
coalesce(sum(wih_child.Microsoft_VSTS_Scheduling_OriginalEstimate), 0) as Total_OriginalEstimate --Finds the total number of hours of original estimate.
,coalesce(sum(wih_child.Microsoft_VSTS_Scheduling_RemainingWork), 0) as Total_RemainingWork--Finds the total number of hours of remaining work.
,coalesce(sum(wih_child.Microsoft_VSTS_Scheduling_StoryPoints), 0) as Total_StoryPoints --Finds the total story points.
from
DimDate d
cross apply
DimWorkItem wi
cross apply
GetWorkItemsTree(@TeamProjectCollectionGuid, wi.System_Id,
N'Child', d.DateSK) wit
left join
FactWorkItemHistory wih_child
on wih_child.WorkItemSK = wit.ChildWorkItemSK
where
d.DateSK >= N'2009-09-21 00:00:00.000'
and d.DateSK <= N'2009-9-30 00:00:00.000'
and wi.TeamProjectSK = @TeamProjectNodeSK
and wi.System_WorkItemType = N'User Story'
and wi.System_ChangedDate <= d.DateSK
and wi.System_RevisedDate > d.DateSK
and wi.System_State = N'Active'
and (wih_child.RecordCount != -1 or wih_child.RecordCount is null)
group by d.DateSK, wi.System_Id, wi.System_Title
Zusätzliche Ressourcen
Weitere Informationen finden Sie auf der folgenden Seite der Microsoft-Website: COALESCE (Transact-SQL)
Weitere Informationen zu Kompensationsdatensätzen finden Sie auf der folgenden Seite der Microsoft-Website: NEricson's Weblog.
Siehe auch
Konzepte
Excel-Bericht "Status des Testteams"
Tabellenreferenz für die relationale Warehouse-Datenbank für Visual Studio ALM