这应该有效:
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'))
});
}
});