Novedades

Encabezados HTTP en dominios e integraciones REST

Expandimos las capacidades de nuestro software agregando la característica de encabezados HTTP en dominios e integraciones REST!

Los encabezados HTTP son una parte muy importante del protocolo HTTP, permiten enviar información adicional respecto al cuerpo del mensaje, códigos de autorización, información sobre los tipos de información que se está enviando, y más. Esto permite que los mensajes y peticiones que se hacen a una API REST tengan estos encabezados, lo que abre muchas posibilidades respecto al tipo de peticiones que se pueden hacer frente a servicios que, por ejemplo, requieren de una autorización mediante el envío de un código "token" en los encabezados HTTP.

Dentro de el panel de configuración de un dominio, si configuramos el origen de datos como un Web Service REST, podemos acceder a la configuración y podemos ver una tabla de encabezados HTTP. Aquí le podemos dar nombre, y los valores que se pueden seleccionar en la lista desplegable son los valores de los parámetros definidos en la tabla de parámetros ubicada por encima de la tabla de encabezados.

Dominios

Los parámetros definidos en la tabla de configuración del origen de datos serán los valores a seleccionar para los encabezados HTTP.

Integraciones

Los parámetros definidos en el panel de integraciones serán los valores a seleccionar para los encabezados HTTP.

En integraciones, para configurar los encabezados se debe definir el parámetro en el panel de la integración en sí, y para agregar ese parámetro como token se debe crear una operación de tipo Web service REST, y dentro del panel de la operación veremos la tabla de encabezados, y de la misma manera podemos definir el encabezado que definimos anteriormente en la tabla de parámetros.

Nuevas funcionalidades y mejoras - General

A continuación se listan las nuevas funcionalidades generales agregadas a Q-flow para la versión 5.1.1. Si la funcionalidad se agregó como un "fix" para alguna versión anterior, se indicará mediante etiquetas con las versiones correspondientes.

Actualización de menú superior

Se movieron los botones de ayuda y novedades a la “i” de información del menú superior.

Unificar estilos de los correos de notificación

Se unificaron los estilos de notificación que se utilizan en Q-flow:

  • Nueva tarea: Al instanciar una nueva tarea.
  • Nueva notificación: Al instanciar una nueva notificación.
  • Recordatorio automático de tarea: Están definidos en la configuración del paso y se ejecutan automáticamente.
  • Alerta automática de tarea: Están definidos en la configuración del paso y se ejecutan automáticamente.
  • Vencimiento automático de tarea: Están definidos en la configuración del paso y se ejecutan automáticamente.
  • Delegación automática de tarea: Están definidos en la configuración del paso y se ejecutan automáticamente.
  • Recordatorio manual de tarea: Definidas desde el sitio web.
  • Alerta manual de tarea: Definidas desde el sitio web.
  • Reenvío manual de tarea: Definidas desde el sitio web.
  • Recordatorio de etapa: Se definen en las etapas de un proceso y se ejecutan automáticamente según la etapa.
  • Alerta de etapa: Se definen en las etapas de un proceso y se ejecutan automáticamente según la etapa.
  • Cambio en paquete: Se envían al realizar un cambio en algún paquete que el usuario esté suscrito.
  • Proceso en error: Se envían al dueño de la versión, cuando un proceso queda en error (debe estar marcado la opción de Proceso en error en el sitio de BPM).

Las notificaciones tendrán los estilos asociados al tema elegido en la instancia, asi como el logo configurado para tales efectos en el Administrador y Monitor del Sistema (SAM), en el parámetro “Logo de correos”.

Utilizar idioma del usuario destinatario en Notificaciones

Los correos ahora se envían en el idioma detectado en la última sesión del usuario. Los idiomas soportados son inglés, español y portugués.

Permitir utilizar WebSite, WebServices y BPM App en diferentes instancias [5.0] [5.1]

Ahora se permite de manera personalizada la posibilidad de conectarse con estas herramientas utilizando una instancia que no sea el por defecto, configurando dentro del archivo “app.config” el parámetro “TenantId”.

Quitar botón de “…” de expandir paneles en versión móvil [5.1]

El botón de expandir y colapsar se quitó en versión móvil.

Botón de cambiar tenant en sitios web [5.1]

Cuando se hace clic en el botón de cambiar instancia, si el listado está abierto, este se cierra.

Se puede configurar Redis como caché [5.1] [Técnico]

Ahora todo el caché del backend, incluyendo la web API está centralizado. Este se puede configurar para que sea Redis o Memorycache. También se quitó de las propiedades extendidas de SAM un mensaje que indicaba que si había algún cambio hay que reiniciar los servidores, ya que ahora no es necesario.

Logs de WebAPI en versión release [5.0] [5.1] [Técnico]

Se agregó en los handlers de la WebAPI, logs de los errores antes de devolverlos al frontend.

Crear servicio web para eliminar instancias [5.1] [Técnico]

Se creó un servicio web para eliminar instancia, para ello el usuario debe tener permiso de “Administrar seguridad” y estar en la instancia por defecto.

 

En caso de que se hayan agregado funcionalidades de mayor relevancia, o que ameriten una explicación en mayor profundidad, tendrán su publicación aparte.

Errores corregidos - BPM

A continuación se listan los errores corregidos en el Diseñador de Procesos de Negocio Web para la versión 5.1.1 de Q-flow. Si la corrección del error se incluyó como "fix" para alguna versión anterior, se indicará mediante etiquetas con las versiones correspondientes.

Adicionalmente, si el contenido es de carácter técnico, será indicado mediante la etiqueta correspondiente.

  • Cambio de ícono al importar una versión [5.1]
    Se corrigió que, al exportar una versión y luego importarla en otra plantilla, deje el mismo ícono.

  • Error de que dato debe ser multivaluado si no tiene línea, no se borra [5.0] [5.1]
    En el panel de propiedades de un dato, se corrigió que al poner en una línea un dato que no es multivaluado, se limpie los errores, ya que no se limpiaban cuando se quitaba la línea y se daba a guardar el panel y se creaba otro.

  • No avisa qué está mal al intentar guardar una integración sin haber generado el código [5.1]
    Se corrigió que, en una integración de tipo Sharepoint, luego de seleccionar una lista, un método y haber llenado los parámetros, al guardar si hay algún dato de entrada inválido, indica cuál es. Previamente no se indicaba cuál era el dato de entrada inválido.

  • Ventana de código se cambia de tamaño y causa errores en manejadores de eventos [5.0] [5.1]
    Se corrigió que, al abrir un manejador de eventos y hacer clic al comentario de “TODO” al final de la línea, se mantiene el tamaño de la ventana, porque ocurría que el código se movía hacia la izquierda.

  • Pestaña de diseño de proceso protegido aparece editada si se pega [5.0] [5.1]
    Se corrigió que, si se intenta pegar un paso de otro grafo, no se pegue nada y no muestre que hubo cambios en la pestaña de diseño.

  • Error de configuración en una compuerta paralela [4.3] [5.0] [5.1]
    Se corrigió que, al abrir y guardar el panel de una compuerta paralela, y luego de proteger el paquete, deje ver el grafo, porque ocurría que por el error de la compuerta paralela no dejaba ver el grafo.

  • Proteger un paquete con Worklets desde la aplicación de escritorio [5.0] [5.1]
    Se corrigió el siguiente error: “Reason: Operand type clash: uniqueidentifier is incompatible with tinyint”, que ocurría al proteger un paquete con Worklets desde la aplicación de escritorio.

  • No detecta nombre cambiado de paso conectado al abrir compuerta [5.1]
    Se corrigió que, si estaba conectada a una tarea de usuario que se le cambió el nombre desde el grafo, muestre el nombre en la conexión.

  • No exporta paquete con alcance de ordenado de grupos [5.0] [5.1]
    Se corrigió que, si alguno de los pasos de alguna versión del paquete tiene alcance de ordenado de grupos pueda exportar el paquete.

  • Se permite que los pasos tengan un progreso superior a 100 [5.0]
    Se limitó el progreso a un valor no superior a 100, por ejemplo, en un paso de fin.

  • Eliminar un dominio con un dato asociado rompe el dato [5.1]
    Se corrigió que, cuando se elimine un dominio se asigne otro dominio por defecto. Antes ocurría que al editar ese dato, el panel derecho quedaba cargando indefinidamente y se lanzaba un error en consola.

  • No permite cambiar descripción de plantillas y versiones [5.1]
    Se corrigió para que se pueda permitir cambiar la descripción, antes ocurría que al cambiar la descripción saltaba un cartel abajo que decía “No se realizaron cambios” y no se cambia nada.

  • No se están mapeando los permisos heredados que se estén asignando a un grupo [5.0] [5.1]
    Si se define que en cierto paquete “P”, cierto grupo tenga permisos “X”, se corrigió, que al acceder como usuario y parte de ese grupo, se obtengan dichos permisos, cosa que no ocurría.

  • Error en auditorías de paquetes en Oracle [5.0] [5.1]
    Se corrigieron las validaciones de las auditorías.

  • Controlar largo de nombres en pasos de un proceso [5.1]
    En los paneles correspondientes a los pasos, se limita el largo de los nombres a 256 caracteres para evitar perder información que se almacena en la base de datos.

  • En vistas mobile se ven cortadas las ventanas emergentes [5.1]
    Se centraron las ventanas emergentes de todos los sitios para que ocupen todo el ancho posible de la pantalla, ya que pasaba que se mostraba la mitad de la ventana emergente al abrirla.

  • No se permite utilizar parámetros de tipo contraseña en tarea de servicio [5.0] [5.1] [TÉCNICO]
    A la hora de seleccionar los parámetros a utilizar en una tarea de servicio, se corrigió, que no aparecen para seleccionar los parámetros de tipo contraseña.

  • Mejoras en los estilos mobile [5.1]
    Se corrigió la vista mobile los paneles en los sitios de OMM, SAM y BPM, de modo que al abrirlos estos se adapten al espacio de la pantalla, debido a que antes no se podía ver algunos paneles por los tamaños de pantalla.

Errores corregidos - Sitio Web

A continuación se listan los errores corregidos en el Sitio Web para la versión 5.1.1 de Q-flow. Si la corrección del error se incluyó como "fix" para alguna versión anterior, se indicará mediante etiquetas con las versiones correspondientes.

Adicionalmente, si el contenido es de carácter técnico, será indicado mediante la etiqueta correspondiente.

  • Retroceder a una tarea de usuario hace que no se manden todas las tareas [5.0] [5.1]
    Se corrigió que, al retroceder a una tarea de usuario en la pestaña de seguimiento, se envía la tarea de nuevo a todos los usuarios incluyendo al que hizo el retroceso.

  • Error en creación de vínculos [5.0] [5.1]
    Al crear un vínculo, por defecto en la sección de destino aparece seleccionado en la misma pestaña, se corrigió que al guardar y abrir el vínculo lo abra en la misma pestaña.

  • No se cargan las vistas destacadas si no se tiene permisos sobre alguna de ellas [5.0] [5.1]
    Se corrigió que, si no se tiene permiso no lance error y se cargue el menú de las vistas destacadas.

  • Acciones de colas de trabajo en instancias hijas [5.0] [5.1]
    En las instancias hijas, se corrigió, que las acciones de las colas de trabajo no aparecían.

  • Recurso de iniciar proceso en historial de Q-flow [5.1]
    Se cambió el recurso de “iniciar workflow” a “iniciar proceso”.

  • Dependencias de salida de dato oculto editable [5.1]
    Se corrigió que, en el sitio web al ingresar un valor incorrecto para un dominio de tipo "Combobox" con una dependencia de entrada y otra de salida, con un dato del dominio que está oculto editable los datos se limpien, antes sucedía que al ingresar un valor en la dependencia de entrada válido, se borraba y se asignaba un valor incorrecto el valor no se limpiaba.

  • Previsualización de archivos de formato ".rar" [5.1]
    En el componente de carga de adjuntos, sucedía que incorrectamente se intentaba de previsualizar archivos comprimidos. Se quitó la previsualización para adjuntos con extensión “.rar”.

  • Dato decimal sólo lectura editable convierte su parte decimal en entera [5.0] [5.1]
    Se corrigió que, los valores que tenían decimales, por ejemplo “4,27”, al responder la tarea no modifique el valor del dato decimal.

  • Dato de aplicación que no está en el alcance da un error en consola [5.0] [5.1]
    Ahora se da un error más amigable indicando cuál es el dato que falta.

  • Formularios de notificación tienen el título de responder tarea [5.1]
    En un paso de notificación de usuario, el título que previamente decía “responder tarea” se cambió por “notificación”.

  • En vistas mobile se ven cortadas las ventanas emergentes [5.1]
    Se centraron las ventanas emergentes de todos los sitios para que ocupen todo el ancho posible de la pantalla, ya que pasaba que se mostraba la mitad de la ventana emergente al abrirla.

  • Camel case distinto en JS que en NewtonSoft [5.0] [5.1] [TÉCNICO]
    En la versión 11.0.1 de NewtonSoft se cambió el ToCamel case para que las palabras completas que sigan de un espacio se transformen todo a minúscula, ej “DATO 1”.

  • Error en “GetMyLatestTasks” en worker [5.0] [5.1] [TÉCNICO]
    Se corrigió un error al no tener cargado el ID del usuario cuando inicializa el worker.

  • Cross-site scripting (XSS) en gestión de vínculos y favoritos [4.2] [4.3] [5.0] [5.1] [TÉCNICO]
    Se agregaron controles al crear favoritos y vínculos con una URL maliciosa. Se agregaron controles para prevenir la ejecución de scripts en los mismos.

Se crea parámetro de sistema de lista con previsualización y otro de archivo

Se crearon dos nuevos tipos de parámetros de sistema. Uno de ellos es una lista con previsualización que corresponde al tema de la instancia. El otro es un archivo que corresponde al logo y logo en miniatura.

Agregar vencimiento al caché de SystemConfiguration

Se agregó un parámetro al archivo web.config para indicar la duración del caché en segundos: SystemParametersCacheDuration. Pasado este tiempo, se vence el diccionario en memoria de la configuración de sistema.

Agregar la opción de Redis como caché

Se agregó la posibilidad de usar Redis como caché, de modo que hay dos opciones ahora: Redis y caché por defecto, el cual es un caché en memoria. Esta configuración se encuentra en el archivo system.config. Se recomienda usar el Configuration Editor para configurar los valores correspondientes. Para más información, ver el manual de Instalación y configuración.

Creación de WebAPI para suplantar a los servicios

Se creó una webAPI que reemplaza a los servicios de consola de Q-flow.

Esta WebAPI permite desplegar los servicios del backend en el IIS y permitir una comunicación standard con los mismos al exponer servicios REST.

API de servicios REST

Se creó una API REST con los servicios que ya se ofrecían como SOAP, a excepción de los servicios WebSharepoint y WebView (que no se encuentran en la API).

Se pueden invocar directamente y usar con una interfaz Swagger. Incluye también un método para autenticarse con un token. Este método requiere ingresar las credenciales del usuario y el identificador de la instancia en la que se encuentra, y se obtiene un token que se puede pasar en el cabezal de las solicitudes a la API. Si no se usa este modo, se requiere una nueva autenticación en cada invocación.