Доступ к каждому элементу ошибки после фильтрации и создания нового списка в QC с использованием com4j

Я могу подключиться к hpqc с помощью com4j, а также могу отфильтровать дефект. Теперь мне нужно получить доступ к каждому элементу списка ошибок.

Я могу получить доступ к одному дефекту, например:

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).

Каким должен быть правильный код для доступа к каждому элементу списка ошибок и присвоения его ошибке.


person pvash    schedule 05.08.2013    source источник


Ответы (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());
}

Это дало идентификаторы ошибок всех дефектов в списке ошибок!

person pvash    schedule 06.08.2013