【问题标题】:Hierarchical List of Work Items from TFS_Warehouse database来自 TFS_Warehouse 数据库的工作项分层列表
【发布时间】:2013-05-21 15:02:01
【问题描述】:

我正在尝试从 TFS_Warehouse 检索所有“产品待办事项”工作项的分层列表。今天是我在 TFS 上工作的第一天,所以我并不真正了解架构/或要查找的表。

我找到了两个表 DimWorkItem 和 FactWorkItemLinkHistory。我尝试从中提取一些信息,但没有成功。

我要做的是生成一个发布详细信息列表,该列表将显示具有新、已批准等状态的工作项...我需要编写一个 TSQL 语句来获取此数据。

感谢任何帮助。

谢谢, 维沙尔

【问题讨论】:

    标签: sql tsql tfs


    【解决方案1】:

    我假设您已经弄清楚了这一点,但如果其他人经过您可以使用 GetWorkItemsTree UDF 和 CROSS APPLY 运算符,将根节点 System_Id 和关系类型传递给它用于遍历树,如:

    SELECT 
       ...
    FROM
        DimWorkItem wi
    CROSS APPLY
        GetWorkItemsTree(@TeamProjectCollectionGuid, wi.System_Id, N'Child', DEFAULT) wit
    WHERE
        wi.System_Id = @RootId
        AND wi.System_RevisedDate = CONVERT(datetime, '9999', 126) -- latest revision
    

    但是,这个 UDF 只会遍历一个关系类型,我记得遍历深度是有限制的。如果您需要更灵活的东西,您可能必须自己编写;我使用包含 [FactWorkItemLinkHistory] 表上的递归 CTE 的 UDF 这样做,该表还提供了多种关系类型的遍历。

    【讨论】:

    • 感谢您的回复。但是,我是使用 OLTP 数据库中的 WorkItemsAre 和 LinksAre 表完成的。
    猜你喜欢
    • 2019-05-02
    • 2011-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-06
    • 2023-03-26
    • 1970-01-01
    相关资源
    最近更新 更多