1

我需要从 TFS 数据库中提取一些数据,但找不到我需要的表。我们使用 TFS 来衡量生产力(项目、用户故事、任务等),我必须使用直接连接到 TFS 数据库的 Excel 做一个生产力指标,指示用户和任务的工作时间。我有会员表,但没有与工作项/任务和工作时间的关系

SELECT * FROM [ADObjects] where ObjectCategory = 2 order by DisplayName

TFS 版本 15.117.27024.0

编辑

好的,我找到了使用 sql 查询访问所需数据的方法:

 SELECT o.SamAccountName as Usuario
        ,MAX(Microsoft_VSTS_Common_ClosedDate) AS Fecha
        ,[WorkItem]
        ,SUM([Microsoft_VSTS_Scheduling_CompletedWork]) as Horas
        ,MAX([System_Rev]) AS UltimoMovimiento
        ,System_Id as WorkItemId
  FROM [tfs_warehouse].[dbo].[WorkItemHistoryView] wi
  join [Tfs_OurDomain].dbo.ADObjects o on o.DisplayName = wi.System_AssignedTo and o.DomainName = 'DomainName'
  where System_State = 'Closed' and System_WorkItemType in ('Bug','Task') and System_AssignedTo is not null
  and o.SamAccountName = 'MemberName' 
  and Microsoft_VSTS_Common_ClosedDate between '20180501' and '20181101'
  group by [WorkItem],o.SamAccountName,System_Id
  order by o.SamAccountName asc
4

1 回答 1

0

不支持直接查询 TFS_*Collection 数据库和 TFS_Configuration 数据库。架构甚至可以在很小的更新之间发生变化,并且在过去的版本中定期发生重大变化。针对此数据库运行查询可能会对 TFS 安装的性能产生负面影响。

为了支持报告,TFS 附带了报告功能。TFS Warehouse(如果在您的安装中启用)以一种易于查询的格式包含您要查找的大部分数据。这些仓库表包含一组更有限的数据,并且架构在主要版本中保持相同,即使在不同的主要版本之间也没有太大变化。自推出以来,该过程没有改变,但当 Azure DevOps 分析服务可用于本地 TFS 安装时,该功能即将结束。这将通过 ODATA 提要公开数据。

目前预测 TFS 2019的分析服务:

分析 - 适用于 Azure DevOps 服务器报告 2019

如果 Warehouse Cube 不适用于您的 TFS 安装,您可以使用 TFS REST API 来查询您需要的所有数据。以下 API 将使您能够访问所需的数据:

Excel 可以通过 .NET 进行扩展,并使用该功能查询 REST API,然后您可以使用 Excel 中的 .NET 可扩展性使用来自这些 REST API 的数据填充 excel 中的列表,并从这些列表中驱动您的报告。

于 2018-09-28T15:38:31.543 回答