我想重新创建 Rally 的迭代摘要应用程序。因此,我希望能够在一个 UI 组件中显示有关缺陷、迭代等的信息。目前,我有两张表(一张显示 findall 的缺陷结果,一张显示 findall 迭代的结果)。有什么方法可以让一个 findall 获得这两个结果?或者是否有另一种方法可以访问一个 Rally UI 组件中的多个 findall 调用的结果(这意味着一个表将能够显示 findall(s) 的迭代结果和相关缺陷)?谢谢
问问题
338 次
1 回答
1
这是一个 AppSDK 1.33 应用程序的完整示例,该应用程序进行两个查询,并根据迭代下拉列表中的选择构建一个包含两个不同工件、缺陷和故事的表:
迭代示例的用户故事
<script type="text/javascript" src="https://rally1.rallydev.com/apps/1.33/sdk.js"></script>
<script type="text/javascript">
rallyDataSource = null;
iterDropdown = null;
function showTable(results) {
for (var i=0; i < results.stories.length; i++) {
results.stories[i].Project = results.stories[i].Project.Name
}
var tableConfig = {
columnKeys : ['FormattedID', 'Name', 'ScheduleState', 'Project' ],
columnWidths : ['80px','80px', '80px','80px']
};
var table = new rally.sdk.ui.Table(tableConfig);
table.addRows(results.stories);
table.addRows(results.defects);
table.display(document.getElementById('myTable'));
}
function onIterationSelected() {
document.getElementById('myTable').innerHTML = "";
var queryConfig = [];
queryConfig[0] = {
type : 'hierarchicalrequirement',
key : 'stories',
fetch: 'FormattedID,Name,Project,ScheduleState',
query: '(Iteration.Name = "' + iterDropdown.getSelectedName() + '")',
order: 'Rank'
};
queryConfig[1] = {
type : 'defect',
key : 'defects',
fetch: 'FormattedID,Name,Project,ScheduleState',
query: '(Iteration.Name = "' + iterDropdown.getSelectedName() + '")',
order: 'Rank'
};
rallyDataSource.findAll(queryConfig, showTable);
}
function onLoad() {
//USE VALID OIDs
rallyDataSource = new rally.sdk.data.RallyDataSource('111111',
'22222',
'false',
'true');
var iterConfig = {label : ""};
iterDropdown = new rally.sdk.ui.IterationDropdown(iterConfig, rallyDataSource);
iterDropdown.display(document.getElementById("iterationDiv"), onIterationSelected);
}
rally.addOnLoad(onLoad);
</script>
选择迭代
AppSDK 1.x 文档中有另一个占位符查询示例。很难想象一个包含所有缺陷和所有迭代的表 - 这两个对象差异太大,无法有意义地共享一个表。您提到的迭代摘要应用程序没有单独的表格 - 迭代列在单独的下拉字段中。但它有意义地结合了来自缺陷和测试用例的数据——类似于上面显示缺陷和故事的应用程序。
于 2013-08-12T19:57:23.073 回答