我有用户故事,并希望跟踪自定义字段C_L3KanbanStage中的更改,以查找日期之间的故事。
这可能吗?我面临的问题是,我没有得到预期的输出。
根据我的理解,这个字段C_L3KanbanStage,作为一个下拉字段,我应该能够使用比较运算符,但不知何故它不起作用
{
"_ProjectHierarchy": XXXXX,
"ObjectID": XXXX,
"c_L3KanbanStage": {
"$lt": "Closed"
},
"_ValidFrom": {
"$gte": "2014-03-03",
"$lt": "2014-04-15"
}
}
它应该给我所有较小的值然后"已关闭",但它只给我一个值。
但是,如果我尝试:
{
"_ProjectHierarchy": XXXX,
"ObjectID": XXXX,
"c_L3KanbanStage": "In Progress",
"_ValidFrom": {
"$gte": "2014-03-03",
"$lt": "2014-04-15"
}
}
然后它给了我两个快照。我不确定,如果我在尝试错误或遗漏某些东西。有人可以帮我这个。
基本上我想在两个日期内实现类似的目标 我想获得c_L3KanbanStage值的每次转换
{
"_ProjectHierarchy": XXXXX,
"ObjectID": XXXXX,
"_PreviousValues.c_L3KanbanStage": {"$in": ["Advance Investigation"]},
"c_L3KanbanStage": {"$in": ["Closed","Verified"]}
}
任何人都可以帮助我。
答案 0 :(得分:1)
您的方法应该有效,但是您可能无法获得预期的查询结果。
如果按ObjectID进行查询,则只需在工件从某个项目移动到另一个项目时指定_ProjectHierarchy即可。尝试删除它。
{
"ObjectID": XXXXX,
"_PreviousValues.c_L3KanbanStage": { "$in": ["Advance Investigation"] },
"c_L3KanbanStage": { "$in": ["Closed","Verified"] }
}
您还可以将$ gt和$ lt用于州字段。例如,
{
"ObjectID": XXXXX,
"c_L3KanbanStage": { "$gte": "Closed" },
"_PreviousValues.c_L3KanbanStage": { "$lt": "Closed" }
}
在未指定日期范围的情况下看到预期的快照后,请尝试将该部分添加到查询中。
{
"ObjectID": XXXXX,
"c_L3KanbanStage": { "$gte": "Closed" },
"_PreviousValues.c_L3KanbanStage": { "$lt": "Closed" }
"_ValidFrom": {
"$gte": "2014-03-03",
"$lt": "2014-04-15"
}
}
如果有帮助,Lookback API文档有examples of state transition queries。