0

带有发布过滤器的 Rally LookBack API 不起作用

您好朋友,我需要在“ https://github.com/RallyCommunity/DefectTrendApp/blob/master/deploy/App.html ”的缺陷趋势报告中添加“发布过滤器”

但是由于一些奇怪的原因。它不会获取任何结果。我在文档中也找不到与过滤器相关的任何版本。

如果有人会告诉我是否不支持此功能或我遗漏了什么,那就太好了。

我尝试添加过滤器,例如

releaseFilters = Ext.create('Rally.data.lookback.QueryFilter', {
                        property: 'Defect.Release.Name',
                          operator: '=',
                        value: '4.11'
                    }); 

也尝试使用 ObjectID。然而没有成功。

请帮忙。

4

1 回答 1

1

这应该有效:

 releaseFilter = Ext.create('Rally.data.lookback.QueryFilter', {
        property: 'Release',
        operator: '=',
        value: 16995672374
      });
      return projectFilter.and(typeFilter.and(stateFilters)).and(releaseFilter);

请确保不要在 ObjectID 周围使用引号。此外,Release.Name 将不起作用,因为 LBAPI 不访问 Release 或 Iteration Name。

这是一个完整的 js 文件,我在其中使用$in运算符过滤来自多个版本的项目:

Ext.define('CustomApp', {
    extend: 'Rally.app.App',
    componentCls: 'app',
    launch: function() {
    var releaseFilter = Ext.create('Rally.data.lookback.QueryFilter', {
        property: 'Release',
        operator: '$in',
        value: [16995672374,15679194578,14299783630]
      });
        Ext.create('Rally.data.lookback.SnapshotStore', {
                fetch    : ['_UnformattedID', 'Name','Release'],
        filters  : [releaseFilter],
                listeners: {
                    load: this._onDataLoaded,
                    scope: this
                }
                }).load({
                    params : {
                        compress : true,
                        removeUnauthorizedSnapshots : true
                    }
                });          
    },
     _onDataLoaded: function(store, data){
                var workItems = store.getRange();
                _.each(workItems, function(item){                                  
                    console.log(item.get('_UnformattedID') + ' ' + item.get('Name') + ' ' + item.get('Release'))
                });
     }
});
于 2014-02-13T15:35:04.270 回答