如果我调出某个项目的任务,就会看到一个名为“原始估计”的字段。我唯一能找到原始估计的地方是 Tfs_Warehouse 数据库的列FactWorkItemHistory
下表格中Microsoft_VSTS_Scheduling_OriginalEstimate
。
有人能解释一下这个值是如何工作的吗?我问这个问题的原因是它在 FactWorkItemHistory 表中对于同一个任务会发生变化。有一些正条目和负条目。如果我把Microsoft_VSTS_Scheduling_OriginalEstimate
Task 和 ProjectNodeSK 的所有值加起来,我就会得出 TFS 任务 UI 中显示的数量。我只是想知道为什么值会随着条目而变化。事实上,我也很好奇为什么同一个任务有多个 WorkItem 条目。我想(错误地) 就 TFS UI 中的任务而言,WorkItem 表将是一对一的。
答案1
仓库存储每个工作项修订,以便您查询特定时间点的原始估算值。这就是为什么同一个工作项在多个表中多次列出,包括您正在使用的表。
仓库还存储修订之间的差异,以便您可以用它们进行有趣的统计。每个工作项应在表中显示一次DimWorkItem
。还有一个CurrentWorkItem
用于最新快照的表。每个*Fact
表都存储时间点值。您还会发现几个有用的视图,包括*WorkItemsAre
和*WorkItemsWere
,第一个包含最新的数据快照,很可能是您想要的。第二个是时间点事实表的更稳定视图。
关于仓库模式的更多详细信息请参见此处: