0

我能够使用 com4j 连接到 hpqc 并且还能够过滤缺陷。现在我需要访问 buglist 的每个项目。

我可以访问单个缺陷,例如:

IBug bug = bugfactory.item(55203).queryInterface(IBug.class);
System.out.println(bug.field("BG_DEV_COMMENTS"));

但我希望能够使用列表访问所有缺陷。所以这就是我所做的:

IBugFactory bugfactory = td.bugFactory().queryInterface(IBugFactory.class);
ITDFilter fil = bugfactory.filter().queryInterface(ITDFilter.class);
fil.filter("BG_USER_13","Not Production");
IList buglist = fil.newList();

在此之后,我想访问每个列表项,所以我做了

for(int i=1;i<=buglist.count();i++{
 IBug bug1 = buglist.item(i)  // this statement is not working --
}

我也不能使用 IBug bug1 = buglist.item(i).queryinterface(IBug.class) 语句。

访问错误列表的每个项目并将其分配给错误的正确代码应该是什么。

4

1 回答 1

1

解决了!解决方案可能对某人有帮助!这就是我所做的!

IBugFactory bugfactory = td.bugFactory().queryInterface(IBugFactory.class);
ITDFilter fil = bugfactory.filter().queryInterface(ITDFilter.class);
fil.filter("BG_USER_13","Not Production"); //any filter value
IList buglist = fil.newList();      
Iterator itr = buglist.iterator();
while(itr.hasNext()){
   Com4jObject comobj = (Com4jObject)itr.next();
   bug = comobj.queryInterface(IBug.class);
       System.out.println(bug.field("BG_BUG_ID").toString());
}

这给出了 bug 列表中所有缺陷的 BugID!

于 2013-08-06T13:49:37.063 回答