Ir al contenido
Otras versiones

Cargando…

OKMWorkflow

En todos los métodos verá un parámetro llamado “token”. Al acceder a la aplicación a través de SOAP, el proceso de inicio de sesión devuelve un token que se utiliza para identificar al usuario en todos los métodos expuestos. Desde el contexto de ejecución por defecto de la aplicación debe utilizar el valor “null”, que indica a la aplicación que debe utilizar la “sesión del usuario”.

Descripción:

Método Valores devueltos 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 org.apache.commons.io.IOUtils;
import com.openkm.api.OKMWorkflow;
public class Test {
public static void main(String[] args) {
try {
InputStream is = new FileInputStream("/opt/files/Purchase.par");
OKMWorkflow.getInstance().registerProcessDefinition(null, is);
IOUtils.closeQuietly(is);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
deleteProcessDefinition(String token, long processDefinitionId) void Elimina un workflow.
  • El valor del parámetro processDefinitionId es una definición de proceso de workflow válida**.**

Ejemplo:

package com.openkm;
import com.openkm.api.OKMWorkflow;
public class Test {
public static void main(String[] args) {
try {
long pdId = 5; // Valid workflow process definition
OKMWorkflow.getInstance().deleteProcessDefinition(null, pdId);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getProcessDefinition(String token, long processDefinitionId) ProcessDefinition Devuelve la definición de proceso identificada por processDefinitionId.

Ejemplo:

package com.openkm;
import java.io.FileInputStream;
import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.api.OKMWorkflow;
public class Test {
public static void main(String[] args) {
try {
long processDefinitionId = 1;
ProcessDefinition process = OKMWorkflow.getInstance().getProcessDefinition(null, processDefinitionId);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getProcessDefinitionImage(String token, long processDefinitionId, String node) byte[] Devuelve la imagen de la definición de proceso de un workflow.
  • El valor del parámetro processDefinitionId es una definición de proceso de workflow válida.
  • El parámetro node es un nodo con un workflow en ejecución.

Ejemplo:

package com.openkm;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileOutputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.api.OKMWorkflow;
public class Test {
public static void main(String[] args) {
try {
long pdId = 5; // Valid workflow process definition
byte[] img = OKMWorkflow.getInstance().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();
}
}
}

Descripción:

Método Valores devueltos Descripción
Map<String, List> getProcessDefinitionForms(String token, long processDefinitionId) Map<String, List> Devuelve un mapa con todas las definiciones de formulario del workflow.
  • El valor del parámetro processDefinitionId es una definición de proceso de workflow válida.

Ejemplo:

package com.openkm;
import java.util.List;
import java.util.Map;
import com.openkm.api.OKMWorkflow;
import com.openkm.bean.form.FormElement;
public class Test {
public static void main(String[] args) {
try {
long pdId = 5; // Valid workflow process definition
Map<String,List<FormElement>> map = OKMWorkflow.getInstance().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();
}
}
}

Descripción:

Método Valores devueltos Descripción
runProcessDefinition(String token, long processDefinitionId, String uuid, List variables) ProcessInstance Ejecuta un workflow sobre un nodo.
  • El valor del 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 registro.
  • 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 java.util.ArrayList;
import java.util.List;
import com.openkm.api.OKMWorkflow;
import com.openkm.bean.form.FormElement;
import com.openkm.bean.form.Input;
import com.openkm.bean.form.TextArea;
public class Test {
public static void main(String[] args) {
try {
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.getInstance().runProcessDefinition(null, pdId, "f86cc22d-9b50-434f-a940-b04cea9c0048", feList);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
sendProcessInstanceSignal(String token, long processInstanceId, String transitionName) ProcessInstance Envía una señal a un id de instancia de proceso.
  • El valor del parámetro processInstanceId es una instancia de proceso de workflow válida.
  • El parámetro uuid puede ser el UUID de cualquier documento, correo, carpeta o registro.
  • El parámetro transactionName es la transición elegida.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMWorkflow;
public class Test {
public static void main(String[] args) {
try {
long pId = 1046; // Some valid process instance id
OKMWorkflow.getInstance().sendProcessInstanceSignal(null, pId, "jump2");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
endProcessInstance(String token, long processInstanceId) void Finaliza un id de instancia de proceso.
  • El valor del parámetro processInstanceId es una instancia de proceso de workflow válida.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMWorkflow;
public class Test {
public static void main(String[] args) {
try {
long pId = 1046; // Some valid process instance id
OKMWorkflow.getInstance().endProcessInstance(null, pId);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
deleteProcessInstance(String token, long processInstanceId) void Elimina un id de instancia de proceso.
  • El valor del parámetro processInstanceId es una instancia de proceso de workflow válida.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMWorkflow;
public class Test {
public static void main(String[] args) {
try {
long pId = 1046; // Some valid process instance id
OKMWorkflow.getInstance().deleteProcessInstance(null, pId);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos 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 valor del 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;
public class Test {
public static void main(String[] args) {
try {
// Get all workflow definitions
for (ProcessDefinition pd : OKMWorkflow.getInstance().findAllProcessDefinitions(null)) {
System.out.println("WF definition: "+pd);
// Get all process of some workflow definition
for (ProcessInstance pi : OKMWorkflow.getInstance().findProcessInstances(null, pd.getId())) {
System.out.println("PI: "+pi);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
findAllProcessDefinitions(String token, long processDefinitionId) 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;
public class Test {
public static void main(String[] args) {
try {
// Get all workflow definitions
for (ProcessDefinition pd : OKMWorkflow.getInstance().findAllProcessDefinitions(null)) {
System.out.println("WF definition: "+pd);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos 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;
public class Test {
public static void main(String[] args) {
try {
// Get all workflow definitions
for (ProcessDefinition pd : OKMWorkflow.getInstance().findLatestProcessDefinitions(null)) {
System.out.println("WF definition: "+pd);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
findLastProcessDefinition(String token, String name) ProcessDefinition Recupera la última definición de un workflow concreto.
  • El parámetro name identifica un grupo concreto de definiciones de workflow.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMWorkflow;
import com.openkm.bean.workflow.ProcessDefinition;
public class Test {
public static void main(String[] args) {
try {
ProcessDefinition pd = OKMWorkflow.getInstance().findLastProcessDefinition(null, "purchase");
System.out.println("WF definition: " + pd);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos 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;
public class Test {
public static void main(String[] args) {
try {
long piId = 8108; // Some valid process instance id
ProcessInstance pi = OKMWorkflow.getInstance().getProcessInstance(null, piId);
System.out.println("PI: " + pi);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos 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.bean.workflow.ProcessInstance;
public class Test {
public static void main(String[] args) {
try {
long piId = 8108; // Some valid process instance id
OKMWorkflow.getInstance().suspendProcessInstance(null, piId);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos 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.bean.workflow.ProcessInstance;
public class Test {
public static void main(String[] args) {
try {
long piId = 8108; // Some valid process instance id
OKMWorkflow.getInstance().resumeProcessInstance(null, piId);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
findUserTaskInstances(String token) List Recupera una lista de las instancias de tarea asignadas al usuario.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMWorkflow;
import com.openkm.bean.workflow.TaskInstance;
public class Test {
public static void main(String[] args) {
try {
// Get all user task intances
for (TaskInstance ti : OKMWorkflow.getInstance().findUserTaskInstances(null)) {
System.out.println(ti);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
findPooledTaskInstances(String token) List Recupera una lista de las instancias de tarea compartidas (pooled) asignadas al usuario.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMWorkflow;
import com.openkm.bean.workflow.TaskInstance;
public class Test {
public static void main(String[] args) {
try {
// Get all user task intances
for (TaskInstance ti : OKMWorkflow.getInstance().findPooledTaskInstances(null)) {
System.out.println(ti);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
findTaskInstances(String token, long processInstanceId) List Recupera una lista de instancias de tarea por instancia de proceso.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMWorkflow;
import com.openkm.bean.workflow.TaskInstance;
public class Test {
public static void main(String[] args) {
try {
// Get all user task intances
long piId = 8108; // Some valid process instance id
for (TaskInstance ti : OKMWorkflow.getInstance().findTaskInstances(null, piId)) {
System.out.println(ti);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
setTaskInstanceValues(String token, long taskInstanceId, String transitionName, List values) void Establece los valores de una instancia de tarea.
  • El valor del 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 del workflow necesitan valores de formulario).

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.api.OKMWorkflow;
import com.openkm.bean.form.FormElement;
public class Test {
public static void main(String[] args) {
try {
long tiId = 8110; // Some valid task instance id
List<FormElement> feList = new ArrayList<>();
OKMWorkflow.getInstance().setTaskInstanceValues(null, tiId, "approve", feList);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos 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;
public class Test {
public static void main(String[] args) {
try {
long tiId = 8110; // Some valid task instance id
TaskInstance ti = OKMWorkflow.getInstance().getTaskInstance(null, tiId);
System.out.println(ti);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
setTaskInstanceActorId(String token, long taskInstanceId, String actorId) void Establece el actor de una instancia de tarea.
  • El valor del parámetro taskInstanceId es un id de instancia de tarea válido.
  • El parámetro actorId debe ser un userId válido de OpenKM.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMWorkflow;
public class Test {
public static void main(String[] args) {
try {
long tiId = 8110; // Some valid task instance id
OKMWorkflow.getInstance().setTaskInstanceActorId(null, tiId, "okmAdmin");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
startTaskInstance(String token, long taskInstanceId) void Inicia una instancia de tarea.
  • El valor del parámetro taskInstanceId es un id de instancia de tarea válido.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMWorkflow;
public class Test {
public static void main(String[] args) {
try {
long tiId = 8110; // Some valid task instance id
OKMWorkflow.getInstance().startTaskInstance(null, tiId);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
endTaskInstance(String token, long taskInstanceId, String transitionName) void Finaliza una instancia de tarea.
  • El valor del parámetro taskInstanceId es un id de instancia de tarea válido.
  • El parámetro transitionName es el nombre de una transición.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMWorkflow;
public class Test {
public static void main(String[] args) {
try {
long tiId = 8110; // Some valid task instance id
OKMWorkflow.getInstance().endTaskInstance(null, tiId, "end");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getToken(String token, long tokenId) Token Devuelve un objeto token.
  • El valor del parámetro tokenId es un id de token válido.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMWorkflow;
import com.openkm.bean.workflow.Token;
public class Test {
public static void main(String[] args) {
try {
long tkId = 8110; // Some valid token id
Token tk = OKMWorkflow.getInstance().getToken(null, tkId);
System.out.println(tk);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
sendTokenSignal(String token, long tokenId, String transitionName) Token Envía una señal.
  • El valor del parámetro tokenId es un id de token válido.
  • El parámetro transitionName es el nombre de una transición.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMWorkflow;
import com.openkm.bean.workflow.Token;
public class Test {
public static void main(String[] args) {
try {
long tkId = 8110; // Some valid token id
Token tk = OKMWorkflow.getInstance().sendTokenSignal(null, tkId, "end");
System.out.println(tk);
} catch (Exception e) {
e.printStackTrace();
}
}
}