Campo Upload de flujo de trabajo
Upload se usa para subir un documento.
| Atributo | Descripción | Obligatorio |
|---|---|---|
| label | El texto que se muestra como etiqueta en la interfaz de usuario. | true |
| name | Identificador de nombre único. Dos campos no pueden tener el mismo nombre en la misma definición de tarea. El nombre debe ser único. |
true |
| width | El ancho del elemento HTML. En el caso de KCenter, la interfaz debe usar valores de ancho basados en porcentajes; por ejemplo: - width=“50%” funcionará. - width=“100px” será ignorado en la interfaz de KCenter. |
false |
| data | Cuando está presente, es un identificador usado para cargar datos. Por ejemplo, establecer dinámicamente folderPath o folderUuid. |
false |
| visible | Este atributo solo tiene sentido cuando se usa junto con un objeto mapeado en el atributo data; el valor visible del objeto mapeado en data se asigna al campo del formulario, provocando que se muestre u oculte (el uso más común es ocultarlo). El valor por defecto de visible es true. | false |
| type | Valores: - create (la operación creará un nuevo documento) - update (la operación actualizará el documento existente) Cuando no está presente, el valor por defecto es “create”. |
false |
| folderPath | La ruta de carpeta donde se almacenará el documento. | false |
| folderUuid | El UUID de carpeta donde se almacenará el documento. | false |
| documentName | Nombre forzado del documento subido. | false |
| documentUuid | El UUID del documento a actualizar. | false |
| allowedExtensions | Establece las extensiones de documento que se permite subir. Por ejemplo: pdf;png |
false |
| multiple | Cuando es true, permite subir varios ficheros. Por defecto es false. |
false |
- Elementos hijos:
Ejemplo básico de subida
Sección titulada «Ejemplo básico de subida»-
Sube un nuevo documento a una carpeta.
-
folderUuid es un UUID de carpeta válido. También puede usar folderPath y establecer una ruta, que es más legible para las personas.
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE workflow-forms PUBLIC "-//OpenKM//DTD Workflow Forms 2.6//EN""http://www.openkm.com/dtd/workflow-forms-2.6.dtd"><workflow-forms><workflow-form task="upload test"><upload name="upload" label="Upload document" folderUuid="fca2d85e-0e01-418d-b699-c0dd0f8190da" /></workflow-form></workflow-forms>
Ejemplo de actualización de documento
Sección titulada «Ejemplo de actualización de documento»- Crea una nueva versión de un documento existente.
- documentUuid es el UUID del documento a actualizar.
- El atributo type debe establecerse en
update.
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE workflow-forms PUBLIC "-//OpenKM//DTD Workflow Forms 2.6//EN" "http://www.openkm.com/dtd/workflow-forms-2.6.dtd"><workflow-forms> <workflow-form task="upload test"> <upload name="upload" label="Upload document" type="update" documentUuid="e6a06309-c1cf-42be-98fd-7d7ed83ebda8" /> </workflow-form></workflow-forms>Ejemplo de parámetros dinámicos
Sección titulada «Ejemplo de parámetros dinámicos»- Sube un documento a una carpeta determinada en tiempo de ejecución.
- El atributo data es una variable de mapeo usada para establecer dinámicamente el atributo
folderPathofolderUuid.
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE workflow-forms PUBLIC "-//OpenKM//DTD Workflow Forms 2.6//EN" "http://www.openkm.com/dtd/workflow-forms-2.6.dtd"><workflow-forms> <workflow-form task="upload test"> <upload name="upload" label="Upload document" data="updData" /> </workflow-form></workflow-forms>El siguiente código Java debe ejecutarse antes de la tarea que muestra el formulario. Establece la carpeta de destino dinámicamente:
import org.jbpm.graph.def.ActionHandler;import org.jbpm.graph.exe.ExecutionContext;
import com.openkm.bean.form.Upload;
public class UploadAction implements ActionHandler { private static final long serialVersionUID = 1L;
@Override public void execute(ExecutionContext ctx) throws Exception { Upload upd = new Upload(); upd.setFolderPath("/okm:root/dstFld"); ctx.setVariable("updData", upd);
// Proceed to the next node ctx.getToken().signal(); }}