我正在尝试使用第一版api 来获取项目和 sprint 燃尽图。
我正在阅读此页面,但我只是感到困惑。
有没有人做过类似的事情,并且有任何关于如何点击 api 来获得我想要的东西的提示?
VersionOne api 不提供图像或图表特定数据。您可以使用查询语言和其余端点来生成燃尽所需的数据。您需要能够读取/解析数据并自己生成图表。
话虽如此,燃尽图比较了多少封闭的估计与多少开放的估计,并随着时间的推移绘制图表。所以你需要知道三个数据:开放估计、封闭估计和时间。您还希望将其限制为某个项目(以及它的子项目)。
这应该让您接近项目燃尽所需的数据:
http://<host>/VersionOne/rest-1.v1/Data/Timebox?where=Schedule.ScheduledScopes='Scope:1055'&sel=Name,BeginDate,EndDate,Workitems:Story[AssetState!='Closed'].Estimate.@Sum,Workitems:Story[AssetState='Closed'].Estimate.@Sum&sort=+EndDate
请务必将 Scope:1055 更改为您感兴趣的项目 oid。
这就是我到达那里的方式。首先我在想“你需要总结一堆故事估计”所以我想我会对故事进行历史查询:
http://<host>/VersionOne.Web/rest-1.v1/Hist/Story?where=Scope.ParentMeAndUp='Scope:1055'
但很快发现你不能在你的根上聚合。这意味着如果我想总结估计,我需要使用 Project (scope) 之类的东西来获取数据:
http://<host>/VersionOne.Web/rest-1.v1/Hist/Scope/1055?sel=Workitems:Story[AssetState!='Closed'].Estimate.@Sum,Workitems:Story[AssetState='Closed'].Estimate.@Sum,ChangeDate
这个查询的问题是给你在奇怪的时间间隔内封闭和开放的估计是什么样子的;即每当项目发生变化时。所以它不会成为一个非常漂亮的图表。
但正如您所知,VersionOne 有一个与项目相关联的迭代和计划的概念,而故事与迭代相关联。所以我用它作为查询和汇总故事估计的根,并将数据限制在使用该时间表的项目中。
生成的数据更规则(按迭代分组)并包含正确聚合的估计数据。
那么还剩下什么?您必须聚合估算数据的聚合以获得项目的总估算数。然后您需要生成一个图表(可能是条形图或线形图),其中每个数据点都位于迭代结束时。您将保持关闭估计的运行总计并将其添加到迭代的总计中以生成数据点。
You need to do multiple queries to produce a burndown. First find the date range for the burndown:
/Data/Timebox?sel=BeginDate,EndDate&where=Name='X'
Now for every day the date range, sum up the ToDo hours as of that point in history:
/Hist/Timebox?asof=2013-08-09T23:59:59&where=Name='X'&sel=Workitems[Team.Name='Y';AssetState!='Dead'].ToDo.@Sum
The API and documentation are excellent. If you are interested in seeing the code for some custom reports, check out https://github.com/timothypratley/vone/blob/master/src/vone/models/queries.clj (the code is in Clojure). There is a burndown, cumulative flow, and more :)