在拉力赛API中获取投资组合项目的所有用户故事的最简单方法是什么?

时间:2012-03-07 23:22:31

标签: rally

在拉力赛API中获取投资组合项目的所有用户故事的最简单方法是什么?现在,API只返回直接子节点。
与上一个问题类似,是否有任何方法可以过滤使用API​​,以便只获取相关的用户故事?

2 个答案:

答案 0 :(得分:1)

目前出于性能原因,WSAPI的结果仅限于层次结构的一个级别。从第一个查询的结果中获得直接子项后,您将不得不遍历每个子项并为其子项发出新查询(等等,直到您只有叶子项为止)。

你是在应用程序中这样做的吗?管理所有异步回调并将数据正确地重新组合在一起可能有点挑战,但RallyDataSource至少应该使查询部分更简单......

答案 1 :(得分:0)

我可以使用以下方法获取投资组合项目的嵌套US:1.43 API版本

                    queryFeat = "((PortfolioItemType.Ordinal = 0) and " + "(Release.Name != " + "\"" + selectedRelease + "\"))";
                console.log("queryfeat",queryFeat);



                queryArrayFeat[0] = {
                        key: CARD_TYPE,
                        type: 'PortfolioItem',
                        query: queryFeat,
                        fetch: 'Rank,FormattedID,Name,Release,Parent,GroomingState,LeafStoryCount,PercentDoneByStoryCount,LeafStoryPlanEstimateTotal,PercentDoneByStoryPlanEstimate,Project,Tags,ObjectID,Description,UserName,Children,Ready,Architect,SolutionTestArchitect,UserStories,Pipeline,PlanEstimate,SizeConfidence,Rank,Ready,Owner,Blocked,blockedReason,Release,Iteration,ScheduleState,ExecutionOrder,DoRCriteria,AffectsDocumentationTeam,HCSRoadmapItem,TopDownGroomAllUSCreated,State',
                        order: 'Rank'
                };
                queryArrayFeat[1] = {
                        key: 'users',
                        type: 'users',
                        fetch: 'UserName,ObjectID,DisplayName'
                };
                rallyDataSource.setApiVersion("1.43");
                rallyDataSource.findAll(queryArrayFeat, displayCards);
                console.log("Query Results:",queryArrayFeat);