Lookback API:查找已知父级下的所有叶节点故事

时间:2012-05-23 17:49:36

标签: rally lookbackapi

在Rally Webservices API中,如果我想遍历Story层次结构,则需要对父故事进行查询,然后从返回的Stories中获取Children集合,然后以递归方式查询每个Child。该过程到达Leaf节点结果。

问题 - 通过在Lookback API中使用单个查询,是否有一种方便的方法可以在不进行迭代的情况下执行此操作?

1 个答案:

答案 0 :(得分:2)

这是Lookback API的最佳功能之一。

假设你有这种等级:

  • 故事444
    • 故事555
      • 故事666
        • 缺陷777(通过需求字段)
          • 任务12
        • 任务13
    • 故事888

任务12的文档如下所示:

{
  ObjectID: 12,
  _Type: "Task",
  WorkProduct: 777,
  _ItemHierarchy: [444, 555, 666, 777, 12],
  ...
}

因此,当您对具有数组值的字段(如_ItemHierarchy)提交查询时,它将匹配数组的任何成员。

要获得从444下降的所有内容,您的find子句将包含_ItemHierarchy: 444。看看它如何与任务12的_ItemHierarchy值匹配?

要获得从333下降的所有内容,您的find子句将包含_ItemHierarchy: 333。这也与任务12相匹配。

要获得从444(所有故事)下降的故事,您的查找条款将包括:

  _ItemHierarchy: 444,
  _Type: "HierarchicalRequirement"

要获得 leaf 故事,只需添加条款Children: null

_ItemHierarchy也一直到PortfolioItems。

_ItemHierarchy被编入索引,因此这些查询应该非常有效。