如何从 RTC workItem 读取历史记录。我想在更改表单历史记录之前和之后检查一些属性更改及其值。通过爵士 API。怎么可能?请帮忙 。
问问题
2059 次
2 回答
1
关于属性,您可以在“使用工作项属性”中查看更多信息
如果您将属性 ID 作为字符串提供,则可以使用此代码获取属性。
IWorkItemClient workItemClient = (IWorkItemClient) fTeamRepository.getClientLibrary(IWorkItemClient.class);
IAttribute someAttribute= workItemClient.findAttribute(fProjectArea, "some_attribute_ID", monitor);
对于历史,这个线程可以提供帮助
您可以使用它
IItemManager.fetchCompleteState()
来获取处于其历史状态的完整项目。
如果您想获取完整的历史记录,您还可以使用一次获取所有状态句柄,IItemManager.fetchAllStateHandles()
而不是使用IAuditable.getPredecessorState()
.
于 2014-08-14T05:49:51.720 回答
0
使用以下代码段:
IWorkItem workItem = workItemClient.findWorkItemById(id, IWorkItem.FULL_PROFILE, monitor);
IItemManager itm = teamRepository.itemManager();
List history = itm.fetchAllStateHandles((IAuditableHandle) workItem.getStateHandle(), monitor);
System.out.println("Record history details:-");
for(int i = history.size() -1; i >= 0; i--){
IAuditableHandle audit = (IAuditableHandle) history.get(i);
IWorkItem workItemPrevious = (IWorkItem) teamRepository.itemManager().fetchCompleteState(audit,null);
//Operations to be carried on workItemPrevious
}
于 2015-08-20T04:28:00.157 回答