This topic applies only to the IBM Business Automation Workflow Advanced
configuration.

Analyzing the results of a process

Draft comment:
This topic only applies to BAW, and is located in the BAW repository. Last updated on 2025-03-13 12:15
A process can expose web services operations that are modeled as Web Services Description Language (WSDL) one-way or request-response operations. The results of long-running processes with one-way interfaces cannot be retrieved using the getOutputMessage method, because the process has no output. However, you can query the contents of variables, instead.

About this task

The results of the process are stored in the database only if the process template from which the process instance was derived does not specify automatic deletion of the derived process instances.

Procedure

Analyze the results of the process, for example, check the order number.
FilterOptions fo = new FilterOptions();
fo.setSelectedAttributes("PIID");
fo.setQueryCondition("NAME='CustomerOrder' AND STATE=STATE_FINISHED");
EntityResultSet ers = process.queryEntities("PROCESS_INSTANCE", fo, null, null);
if (ers.getEntities().size() > 0)
{
  Entity processEntity = (Entity) ers.getEntities().get(0);
  PIID piid = (PIID) processEntity.getAttributeValue("PIID");
  ClientObjectWrapper output = process.getOutputMessage(piid);
  DataObject myOutput = null;
  if ( output.getObject() != null && output.getObject() instanceof DataObject )
  {
     myOutput = (DataObject)output.getObject();
     int order = myOutput.getInt("OrderNo");
  }
}