Un partecipante o solo human task viene eseguito in modo asincrono. Se un gestore di risposte viene specificato all'avvio dell'attività, il messaggio di output viene restituito automaticamente una volta completata l'attività. Se non è specificato alcun gestore risposte, il messaggio deve essere recuperato esplicitamente.
I risultati dell'attività vengono memorizzati nel database solo se la maschera dell'attività, da cui deriva l'istanza dell'attività, non specifica l'eliminazione automatica delle istanze di attività derivate.
L'esempio illustra il modo in cui verificare il numero d'ordine di un'attività completata correttamente.
QueryResultSet result = task.query("DISTINCT TASK.TKIID", "TASK.NAME = 'CustomerOrder' AND TASK.STATE = TASK.STATE.STATE_FINISHED", (String)null, (Integer)null, (TimeZone)null); if (result.size() > 0) { result.first(); TKIID tkiid = (TKIID) result.getOID(1); ClientObjectWrapper output = task.getOutputMessage(tkiid); DataObject myOutput = null; if ( output.getObject() != null && output.getObject() instanceof DataObject) { myOutput = (DataObject)output.getObject(); int order = myOutput.getInt("OrderNo"); } }
(c) Copyright IBM Corporation 2005, 2006.
This information center is powered by Eclipse technology (http://www.eclipse.org)