Поделиться через


таблицы журналов связей рабочих элементов

Вы можете запрашивать данные о связях между ошибками, задачами и другими типами рабочих элементов с использованием таблицы FactWorkItemLinkHistory и соответствующих таблиц измерений. Чтобы включить данные о связанных рабочих элементах, подключите SourceWorkItemID и TargetWorkItemID к Dim.System_ID.

Дополнительные сведения о мерах и измерениях, которые сопоставлены с этими таблицами в кубе служб аналитики SQL Server, см. в разделе Анализ и включение в отчеты данных рабочих элементов и тестовых случаев с использованием перспективы "Рабочий элемент".

Таблица фактов для связей между рабочими элементами

Таблица FactWorkItemLinkHistory связана со следующими таблицами измерений:

  • DimTeamProject.

  • DimPerson;

  • DimWorkItem

Примечание

Данная таблица содержит удаленные связи.Если связь не была удалена, ее параметр RemovedDate имеет значение "1 января 9999".В случае удаления связи параметр даты удаления получает значение даты и времени, когда связь была удалена.Вы можете использовать RemovedDate > GetDate(), чтобы фильтровать удаленные связи.

Для поиска следующих типов сведений можно использовать следующий шаблонный запрос.

  • Общее число часов для завершения работы.

  • Исходная оценка объема работ.

  • Оставшаяся работа.

  • Общее число баллов для каждого пользовательского описания функциональности командного проекта по заданному пути к области.

Сведения о функции Coalesce, используемой в том же шаблонном запросе, см. на странице COALESCE (Transact-SQL) веб-сайта корпорации Майкрософт.

Примечание

В запросе предполагается, что пользовательское описание функциональности связано с другими рабочими элементами посредством дочерних связей.

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 
     wi.System_Title
    ,wi.System_Id
    ,coalesce(sum(cwi_child.Microsoft_VSTS_Scheduling_CompletedWork), 0) as Total_CompletedWork -- Finds the total number of hours of completed work.
   ,coalesce(sum(cwi_child.Microsoft_VSTS_Scheduling_OriginalEstimate), 0) as Total_OriginalEstimate --Finds the total number of hours of original estimate.
    ,coalesce(sum(cwi_child.Microsoft_VSTS_Scheduling_RemainingWork), 0) as Total_RemainingWork --Finds the total number of hours of remaining work.
    ,coalesce(sum(cwi_child.Microsoft_VSTS_Scheduling_StoryPoints), 0) as Total_StoryPoints --Finds the total story points.
from
    DimWorkItem wi
cross apply
    GetWorkItemsTree(@TeamProjectCollectionGuid, wi.System_Id, N'Child', DEFAULT) wit 
left join        
    FactCurrentWorkItem cwi_child
        on cwi_child.WorkItemSK = wit.ChildWorkItemSK
where
    wi.TeamProjectSK = @TeamProjectNodeSK 
    and wi.System_WorkItemType = N'User Story'
    and wi.System_RevisedDate = CONVERT(datetime, '9999', 126)--The revised date of the work item is equal to today.
    and wi.System_State = N'Active'
group by wi.System_Id, wi.System_Title
order by wi.System_Id

См. также

Основные понятия

Анализ и включение в отчеты данных рабочих элементов и тестовых случаев с использованием перспективы "Рабочий элемент"

Ссылка на таблицу для базы данных реляционного хранилища для Visual Studio ALM

Другие ресурсы

Определение пользовательского типа связи