1

我有一个对 Rally Analytics 的查询,它返回的数据集大于页面大小。所以我想做另一个查询来返回剩余数据集。我尝试设置一个 startindex 值,但这不起作用,StartIndex 保持在 0。

                    this.query = {
                        find:Ext.encode(requestedQuery.find),
                        StartIndex:20000,
                        pagesize:20000 //MAX_PAGESIZE
                    };

                _queryAnalyticsApi:function () {
                    Ext.Ajax.request({
                        url:"https://rally1.rallydev.com/analytics/1.27/" + this.workspace + "/artifact/snapshot/query.js?" + Ext.Object.toQueryString(this.query) +
                            "&fields=" + JSON.stringify(this.requestedFields) + "&sort={_ValidFrom:1}",
                        method:"GET",
                        //need to change this to a POST
                        success:function (response) {
                            this._afterQueryReturned(JSON.parse(response.responseText));
                        },
                        scope:this
                    });
                },
4

2 回答 2

1

这行得通,因为结果集的属性称为 StartIndex,所以令人困惑。如果可以先在服务器上定义和处理粒度(即天、周),那就太好了,这样它就不必返回这么大的数据集了。

于 2012-08-22T16:10:07.280 回答
0

您要使用的参数称为 start。此外,在后续页面上,使用从第一页数据返回的 ETLDate 包含一个过滤器也很重要,这样您的结果在时间上是一致的。我们在 AppSDK 2.0 中创建了一个 SnapshotStore,可以为您处理所有这些复杂性。快来寻找吧!

于 2012-08-22T15:52:50.250 回答