OKMWorkflow
En todos los métodos verá un parámetro llamado “token”. Como las tareas de Cron se ejecutan en segundo plano sin autenticación, los métodos usados en ese escenario pueden usar el parámetro token. En el contexto de ejecución de la aplicación por defecto debe usar el valor “null”, que indica que la aplicación debe usar la “sesión de usuario”.
Métodos
Sección titulada «Métodos»registerProcessDefinition
Sección titulada «registerProcessDefinition»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| registerProcessDefinition(String token, InputStream is) | void | Registra un nuevo workflow. |
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import com.openkm.util.ContextWrapper;import org.apache.commons.io.IOUtils;
import com.openkm.api.OKMWorkflow;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class); InputStream is = new FileInputStream("/opt/files/Purchase.par"); okmWorkflow.registerProcessDefinition(null, is); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}deleteProcessDefinition
Sección titulada «deleteProcessDefinition»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| deleteProcessDefinition(String token, long processDefinitionId) | void | Elimina un workflow. |
- El parámetro processDefinitionId es un ID de definición de proceso de workflow válido**.**
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class); long pdId = 5; // Valid workflow process definition okmWorkflow.deleteProcessDefinition(null, pdId); } catch (Exception e) { e.printStackTrace(); } }}getProcessDefinitionImage
Sección titulada «getProcessDefinitionImage»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getProcessDefinitionImage(String token, long processDefinitionId, String node) | byte[] | Devuelve una imagen de una definición de proceso de workflow. |
- El parámetro processDefinitionId es un ID de definición de proceso de workflow válido.
- El parámetro node es un nodo que tiene un workflow en ejecución.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.util.ContextWrapper;import org.apache.commons.io.IOUtils;
import java.io.ByteArrayInputStream;import java.io.File;import java.io.FileOutputStream;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long pdId = 5; // Valid workflow process definition byte[] img = okmWorkflow.getProcessDefinitionImage(null, pdId, "/okm:root/sample.pdf"); ByteArrayInputStream in = new ByteArrayInputStream(img); FileOutputStream out = new FileOutputStream(new File("/home/test/img.jpg")); IOUtils.copy(in, out); IOUtils.closeQuietly(in); IOUtils.closeQuietly(out); } catch (Exception e) { e.printStackTrace(); } }}getProcessDefinitionForms
Sección titulada «getProcessDefinitionForms»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getProcessDefinitionForms(String token, long processDefinitionId) | Map<String, List |
Devuelve un mapa con todas las definiciones de formulario del workflow. |
- El parámetro processDefinitionId es un ID de definición de proceso de workflow válido.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.form.FormElement;import com.openkm.util.ContextWrapper;
import java.util.List;import java.util.Map;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long pdId = 5; // Valid workflow process definition Map<String, List<FormElement>> map = okmWorkflow.getProcessDefinitionForms(null, pdId); for (String key : map.keySet()) { System.out.println("group:" + key); for (FormElement fe : map.get(key)) { System.out.println(fe); } } } catch (Exception e) { e.printStackTrace(); } }}getProcessDefinition
Sección titulada «getProcessDefinition»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getProcessDefinition(String token, long processDefinitionId) | ProcessDefinition | Devuelve una definición de proceso de workflow. |
- El parámetro processDefinitionId es un ID de definición de proceso de workflow válido.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.ProcessDefinition;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long pdId = 5; // Valid workflow process definition ProcessDefinition pd = okmWorkflow.getProcessDefinition(null, pdId); System.out.println(pd); } catch (Exception e) { e.printStackTrace(); } }}runProcessDefinition
Sección titulada «runProcessDefinition»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| runProcessDefinition(String token, long processDefinitionId, String uuid, List |
ProcessInstance | Ejecuta un workflow sobre un nodo. |
- El parámetro processDefinitionId es una definición de proceso de workflow válida.
- El parámetro uuid puede ser el UUID de cualquier documento, correo, carpeta o expediente.
- El parámetro values son los valores de los elementos de formulario necesarios para iniciar el workflow (no todos los workflows necesitan valores de formulario para iniciarse).
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.form.FormElement;import com.openkm.bean.form.Input;import com.openkm.bean.form.TextArea;import com.openkm.util.ContextWrapper;
import java.util.ArrayList;import java.util.List;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long pdId = 8041; // Some valid workflow process definition id List<FormElement> feList = new ArrayList<>(); // Case as part of starting workflow are required form parameter Input price = new Input(); price.setName("price"); price.setValue("1000"); feList.add(price); TextArea textArea = new TextArea(); textArea.setName("description"); textArea.setValue("some description here"); feList.add(textArea); okmWorkflow.runProcessDefinition(null, pdId, "f86cc22d-9b50-434f-a940-b04cea9c0048", feList); } catch (Exception e) { e.printStackTrace(); } }}runProcessDefinition (sin asociación a un nodo)
Sección titulada «runProcessDefinition (sin asociación a un nodo)»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| runProcessDefinition(String token, long processDefinitionId, List |
ProcessInstance | Ejecuta un workflow sin asociarlo a un nodo concreto. |
- El parámetro processDefinitionId es una definición de proceso de workflow válida.
- El parámetro values son los valores de los elementos de formulario necesarios para iniciar el workflow (no todos los workflows necesitan valores de formulario para iniciarse).
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.form.FormElement;import com.openkm.bean.form.Input;import com.openkm.bean.form.TextArea;import com.openkm.bean.workflow.ProcessInstance;import com.openkm.util.ContextWrapper;
import java.util.ArrayList;import java.util.List;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long pdId = 8041; // Some valid workflow process definition id List<FormElement> feList = new ArrayList<>(); // Case where form parameters are required to start workflow Input priority = new Input(); priority.setName("priority"); priority.setValue("high"); feList.add(priority); TextArea comments = new TextArea(); comments.setName("comments"); comments.setValue("This is a standalone workflow process"); feList.add(comments); ProcessInstance pi = okmWorkflow.runProcessDefinition(null, pdId, feList); System.out.println("Process instance created: " + pi); } catch (Exception e) { e.printStackTrace(); } }}sendProcessInstanceSignal
Sección titulada «sendProcessInstanceSignal»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| sendProcessInstanceSignal(String token, long processInstanceId, String transitionName) | ProcessInstance | Envía una señal a una instancia de proceso. |
- El parámetro processInstanceId es un ID de instancia de proceso de workflow válido.
- El parámetro transitionName es la transición elegida.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long pId = 1046; // Some valid process instance id okmWorkflow.sendProcessInstanceSignal(null, pId, "jump2"); } catch (Exception e) { e.printStackTrace(); } }}endProcessInstance
Sección titulada «endProcessInstance»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| endProcessInstance(String token, long processInstanceId) | void | Finaliza una instancia de proceso. |
- El parámetro processInstanceId es una instancia de proceso de workflow válida.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long pId = 1046; // Some valid process instance id okmWorkflow.endProcessInstance(null, pId); } catch (Exception e) { e.printStackTrace(); } }}deleteProcessInstance
Sección titulada «deleteProcessInstance»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| deleteProcessInstance(String token, long processInstanceId) | void | Elimina una instancia de proceso. |
- El parámetro processInstanceId es una instancia de proceso de workflow válida.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long pId = 1046; // Some valid process instance id okmWorkflow.deleteProcessInstance(null, pId); } catch (Exception e) { e.printStackTrace(); } }}findProcessInstances
Sección titulada «findProcessInstances»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| findProcessInstances(String token, long processDefinitionId) | List |
Recupera una lista de todas las instancias de proceso de una definición de workflow registrada. |
- El parámetro processDefinitionId es una definición de proceso de workflow válida.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.ProcessDefinition;import com.openkm.bean.workflow.ProcessInstance;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
// Get all workflow definitions for (ProcessDefinition pd : okmWorkflow.findAllProcessDefinitions(null)) { System.out.println("WF definition: " + pd);
// Get all process of some workflow definition for (ProcessInstance pi : okmWorkflow.findProcessInstances(null, pd.getId())) { System.out.println("PI: " + pi); } } } catch (Exception e) { e.printStackTrace(); } }}searchAssignedTasks
Sección titulada «searchAssignedTasks»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| searchAssignedTasks(String token, LocalDate start, LocalDate end, String status, Long procDefId, String taskName, Integer offset, Integer limit) | ProcessInstanceResultSet | Busca instancias de tarea de workflow asignadas al usuario actual. |
- El parámetro start es el límite inferior del rango de fechas (puede ser null).
- El parámetro end es el límite superior del rango de fechas (puede ser null).
- El parámetro status filtra por estado de la tarea (puede ser null).
- El parámetro procDefId filtra por ID de definición de proceso (puede ser null).
- El parámetro taskName filtra por nombre de tarea (puede ser null).
- El parámetro offset se usa para omitir esa cantidad de resultados antes de devolver resultados.
- El parámetro limit limita el número de resultados devueltos.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.ProcessInstanceResultSet;import com.openkm.util.ContextWrapper;
import java.time.LocalDate;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
ProcessInstanceResultSet result = okmWorkflow.searchAssignedTasks(null, null, null, null, null, null, 0, 10); System.out.println("Total: " + result.getTotal()); } catch (Exception e) { e.printStackTrace(); } }}searchPooledTasks
Sección titulada «searchPooledTasks»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| searchPooledTasks(String token, LocalDate start, LocalDate end, String status, Long procDefId, String taskName, Integer offset, Integer limit) | ProcessInstanceResultSet | Busca instancias de tarea de workflow del pool disponibles para el usuario actual. |
- El parámetro start es el límite inferior del rango de fechas (puede ser null).
- El parámetro end es el límite superior del rango de fechas (puede ser null).
- El parámetro status filtra por estado de la tarea (puede ser null).
- El parámetro procDefId filtra por ID de definición de proceso (puede ser null).
- El parámetro taskName filtra por nombre de tarea (puede ser null).
- El parámetro offset se usa para omitir esa cantidad de resultados antes de devolver resultados.
- El parámetro limit limita el número de resultados devueltos.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.ProcessInstanceResultSet;import com.openkm.util.ContextWrapper;
import java.time.LocalDate;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
ProcessInstanceResultSet result = okmWorkflow.searchPooledTasks(null, null, null, null, null, null, 0, 10); System.out.println("Total: " + result.getTotal()); } catch (Exception e) { e.printStackTrace(); } }}searchStartedByMe
Sección titulada «searchStartedByMe»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| searchStartedByMe(String token, LocalDate start, LocalDate end, String status, Long procDefId, String taskName, Integer offset, Integer limit) | ProcessInstanceResultSet | Busca instancias de proceso de workflow iniciadas por el usuario actual. |
- El parámetro start es el límite inferior del rango de fechas (puede ser null).
- El parámetro end es el límite superior del rango de fechas (puede ser null).
- El parámetro status filtra por estado de la tarea (puede ser null).
- El parámetro procDefId filtra por ID de definición de proceso (puede ser null).
- El parámetro taskName filtra por nombre de tarea (puede ser null).
- El parámetro offset se usa para omitir esa cantidad de resultados antes de devolver resultados.
- El parámetro limit limita el número de resultados devueltos.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.ProcessInstanceResultSet;import com.openkm.util.ContextWrapper;
import java.time.LocalDate;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
ProcessInstanceResultSet result = okmWorkflow.searchStartedByMe(null, null, null, null, null, null, 0, 10); System.out.println("Total: " + result.getTotal()); } catch (Exception e) { e.printStackTrace(); } }}searchOverview
Sección titulada «searchOverview»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| searchOverview(String token, LocalDate start, LocalDate end, String status, Long procDefId, String taskName, String initiator, String taskUser, Integer offset, Integer limit) | ProcessInstanceResultSet | Busca instancias de proceso de workflow con el conjunto completo de filtros (vista administrativa general). |
- El parámetro start es el límite inferior del rango de fechas (puede ser null).
- El parámetro end es el límite superior del rango de fechas (puede ser null).
- El parámetro status filtra por estado de la tarea (puede ser null).
- El parámetro procDefId filtra por ID de definición de proceso (puede ser null).
- El parámetro taskName filtra por nombre de tarea (puede ser null).
- El parámetro initiator filtra por el usuario que inició el proceso (puede ser null).
- El parámetro taskUser filtra por el usuario asignado a la tarea (puede ser null).
- El parámetro offset se usa para omitir esa cantidad de resultados antes de devolver resultados.
- El parámetro limit limita el número de resultados devueltos.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.ProcessInstanceResultSet;import com.openkm.util.ContextWrapper;
import java.time.LocalDate;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
ProcessInstanceResultSet result = okmWorkflow.searchOverview(null, null, null, null, null, null, null, null, 0, 10); System.out.println("Total: " + result.getTotal()); } catch (Exception e) { e.printStackTrace(); } }}findAllProcessDefinitions
Sección titulada «findAllProcessDefinitions»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| findAllProcessDefinitions(String token) | List |
Recupera una lista de todas las definiciones de workflow registradas. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.ProcessDefinition;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
// Get all workflow definitions for (ProcessDefinition pd : okmWorkflow.findAllProcessDefinitions(null)) { System.out.println("WF definition: " + pd); } } catch (Exception e) { e.printStackTrace(); } }}findLatestProcessDefinitions
Sección titulada «findLatestProcessDefinitions»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| findLatestProcessDefinitions(String token) | List |
Recupera una lista de las últimas definiciones de workflow. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.ProcessDefinition;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
// Get all workflow definitions for (ProcessDefinition pd : okmWorkflow.findLatestProcessDefinitions(null)) { System.out.println("WF definition: " + pd); } } catch (Exception e) { e.printStackTrace(); } }}findLastProcessDefinition
Sección titulada «findLastProcessDefinition»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| findLastProcessDefinition(String token, String name) | ProcessDefinition | Recupera la última definición de workflow de un workflow concreto. |
- El parámetro name identifica un grupo de definición de workflow concreto.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.ProcessDefinition;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
ProcessDefinition pd = okmWorkflow.findLastProcessDefinition(null, "purchase"); System.out.println("WF definition: " + pd); } catch (Exception e) { e.printStackTrace(); } }}getProcessInstance
Sección titulada «getProcessInstance»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getProcessInstance(String token, long processInstanceId) | ProcessInstance | Devuelve la instancia de proceso. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.ProcessInstance;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long piId = 8108; // Some valid process instance id ProcessInstance pi = okmWorkflow.getProcessInstance(null, piId); System.out.println("PI: " + pi); } catch (Exception e) { e.printStackTrace(); } }}suspendProcessInstance
Sección titulada «suspendProcessInstance»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| suspendProcessInstance(String token, long processInstanceId) | void | Suspende la instancia de proceso. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long piId = 8108; // Some valid process instance id okmWorkflow.suspendProcessInstance(null, piId); } catch (Exception e) { e.printStackTrace(); } }}resumeProcessInstance
Sección titulada «resumeProcessInstance»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| resumeProcessInstance(String token, long processInstanceId) | void | Reanuda la instancia de proceso. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long piId = 8108; // Some valid process instance id okmWorkflow.resumeProcessInstance(null, piId); } catch (Exception e) { e.printStackTrace(); } }}findUserTaskInstances
Sección titulada «findUserTaskInstances»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| findUserTaskInstances(String token, int offset, int limit) | TaskInstanceResultSet | Recupera una lista de instancias de tarea asignadas al usuario. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.TaskInstance;import com.openkm.bean.workflow.TaskInstanceResultSet;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
TaskInstanceResultSet resultSet = okmWorkflow.findUserTaskInstances(null, 0, 10); System.out.println("Total: " + resultSet.getTotal()); // Get all user task intances for (TaskInstance ti : resultSet.getResults()) { System.out.println(ti); } } catch (Exception e) { e.printStackTrace(); } }}findPooledTaskInstances
Sección titulada «findPooledTaskInstances»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| findPooledTaskInstances(String token, int offset, int limit) | TaskInstanceResultSet | Recupera una lista de instancias de tarea del pool asignadas al usuario. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.TaskInstance;import com.openkm.bean.workflow.TaskInstanceResultSet;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
TaskInstanceResultSet resultSet = okmWorkflow.findPooledTaskInstances(null, 0, 10); System.out.println("Total: " + resultSet.getTotal()); // Get all user task intances for (TaskInstance ti : resultSet.getResults()) { System.out.println(ti); } } catch (Exception e) { e.printStackTrace(); } }}findTaskInstances
Sección titulada «findTaskInstances»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| findTaskInstances(String token, long processInstanceId) | List |
Recupera una lista de instancias de tarea de una instancia de proceso. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.TaskInstance;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
// Get all user task intances long piId = 8108; // Some valid process instance id for (TaskInstance ti : okmWorkflow.findTaskInstances(null, piId)) { System.out.println(ti); } } catch (Exception e) { e.printStackTrace(); } }}setTaskInstanceValues
Sección titulada «setTaskInstanceValues»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setTaskInstanceValues(String token, long taskInstanceId, String transitionName, List |
void | Establece los valores de una instancia de tarea. |
- El parámetro taskInstanceId es un ID de instancia de tarea válido.
- El parámetro transitionName es la transición elegida.
- El parámetro values son los valores de los elementos de formulario necesarios para iniciar el workflow (no todas las tareas de workflow necesitan valores de formulario).
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.form.FormElement;import com.openkm.util.ContextWrapper;
import java.util.ArrayList;import java.util.List;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long tiId = 8110; // Some valid task instance id List<FormElement> feList = new ArrayList<>(); okmWorkflow.setTaskInstanceValues(null, tiId, "approve", feList); } catch (Exception e) { e.printStackTrace(); } }}getTaskInstance
Sección titulada «getTaskInstance»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getTaskInstance(String token, long taskInstanceId) | TaskInstance | Devuelve una instancia de tarea. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.workflow.TaskInstance;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long tiId = 8110; // Some valid task instance id TaskInstance ti = okmWorkflow.getTaskInstance(null, tiId); System.out.println(ti); } catch (Exception e) { e.printStackTrace(); } }}setTaskInstanceActorId
Sección titulada «setTaskInstanceActorId»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setTaskInstanceActorId(String token, long taskInstanceId, String actorId) | void | Establece el actor de una instancia de tarea. |
- El parámetro taskInstanceId es un ID de instancia de tarea válido.
- El parámetro actorId debe ser un ID de usuario de OpenKM válido.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long tiId = 8110; // Some valid task instance id okmWorkflow.setTaskInstanceActorId(null, tiId, "okmAdmin"); } catch (Exception e) { e.printStackTrace(); } }}unsetTaskInstanceActor
Sección titulada «unsetTaskInstanceActor»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| unsetTaskInstanceActor(String token, long taskInstanceId) | void | Elimina la asignación de actor de una instancia de tarea, devolviéndola al pool. |
- El parámetro taskInstanceId es un ID de instancia de tarea válido.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long tiId = 8110; // Some valid task instance id okmWorkflow.unsetTaskInstanceActor(null, tiId); } catch (Exception e) { e.printStackTrace(); } }}startTaskInstance
Sección titulada «startTaskInstance»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| startTaskInstance(String token, long taskInstanceId) | void | Inicia una instancia de tarea. |
- El parámetro taskInstanceId es un ID de instancia de tarea válido.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long tiId = 8110; // Some valid task instance id okmWorkflow.startTaskInstance(null, tiId); } catch (Exception e) { e.printStackTrace(); } }}endTaskInstance
Sección titulada «endTaskInstance»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| endTaskInstance(String token, long taskInstanceId, String transitionName) | void | Finaliza una instancia de tarea. |
- El parámetro taskInstanceId es un ID de instancia de tarea válido.
- El parámetro transitionName es un nombre de transacción.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
long tiId = 8110; // Some valid task instance id okmWorkflow.endTaskInstance(null, tiId, "end"); } catch (Exception e) { e.printStackTrace(); } }}getSuggestBoxKeyValuesFiltered
Sección titulada «getSuggestBoxKeyValuesFiltered»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getSuggestBoxKeyValuesFiltered(String token, String nodeId, long processDefinitionId, String taskName, String propertyName, String filter) | List |
Devuelve una lista filtrada de pares clave-valor para un campo de formulario suggest box del workflow. |
- El parámetro nodeId es el UUID del nodo asociado (documento, carpeta, correo o expediente; puede ser null).
- El parámetro processDefinitionId es un ID de definición de proceso de workflow válido.
- El parámetro taskName es el nombre de la tarea de workflow que contiene el suggest box.
- El parámetro propertyName es el nombre de la propiedad de formulario del suggest box.
- El parámetro filter es una cadena usada para filtrar los valores devueltos.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.KeyValue;import com.openkm.util.ContextWrapper;
import java.util.List;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
List<KeyValue> values = okmWorkflow.getSuggestBoxKeyValuesFiltered(null, null, 5L, "review", "assignee", "adm"); for (KeyValue kv : values) { System.out.println(kv.getKey() + " = " + kv.getValue()); } } catch (Exception e) { e.printStackTrace(); } }}getSuggestBoxKeyValue
Sección titulada «getSuggestBoxKeyValue»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getSuggestBoxKeyValue(String token, String nodeId, long processDefinitionId, String taskName, String propertyName, String key) | KeyValue | Devuelve el par clave-valor de una clave concreta en un campo de formulario suggest box del workflow. |
- El parámetro nodeId es el UUID del nodo asociado (documento, carpeta, correo o expediente; puede ser null).
- El parámetro processDefinitionId es un ID de definición de proceso de workflow válido.
- El parámetro taskName es el nombre de la tarea de workflow que contiene el suggest box.
- El parámetro propertyName es el nombre de la propiedad de formulario del suggest box.
- El parámetro key es la clave concreta a recuperar.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMWorkflow;import com.openkm.bean.KeyValue;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMWorkflow okmWorkflow = ContextWrapper.getContext().getBean(OKMWorkflow.class);
KeyValue kv = okmWorkflow.getSuggestBoxKeyValue(null, null, 5L, "review", "assignee", "okmAdmin"); System.out.println(kv.getKey() + " = " + kv.getValue()); } catch (Exception e) { e.printStackTrace(); } }}