Hier ein Beispiel um alle Tasks in einem bestimmten Status zu finden:
import ch.ivyteam.ivy.workflow.TaskState; import ch.ivyteam.ivy.workflow.ITask; import ch.ivyteam.ivy.workflow.query.TaskQuery; TaskQuery query = ivy.wf.getTaskQueryExecutor().createTaskQuery() .where().state().isEqual(TaskState.FAILED) .orderBy().name(); List<ITask> results = ivy.wf.getTaskQueryExecutor().getResults(query); for(ITask task : results) { // Do something }
Zum Vergleich das "findTasks"-API:
import ch.ivyteam.ivy.workflow.PropertyOrder; import ch.ivyteam.ivy.workflow.IPropertyFilter; import ch.ivyteam.ivy.workflow.TaskState; import ch.ivyteam.ivy.workflow.ITask; import ch.ivyteam.ivy.persistence.IQueryResult; IPropertyFilter filter = ivy.wf.createTaskPropertyFilter( ch.ivyteam.ivy.workflow.TaskProperty.STATE, ch.ivyteam.logicalexpression.RelationalOperator.EQUAL, TaskState.FAILED); List<PropertyOrder> order; order.add(new PropertyOrder(ch.ivyteam.ivy.workflow.TaskProperty.NAME)); IQueryResult result = ivy.wf.findTasks(filter,order,0,-1,true); for(ITask task : result.getResultList()) { // Do something }
https://sourceforge.net/p/xivy/wiki/IvyCookbook/
http://www.ivyteam.ch/downloads/XIVY/4.3.0/doc/PublicAPI/ch/ivyteam/ivy/persistence/query/package-summary.html
Keine Kommentare:
Kommentar veröffentlichen