Lookback API:特定状态下的缺陷有多长?

时间:2012-10-24 23:52:09

标签: rally lookbackapi

我们的缺陷称为“需要更多信息”。我想随着时间的推移创建一个图表,说明在任何特定时间段内该状态有多少缺陷。

我想我可以使用Lookback API通过以下查询获取信息:

my $find = {
    State                   => 'Need More Information',
    '_PreviousValues.State' =>  {'$ne' => 'Need More Information'},
    _TypeHierarchy          => -51006, # defect

    _ValidFrom  => {
        '$gte'  => '2012-09-01TZ',
        '$lt'   => '2012-10-23TZ',
    }

我认为这会让我返回所有缺陷快照的列表,其中缺陷正在转换为“需要更多信息”状态,但它没有(似乎列出了“需要更多信息”状态中的所有内容。< / p>

从技术上讲,我需要的是一个查询,其中列出了转移到“需要更多信息”状态的任何缺陷的快照,但由于这个更简单的一个似乎没有像我预期的那样工作,我想我会先问为什么上面的查询没有按我预期的方式工作。

返回的标题中的“生成的查询”是:

    'fields' => 1,
    'skip' => 0,
    'limit' => 100,
    'find' => {
        '_TypeHierarchy' => -51006,
        '_ValidFrom' => {
            '$gte' => '2012-09-01T00:00:00.000Z',
            '$lt' => '2012-10-23T00:00:00.000Z'
        },
        '_PreviousValues.State' => {
            '$in' => [
                undef,
                5792599066,
                5792599067,
                5792599065,
                5792599070,
                5792599071,
                5792599068,
                5792599073,
                5792599072,
                5792599075,
                5792599077,
                5792599076,
                5792599078,
                3631859989,
                3631859988,
                3631859987,
                3631859986
            ]
        },
        'State' => {
            '$in' => [
                4384150044
            ]
        }
    }
};

1 个答案:

答案 0 :(得分:3)

我尝试利用$nin条款并取得了成功。您可以尝试将查询调整为类似以下内容:

find: {
        _Type: 'Defect',
        State: 'Need More Information',
        '_PreviousValues.State': {
            $in: [
                'Submitted', 'Open', 'Fixed', 'Closed'
            ]
        },
    etc...
    }