【问题标题】:Find WorkItems that were assigned to X in the last 30 days查找过去 30 天内分配给 X 的工作项
【发布时间】:2011-07-07 22:25:32
【问题描述】:

我正在尝试查找过去 30 天内分配给人员 X 的所有工作项。
我遇到的最大问题是“过去 30 天”部分。

我考虑过使用“ever”或“asof”关键字,但还没有找到好的答案.. 类似WHERE [Assigned To] = 'X' AND (([Assigned To] != 'X') asof '<30daysago>').
但这仍然不是万无一失的解决方案。

有更好的想法吗?

感谢和问候

西蒙

【问题讨论】:

    标签: tfs tfs-workitem wiql


    【解决方案1】:

    这似乎只使用 WIQL 是不可能的,但你可以接近。

    关键字@Today 将为您提供今天的日期,然后从中减去您的范围。应用到[Status]='AssignedTo'EVER 关键字以及与[StateChangeDate] 过去30 天的日期进行比较是您完成此操作所需要的。

    尽可能接近 WIQL 和现有字段
    这就是说,从所有修订(状态更改)返回记录,其中用户“X”曾经被分配给并且状态在过去 30 天内发生了变化。这基本上会让您对您的用户在上个月所做的工作有一个稍微模糊的了解。

    WHERE [Microsoft.VSTS.Common.StateChangeDate] >= @today - 30  
      AND  [System.AssignedTo] EVER 'Bennett Aaron' 
        ORDER BY [System.State]
    

    添加缺少的字段
    您可以添加一个名为 AssignedDate 的自定义字段,该字段是在您在工作项定义 XML 中创建的 New->AssignedTo 工作流转换期间捕获的。您可以使用 Visual Studio 的 Team Foundation Server Power Tools 扩展来完成此操作。这将为您提供所需的确切信息以及未来的其他报告选项。

    TFS API
    我无法帮助您解决这个问题,但我相信您可以使用 TFS API 进行查询。



    我在 ASOF 和 EVER 上遇到的几个快速陷阱可以节省您的时间:

    AsOf 本身不会帮助您,因为它不支持日期范围。它允许您像另一个日期一样查询。换句话说,如果您昨天忘记捕获查询的结果,您可以使用 AsOf 查询来获取昨天运行时会得到的结果。我的理解是你想查询一个基本的日期范围。

    EVER 可能无法按照您对日期的预期工作,因为我相信它使用了它测试的字段的确切值(将包括日期字段的时间戳部分)。只需确保 EVER 关键字用于状态字段而不是日期即可。

    【讨论】:

    • 非常感谢。我希望有可能以某种方式查询历史。一个额外的字段太多了,这对我的程序来说只是一个“很高兴拥有”的功能。也许可以使用这样的东西,但我想这完全是矫枉过正:) (([Assigned To] != 'X') asof '<30daysago>') AND (([Assigned To] != 'X') asof '<29daysago>') ...
    • 对不起,我还没来得及更新就去吃午饭了!刚刚添加了您的答案。我正在对可能对您有用的 EVER 子句进行一些测试。我没有太多要测试的数据,所以我很想知道我为您返回的标准是什么
    • 没问题!不幸的是,我得到了过去 30 天内更改并分配给我的所有工作项。所以我尝试了 2 个甚至无法解析的其他查询......我不能组合使用 NOT 和 EVER,不能将 ASOF 用于单个语句,也不能在 where 子句中使用 [System.ChangedDate] 第一个 WHERE ([Assigned To] = 'X') AND [System.ChangedDate] >= @Today-2 AND NOT ([Assigned To] EVER 'X')" 和第二个WHERE ([Assigned To] = 'X') AND [System.ChangedDate] >= @Today-2 AND ([Assigned To] != 'X' ASOF [System.ChangedDate]) WIQL 似乎无法做到这一点
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-08
    • 1970-01-01
    相关资源
    最近更新 更多