Saltar a contenido

Manual del Diseñador

Creación de un documento electrónico

El documento electrónico va a recabar la información del proceso, durante su recorrido por las estaciones. Es una "hoja viajera" electrónica. En el momento que el documento circula dentro del proceso se le asigna a cada uno un número único llamado "folio".

Es muy importante que al momento que se planea crear un proceso nuevo, se tenga una clara idea de todas las variables que se van a necesitar para que el trabajo de los usuarios se pueda llevar a cabo correctamente. Para ejemplificar esto vamos a imaginar un proceso de trámite de garantías de productos en una empresa comercializadora.

Los datos mínimos que se requerirían son:

Campo Comentario
Clave del cliente
Nombre del cliente
Teléfono del cliente
Clave del producto
Venta o factura
Marca del producto
Descripción falla del cliente
Diagnóstico soporte
Cambio físico Si se cambió el producto por otro diferente
Mensajería Mensajería por la que se envió el producto al proveedor
Número de guía
Proveedor Nombre del proveedor al que se envió el producto
RMA Clave de solicitud de garantía que entrega el proveedor
Nota de crédito
Monto nota de crédito

Una vez que se han detectado los campos que van a ser incluidos, procedemos a diseñar el documento electrónico.

Primeramente damos clic en el menú Documento Electrónico y nos aparece una lista de los documentos que ya existen en el sistema y al grupo del proceso al que pertenecen si es que el documento se encuentra asociado a algún proceso. Al crear un nuevo documento este no se encuentra asociado a ningún proceso y en estos casos aparece al final de la lista.

Si se selecciona un folio existente entonces editará el que ya existe. De lo contrario puede dar clic en la liga "Crear nuevo documento". Al entrar, si es un documento nuevo tenemos una hoja en blanco y un mensaje indicándonos que tenemos un documento nuevo.

En este momento o más tarde puede darle un nombre a este documento y dar clic en el icono a la derecha del nombre para salvar el nuevo nombre del documento.

Barra de menú

En la parte superior de la pagina aparece una barra de iconos.

Nuevo Campo. agrega nuevos campos al documento electrónico. Si da clic en la parte superior del icono el nuevo campo se inserta en la parte superior del documento. Si da clic en la parte inferior del icono el campo se inserta al final del documento. Posteriormente se puede arrastrar a una posición diferente. Si deja el puntero del ratón un momento sobre icono este le indica que posición está seleccionado.

Después de colocar varios campos una hoja de documento debería verse parecida a la que a aparece a continuación.

Descripción de columnas.

Cada campo en un renglón tiene dos o tres acciones disponibles.

Edición del campo. Permite editar sus propiedades.

Edición de hoja de estilo. Se pueden editar algunas propiedades de la hoja de estilo del campo para que este aparezca con un formato de colores y fuentes definida por el usuario.

Convertir campo . Los campos del documento se tienen que eventualmente convertir en campos físicamente existentes en una tabla dentro de las bases de datos de eFlow. Cuando esto sucede puede ser que posteriormente se requiera cambiar el tamaño de un campo porque posteriormente creció un campo que se planeó de cierta longitud. Esta opción permite realizar estas conversiones en el campo.

Edición del campo

Los datos a capturar en esta primer ventana son:

  • Campo El nombre que le va a dar al campo en la tabla de la base de datos. Cualquier nombre que escriba se le ante pondrá la cadena "ff_". Por lo tanto, si escribe el nombre age, el campo en la tabla se llamará ff_age. Si no escribe ningún nombre el campo se nombrará por omisión con fffieldid
  • Etiqueta. Descripción que le permite al usuario final conocer a que se refiere el campo.
  • Comentarios. Instrucciones para al usuario final de como capturar o utilizar este campo.
  • Condiciones.
  • Requerido. Campo debe contener un valor al enviar el formulario.
  • Campo acepta búsquedas. Se utiliza para indicar si este campo debe aparecer en los reportes de búsqueda de folio para buscar un valor en este campo.
  • Registrar cambios en variables. Cuando un campo es editable en varias etapas del proceso, a veces se requiere que ciertos campos registren que usuario le dio que valor cuando el registró su actividad. Supongamos que tenemos un proceso de autorización de líneas de crédito a clientes. Y el departamento de crédito asigna una línea de 100,000 pesos al cliente A y el director decide subir la linea de crédito a 200,000 pesos. Si en el futuro hubiera una duda sobre porque se autorizó una línea de crédito de 200,000 pesos al cliente A, en la historia de este folio se vería como cada persona involucrada le fue subiendo el monto a la línea de crédito.

Nota importante sobre nombres de campos

No todos los dispositivos móviles manejan correctamente nombres de campos fuera del rango de caracteres Latin1, por lo que se recomienda no usarlos, o probar con los que va a utilizar si desea crear campos con caracteres fuera de este rango. Los errores son en la ejecución de JavaScript en los dispositivos móviles, si no le importa perder algo de funcionalidad con el JavaScript puede hacerlo.

Tipo de campo y configuraciones

Existen los siguientes tipos de campos disponibles

Tipo Valores
Booleano verdadero, falso
Fecha
Entero Número entero de 32 bits (-2000,000,000 a 2000,000,000)
Numérico N enteros por M decimales
Texto
Tiempo Horas hh:mm
Attachment Campo especial para que se guarde el nombre del archivo. El archivo se guarda físicamente en un directorio del sistema, el cual puede o no estar protegido.
Firma digital Campo que solicita firma del usuario si la firma no es correcta no se permite actualizar la estación.
Select User Campo que despliega una lista de usuarios a los que se les puede asignar un folio.
Tiempo de alarma Permite determinar el tiempo de alarma de la siguiente estación.
Definido por usuario Tipo libre que el usuario puede programar.
Link Permite crear una liga para que el usuario tenga acceso a rutinas externas durante la edición de un folio.

Numérico

Solicita el número de enteros (datos antes del punto decimal) y decimales (números después del punto decimal) que va a aceptar este campo.

Texto

Tamaño del campo en cantidad de caracteres. 0 es sin límite, 30 sería máximo 30 caracteres. Es importante determinar un número máximo de caracteres cuando sea posible, ya que esto hace más eficiente el uso de la base de datos.

Attachment

Solicita seleccionar terminación válida para los archivos, esto es muy importante para evitar que se suban archivos no válidos, incorrectos o con formatos indeseados que generen errores en el proceso. Por ejemplo, si deseamos que suban solo imágenes tipo jpg (que son de tamaño pequeño), debemos seleccionar como terminación de archivos: .jpg

Adicionalmente existe un segundo campo que se puede configurar, para que el archivo se presente en línea junto con el folio o para que únicamente aparezca una liga para que el usuario baje el archivo al disco duro. Es importante que si se selecciona la opción de desplegar en línea el navegador tenga tanto la capacidad de hacerlos, como el programa que permita visualizar este documento (por ejemplo si se desea presentar en línea un documento Word o Excel, el usuario que abra el folio tiene que tener Word o Excel en su computadora para poder ver este folio).

Es importante tomar en cuenta que cuando se selecciona la opción de desplegar en línea el acceso a los folios se hace considerablemente más lento, porque hay un tiempo de espera para cargar el programa que puede mostrar el archivo adjunto. En general podemos aceptar que los archivos de imágenes tipo jpg y gif se presenten en línea sin mayores retrasos en la carga de folios ni problemas de compatibilidad.

Aquí se presenta la diferencia de un mismo folio visto por un usuario con desplegado en línea y sin desplegar en línea.

Desplegando hoja de Excel en línea.

Sin desplegar en línea, solo aparece el icono para bajar el archivo. Ocupa menos espacio en pantalla, es más rápido pero hay que hacer clics adicionales para ver el archivo.

Firma Digital

Al seleccionar esta opción se ofrecen tres tipos de control sobre la firma:

Dependiendo de la selección se establecerá que usuarios pueden firmar la actualización. Si la firma no corresponde a alguno de los usuarios autorizados, entonces no se podrá avanzar el folio.

Selección de usuario

En este caso aparece un recuadro donde se presenta el grupo del que vamos a obtener la lista de usuarios. Para esto, hacemos clic en el icono de puestos. Y este nos presenta la lista de grupos dados de alta en el servidor. Se hace clic en el grupo deseado y aceptar.

Si selecciona "Todos los grupos", en el navegador de los usuarios aparecerá un campo con el nombre del usuario que se ha seleccionado y una liga "Usuario" que abre una ventana para buscar entre todos los usuarios (por grupo, nombre y apellido).

Si selecciona un grupo, entonces aparecerá un combo con los usuarios disponibles de este grupo en particular.

Para ver más claramente lo anterior se presentan las imágenes del navegador con selección de todos los usuarios y con un grupo en particular.

Todos los usuarios:

En este caso aparece el campo (deshabilitado, no lo puede modificar), con el nombre del usuario. Es necesario dar un clic en la liga del usuario para abrir una ventana que contiene los usuarios y seleccionar al que se debe asignar.

Selección de un grupo:

En este caso, aparecen únicamente los usuarios pertenecientes a un grupo en particular.

Definidor por usuario

Los datos a capturar son: Tipo de campo. Esta debe ser una expresión valida para poder crear un campo en la tabla del documento, según los tipos de campos disponibles en la base de datos de PostgreSQL. Tamaño, si el campo requiere de un tamaño se debe escribir en este segundo campo.

Por último en parámetros el usuario puede escribir valores fijos que le sirvan para iniciar o desplegar su información.

Es importante hacer notar que para que este campo pueda desplegar alguna información y ser procesado correctamente, el usuario debe crear las rutinas necesarias en station_def.pl and wf.pm

Los detalles para programar un campo definido por el usuario se encuentran en el manual del programador.

IMPORTANTE

eFlow no valida que el campo y los parámetros sean válidos, si escribe campos y parámetros inválidos eFlow creará un error al momento de intentar crearlo.

Este tipo de formato despliega una liga dentro del documento electrónico. Esto permite que cuando el usuario haga clic en la liga, se abra una ventana nueva y se ejecute un programa externo.

Los campos que se deben capturar durante la creación de un campo de tipo "Link" son:

Texto de la liga: Es el texto que debe aparecer como liga en el folio.

url: La dirección URL del programa que se va a llamar. Si se desean enviar parámetros escriba al final del url ?campo=valor&... Al agregar el signo de interrogación se anexan en automático adicionalmente los siguientes campos y sus valores: user, process, station, folio, user_int, user_char, access. Si desea enviar los valores, debe terminar el URL con un signo de interrogación, ejemplo: /cgi-bin/proceso/programa.cgi?

icono: La dirección URL de la imagen que se va a adicional a la liga para que aparezca un icono.

Opciones desplegado : Si está activado, en lugar de aparecer una liga a la página. Se abre la página directamente en el folio dentro de un IFRAME.

Ventana

In-line

Nota

Descripción de los valores enviados con la terminación ?
user : Número de usuario
process : Número de proceso
station : Número de estación de donde se realiza la llamada
folio : Número de folio que se está procesando
access : :Tipo de acceso al URL: 0 Lectura, 1 Editar
user_it : Campo entero asociado al folio y definido por el usuario
user_char : Campo carácter de 1024 posiciones, definido por el usuario

Campo Fecha

El campo tipo fecha ofrece una opción adicional, permite indicar si debe ser únicamente un campo de tipo fecha o de fecha y hora.

Los campos que se marcan como tipo fecha y hora (date time), adicional al campo de captura de la fecha y el icono de calendario ofrecen un campo adicional para la captura del la hora, presentarlo en el formulario del usuario.

Campos de configuración solicitados en base al Formato de Captura y Origen de datos

Texto

Permite escribir un valor que aparece por omisión al momento de mostrar el campo, en caso de que no tenga un valor previo.

Campos CheckBox

Los campos radio, tienen la característica de que se selecciona una de las n opciones disponibles (son excluyentes).

En el caso de los checkbox, no es así se pueden seleccionar simultáneamente n valores de un checkbox. Por lo tanto, la forma en la que se almacenan los valores en la base de datos, y la forma en que se recuperan es la siguiente:

Si el valor es numérico, se suman los valores seleccionados.

Si el valor es carácter se concatenan los resultados separados por |

Por esta razón, para que la información que se almacene tenga sentido, en el caso de valores numéricos se recomienda que se usen valores en potencias de 2 (1,2,4,8,16,32,64 ..) Para que al sumarlos cada valor sea independiente de los otros valores.

Origen de los datos

Arreglo Fijo

En este caso se escribe el texto que va a aparecer en el combo, radio o checkbox en el campo etiqueta y en el campo valor se escribe el dato que representa a este texto. Si el campo es de tipo numérico debe escribir números en valor, para que no exista conflicto entre el tipo de campo y los valores que se inserten en la tabla. Haga clic en agregar, para que se introduzca el valor en la lista.

Para eliminar debe dar clic en "Eliminar" esta acción elimina la última opción siempre, se utiliza normalmente para corregir un error de entrada inmediatamente después de dar la entrada. No existe la opción de borrar datos intermedios o eliminar en medio.

Acceso desde Base de datos. (local o externa)

La segunda forma de introducir una lista es que se declare una tabla en una base de datos y que se obtengan los valores y los textos del campo de esta tabla. Esto es muy útil para flexibilizar el contenido de las listas, además permite crear programas donde las listas crezcan dinámicamente, sin embargo requiere conectarse a un servidor y esto castiga el tiempo de desplegado, aunque en muchos casos no es perceptible.

Conexión a servidor local.

  • Nombre de la base de datos. Debe escribir el nombre de una base de datos existente de PostgreSQL.
  • Nombre Tabla. Nombre de una tabla existente dentro de la base de datos seleccionada.
  • Campo valores. Nombre del campo en la tabla seleccionada de donde se van a extraer los valores del campo.
  • Campo etiquetas. Nombre del campo en la tabla de donde se van a extraer los nombres de las etiquetas.
  • Cláusula WHERE puede escribir una clausula where order by para limitar los valores que regresará el query.

Conexión a servidor externo.

El formulario de captura para estos casos es.

  • Motor de conexión. Seleccione el tipo de conexión, de entre las disponibles.
  • Servidor. Nombre de dominio o IP del servidor al que se va a conectar.
  • Puerto.
  • Usuario
  • Password
  • Nombre de la base de datos. Escriba el DSN correcto para el tipo de motor seleccionado de acuerdo al manual DBI::modulo.
  • Tabla, Campo Valor, Campo etiquetas y Clausula WHERE son similares para el tipo local.

Verificar conexión

Al finalizar la captura de los datos requeridos para hacer una conexión. Puede dar clic en el botón "Verificar Conexión". Y el programa intentará realizar la conexión al servidor externo y ejecutar el query parametrizado. El resultado de una conexión exitosa se debe ver así.

Ejemplo de una conexión con error.

Formato de Captura

Los formatos disponibles son:

Tipo Descripción Vista
Texto Rectángulo de texto
Select Combo
Radio Grupo Botones
CheckBox Grupo selecciones
Password Campo para contraseña
Text Area Área texto

Dependiendo de la opción de formato se presentarán algunas configuraciones extras en la segunda parte del formulario.

Validación del campo

Existen 4 validaciones posibles para los campos que tienen formato de entrada tipo texto.

Ninguna Entrada libre de datos Ejemplo
Numérica Sólo se permite registrar números, puntos decimales en caso de ser de tipo Numeric y el signo de menos (si se selecciona la opción de +-)
Alfabética Sólo se permite la entrada de letras Alfanumérica Letras y números
Libre Se permite al usuario teclear los caracteres que van a ser válidos. Por ejemplo con una secuencia de caracteres: 0123456789 --(). Se tienen los caracteres que son validos para un número telefónico.
Máscara Se permite registrar datos pero únicamente en el orden que se presentan en los caracteres válidos.
n representa dígitos . a representa cualquier carácter a representa caracteres alfabéticos de la a-Z z representa caracteres alfanuméricos de la a-z y del 0 - 9
Filtros Permite seleccionar si se deben capitalizar los caracteres al momento de ingresarlos al campo.

Convertir Campo

Este icono está activo únicamente cuando la estructura de la base de datos ya ha sido creada (cuando se ha dado clic al botón "Crear Tablas").

Si se ha creado un campo, el proceso se ha puesto a funcionar y después de un tiempo se desea modificar el tipo de dato (un varchar hacerlo de 10 a 15 posiciones, un numérico incrementarlo de 10,2 posiciones a 12,2). Es necesario realizar la conversión con esta opción.

Nota

Existen campos del folio que no tienen un campo creado en la tabla del folio en la base de datos (ejemplos de estos campos, son : link, alarma, java, selección de usuario, etc.) Estos campos se pueden modificar simplemente cambiando los combos en la pestaña de Tipo de Campo.

Como se mencionó anteriormente en el manual, esta opción permite por el momento realizar ampliaciones de campos, no convierte de un tipo a otro o decrementa el tamaño de un campo existente.

Vista previa

En cualquier momento puede ver una vista previa de los campos que ha creado y como se desplegarían en la página para los usuarios. Para hacer esto de clic en la pestaña del lado derecho de la barra.

Para regresar al diseño de su documento, de clic en la pestaña con la flecha en el extremo izquierdo de la barra de comandos.

Posición de los campos en la forma de captura para los usuarios

Puede modificar la secuencia en la que se despliegan los campos realizando una operación de arrastre del renglón en la ventana de diseño de su documento en cualquier momento. Simplemente de clic sobre el renglón, y arrestarlo verticalmente hasta la posición deseada.

La vista previa en la creación del documento, sirve para validar que los campos aparecen como se espera y que las validaciones funcionan adecuadamente. Avanzar el documento únicamente genera un mensaje que indica que no se puede ejecutar la vista previa por falta de información.

Crear tabla de datos del documento electrónico

Después de haber revisado y corregido todos los datos del folio, estamos listos para crear la tabla de datos que va a contener todos los campos.

Para crear la tabla de datos se hace clic en el botón Crear Tablas

Si después de crearla se necesita hacer correcciones, se puede borra la tabla de datos con el botón "Eliminar Tablas", realizar los cambios y volverla a crear.

IMPORTANTE

Este proceso elimina por completo la tabla de datos y toda la información que se tiene almacenada. Si las modificaciones las desea hacer después de haber iniciado el proceso y se desean modificar campos en la base de datos, las modificaciones se encontrarán limitadas a las acciones descritas a continuación.

Una vez creada la base de datos, las únicas modificaciones que se pueden realizar sin necesidad de crear nuevamente la base de datos son:

Se puede

Modificar pestaña de nombre (todas las opciones)
Modificar formatos (todas las opciones de formato)
Modificar validaciones
Modificar el tipo de archivo y si se despliega en línea
Agregar nuevos campos
Modificar los tamaños de campos textos y numéricos.

No puede

Eliminar campos del documento
Cambiar el tipo de campo