Microaplicaciones

Crear microaplicaciones

Un componente clave al crear microaplicaciones es planificar el flujo de trabajo teniendo presente el esquema de base de datos de la aplicación de destino. De este modo, se pueden identificar las API para crear la integración, lo que es necesario para generar una integración personalizada.

Existen innumerables aplicaciones que se pueden integrar en Citrix Workspace. Seleccione una aplicación de destino que contenga información de interés para los usuarios de Citrix Workspace. Las aplicaciones que se utilizan habitualmente para tareas rápidas y que no son intuitivamente accesibles para los usuarios son de especial interés. Las aplicaciones que permiten a los usuarios interactuar directamente desde Citrix Workspace tienen mucho más valor que las aplicaciones que simplemente permiten notificar a los usuarios. Algunos ejemplos incluyen la aprobación, la creación y la adición de elementos.

A continuación, identifique casos de uso clave para la aplicación empresarial de destino seleccionada que desea integrar en Citrix Workspace. Por ejemplo:

  • Crear solicitud de días libres/vacaciones
  • Aprobar solicitud de días libres/vacaciones
  • Buscar aprobaciones pendientes
  • Marcar tarea como completada
  • Notificar al usuario de las tareas asignadas que se han creado o modificado
  • Aprobar factura

Una vez conocidos los casos de uso, el siguiente paso consiste en identificar las API que nos permitirán extraer información relevante del sistema de destino o inyectar datos en él.

A continuación, se muestra un supuesto de diseño de un flujo de trabajo utilizando un caso de uso de aprobación de facturas. Para obtener toda la información, consulte Diseño de flujo de trabajo para supuesto de ejemplo.

Consideraciones importantes

Revise las siguientes consideraciones y limitaciones antes de diseñar el flujo de trabajo:

  • Solamente puede acceder a los datos de una página que están a una relación de distancia. Esto significa que, al generarse una página, solo puede referirse a datos directamente relacionados.
  • Todas las personalizaciones se realizan desde el contexto de un correo electrónico de usuario. Esto significa que, si está creando notificaciones o páginas personalizadas, el correo electrónico del usuario puede estar a un máximo de un nivel de relación.
  • Solo puede establecer enlaces de acción Ir a la página para notificaciones asociadas a una página basada en la misma tabla que la notificación.
  • Un cambio genera una notificación. Si el destinatario está en la tabla relacionada, la relación debe ser 1:1. No se admiten relaciones 1:N.
  • La estructura de la base de datos debe ser estrecha debido a las limitaciones del servidor. Esto debe tenerse en cuenta al diseñar los puntos finales y crear una estructura de base de datos.
  • Si ha configurado campos personalizados que contienen datos altamente confidenciales, como credenciales, claves de API o secretos, los datos no están protegidos. Esos datos aparecen en los registros de depuración y en otros lugares.

Nota:

Todos los administradores con acceso a las microaplicaciones de Citrix Workspace tienen acceso a los datos que se encuentran en la caché. Los administradores no tienen acceso a las credenciales de orígenes de datos.

Fundamentos de la creación de microaplicaciones

Las microaplicaciones se componen de páginas o notificaciones de eventos, y generalmente ambas.

  • Las notificaciones son microaplicaciones controladas por eventos que notifican automáticamente a los usuarios cuando algo requiere su atención; por ejemplo, una tarjeta en el feed de actividades de Workspace. Estas microaplicaciones incluyen un Nuevo informe de gastos por aprobar y un Nuevo curso disponible para registro. En la siguiente lista, se muestran los tipos de desencadenantes de eventos disponibles:

    • Nuevos registros: Envía una notificación cuando se crea un nuevo registro en el origen del registro (SoR).
    • Registros cambiados: Envía una notificación cuando cambia un registro existente en el SoR.
    • Registro coincidente: Envía una notificación cuando los registros coinciden con una consulta definida en el momento específico en el SoR.
    • Eliminar registros: Envía una notificación cuando se elimina un registro en el SoR.
    • Notificación periódica: (acción del usuario) Envía periódicamente notificaciones no basadas en datos.
    • Informe periódico: Envía notificaciones periódicas con datos de informe resumidos (agrupación) durante un intervalo de tiempo especificado.
    • Recordatorio de fecha: Envía una notificación a la hora especificada, antes o después del valor de la columna de fecha de los registros.
  • Las páginas son microaplicaciones iniciadas por el usuario que están disponibles como acciones en Workspace y facilitan la realización de acciones de inicio. Por ejemplo, Solicitar días libres, Enviar un tíquet de servicio de asistencia y Buscar en el directorio. La lista siguiente muestra las plantillas de tipo de página:

    • Detalles: Genera una página en la que se muestran detalles estáticos de un registro individual del SoR.
    • Formulario: Genera una página modificable que proporciona detalles estáticos, además de la posibilidad de introducir datos de usuario en la página.
    • Tabla: Genera una página basada en las distintas tablas de datos que se cargan desde el SoR de la aplicación de destino.
    • Contenido estático: Genera una página que proporciona información estática y no procesable, como titulares, mensajes de error y recordatorios.

Agregar una nueva microaplicación

Este procedimiento es el mismo para cualquier microaplicación en blanco que desee crear.

Siga estos pasos:

  1. En la página Integraciones de microaplicaciones, seleccione el menú que aparece junto a la integración a la que quiere agregar la microaplicación.
  2. Seleccione Agregar microaplicación.
  3. Seleccione Plantilla en blanco para crear su propia microaplicación, en función de sus necesidades empresariales. Tras agregar la microaplicación en blanco, aparece bajo la integración relacionada en la página Integraciones de microaplicaciones.
  4. Vuelva a la página Administrar microaplicaciones y seleccione Microaplicación en blanco en la lista, bajo la integración. Se abrirá la página Propiedades.
  5. Asígnele un nombre y una descripción.
  6. Seleccione Icono de microaplicación y elija un icono en el menú. Hay iconos de aplicación, iconos de acción y notificación e iconos de microaplicaciones y datos entre los que elegir.

Diseño de flujo de trabajo para supuesto de ejemplo

Tiene un sistema de aprobación de facturas y necesita incluir los siguientes casos de uso en nuestro flujo de trabajo:

  • A los aprobadores se les deberá notificar cuando haya nuevas aprobaciones.
  • A los solicitantes se les deberá notificar cuando su solicitud haya sido aprobada o denegada.
  • Los aprobadores necesitan información sobre las facturas, incluidos el estado, el precio total, los detalles del solicitante (nombre/correo electrónico/teléfono) y una lista de detalles del artículo de línea (nombre/precio/cantidad).
  • Los solicitantes necesitan información sobre las facturas, incluidos el precio total, la lista de detalles de los aprobadores (nombre/correo electrónico/teléfonos) y una lista de detalles del artículo de línea (nombre/precio/cantidad).

Examinemos ahora nuestra base de datos, y sus relaciones de tabla: Esquema de base de datos y sus relaciones de tabla

Diseñar una microaplicación

A partir de aquí, sabemos que necesitamos cuatro notificaciones y cinco páginas.

Necesitamos crear cuatro notificaciones: dos para aprobadores y dos para solicitantes. El correo electrónico del aprobador y el solicitante están en la tabla de usuario que tiene una relación directa con las tablas approvers y invoice-detail.

Debe crear cinco páginas, una para cada uno de los siguientes elementos: lista de facturas de aprobadores, detalles de facturas de aprobadores, lista de facturas de solicitantes, detalles de facturas de solicitantes y detalles de artículos de línea de aprobadores y solicitantes.

Generar las notificaciones

Comience por crear las notificaciones. Todas las consideraciones y limitaciones se aplican a las notificaciones. Las notificaciones debe enviarlas el usuario. El correo electrónico del usuario debe estar en la tabla o a un nivel de relación de distancia como máximo.

Genere las notificaciones para los aprobadores en la tabla approvers:

  • notificación de nuevo registro en la tabla
  • notificación de cambio de estado

Genere las notificaciones para los solicitantes en la tabla invoice_detail:

  • notificación de nuevo registro en la tabla
  • notificación de cambio de estado

Limitaciones de diseño (aprobadores)

Los datos de la tarjeta de feeds del aprobador solo se pueden extraer de estas tablas:

  • approvers (tabla principal)
  • invoice-detail ( relación invoice_id)
  • users ( solo relación approver_id)

Esto significa que no puede obtener ningún dato sobre el solicitante en la tarjeta de feeds, ya que las personalizaciones se hacen a partir del contexto del correo electrónico de un usuario. Por ejemplo, si desea tener el nombre del solicitante, debe cambiar el esquema de la base de datos y agregar el nombre del solicitante a la tabla invoice_detail.

Limitaciones de diseño (solicitantes)

Los datos de la tarjeta de feeds del solicitante solo se pueden extraer de estas tablas:

  • invoice-detail (tabla principal)
  • users ( solo relación requestor_id)

Esto significa que no puede obtener datos de line_items y approvers debido a que la relación es 1:N. Por ejemplo, el texto de tarjeta de feeds Su solicitud ha sido aprobada por manager@empresa.com. no es posible. Si necesita esta información, debe cambiar el esquema de la base de datos y agregar esta información a invoice_detail.

Conclusiones

A partir de aquí, puede determinar que debe haber dos páginas invoice_detail:

  • Aprobador de detalles de factura que creó en la tabla approvers
  • Solicitante de detalles de factura que creó en la tabla invoice_detail

Ahora puede reconocer que tiene una limitación aquí con la página Aprobador de detalles de factura. Puede agregar todos los datos de las tablas approvers (tabla principal), invoice-detail (relación invoice_id) y users (solo relación approver_id). Sin embargo, tiene el mismo problema que con la notificación. Falta información del solicitante y la tabla line_items está demasiado lejos: es decir, dos niveles de relación.

Solución temporal

Hay una solución temporal para obtener datos de una tabla situada a dos niveles de relación.

Opción 1 Use GoToPage. Puede agregar un tercer botón, como Ver detalles y transferir a los usuarios de esta página a la página Solicitante de detalles de factura. Ha creado esa página en la tabla invoice-detail, por lo que las tablas requestor y line_items están a solo un nivel de distancia.

Opción 2 Utilice el componente de tabla desvinculada: anule la selección de la opción Usar registros relacionados con la página de detalles y puede seleccionar line_items. Así se crea una tabla con todos los elementos. Debe agregar un filtro para seleccionar sólo artículos para la factura en particular. line_items invoice_id =approvers invoice_id. Puede usar un enfoque similar para requestor. Como la tabla está sobre line_items, también puede agregar datos de una tabla que tiene relación 1:1 o N:1 con line_items.

Generar las páginas

Necesita crear cinco páginas, una para cada una de estas tablas:

  • lista de facturas de aprobadores
  • detalles de factura de aprobadores
  • lista de facturas de solicitantes
  • detalles de factura de solicitantes
  • detalles de artículos de línea de aprobadores y solicitantes

Si necesita dar cabida a permisos detallados basados en asignaciones de usuario, use una microaplicación independiente. Por ejemplo, es posible que el flujo de trabajo requiera que solo determinados usuarios tengan acceso a una página de creación. Para obtener una descripción general completa de la interfaz de usuario del generador de páginas y sus componentes, consulte Componentes del generador de páginas. El recetario que aparece a continuación incluye un proceso detallado en el que se aprovechan componentes útiles para crear páginas de detalles y de lista.

Recetario de microaplicaciones

Siga estos ejemplos de tipos comunes de notificaciones y páginas que puede crear con una lista de ingredientes (componentes) proporcionados.

Notificaciones

Genere una notificación para enviar elementos nuevos o modificados desde su flujo de trabajo a los usuarios. Seleccione uno de los tipos de desencadenantes de eventos que se muestran a continuación y personalice el evento en el generador. Para obtener más información, consulte Generar notificaciones de eventos.

Desencadenantes de eventos:

  • Nuevos registros: Envía una notificación cuando se crea un nuevo registro en el origen del registro (SoR).
  • Registros cambiados: Envía una notificación cuando cambia un registro existente en el SoR.
  • Registro coincidente: Envía una notificación cuando los registros coinciden con una consulta definida en el momento específico en el SoR.
  • Eliminar registros: Envía una notificación cuando se elimina un registro en el SoR.
  • Notificación periódica: (acción del usuario) Envía periódicamente notificaciones no basadas en datos.
  • Informe periódico: Envía notificaciones periódicas con datos de informe resumidos (agrupación) durante un intervalo de tiempo especificado.
  • Recordatorio de fecha: Envía una notificación a la hora especificada, antes o después del valor de la columna de fecha de los registros.

Página de lista

Genere una página de lista para mostrar todos los elementos disponibles en el flujo de trabajo. Comience con los siguientes componentes. Para ver la página terminada y los detalles paso a paso para reproducirla, consulte Generar una página de lista.

Componentes:

  • Tabla: Agrega una tabla definiendo el origen de la tabla, los filtros y las columnas. Se pueden agregar acciones de enlace a páginas. Se deben configurar consultas personalizadas para limitar la exposición de los datos.
  • Entrada de texto: Define el origen de texto especificando la tabla de datos, la columna y el valor que se van a cargar en la página introducida por el usuario. El componente se puede marcar como opcional. El ancho del campo se puede modificar. Las reglas de validación se pueden configurar en función de una longitud mínima o máxima o un patrón de texto para identificar la entrada del usuario.

Página de detalles

Genere una página de lista para ver los detalles de un elemento disponible en el flujo de trabajo. Comience con los siguientes componentes. Para ver la página terminada y los detalles completos para reproducirla, consulte Generar una página de detalles.

Componentes:

  • Texto: Define el origen y el formato del texto para carga desde la caché en la página.
  • Botón Atrás: Permite a los usuarios volver a la página anterior.
  • Texto estático: Define texto estático que aparecerá en la página.
  • Cuadrícula flexible: Le ofrece un mayor control sobre el posicionamiento de los componentes en las páginas. Es útil al diseñar páginas destinadas a dispositivos con pantallas más grandes. Establezca la etiqueta y el número total de celdas que desee en la cuadrícula.
  • Tabla: Agrega una tabla definiendo el origen de la tabla, los filtros y las columnas. Se pueden agregar acciones de enlace a páginas. Se pueden configurar consultas personalizadas basadas en los correos electrónicos de los usuarios para limitar la exposición de los datos.

Página de creación

Genere una página de creación para agregar elementos al flujo de trabajo. Comience con los siguientes componentes. Para ver la página terminada y los detalles completos para reproducirla, consulte Generar una página de creación.

Componentes:

  • Texto estático: Define texto estático que aparecerá en la página.
  • Cuadrícula flexible: Le ofrece un mayor control sobre el posicionamiento de los componentes en las páginas. Es útil al diseñar páginas destinadas a dispositivos con pantallas más grandes. Consta de elementos de cuadrícula. Establezca la etiqueta y el número total de celdas que desee en la cuadrícula.
  • Entrada de texto: Define el origen de texto especificando la tabla de datos, la columna y el valor que se van a cargar en la página introducida por el usuario. El componente se puede marcar como opcional. El ancho del campo se puede modificar. Las reglas de validación se pueden configurar en función de una longitud mínima o máxima o un patrón de texto para identificar la entrada del usuario.
  • Seleccionar: Permite a los usuarios elegir entre una lista de valores. Se puede rellenar con datos del sistema de origen o puede introducirse la lista de valores manualmente. Se pueden agregar acciones.
  • Buscar: Permite a los usuarios buscar a través de una gran cantidad de valores y seleccionar un valor al buscar otra cosa.
  • Botón: Agrega a la página un componente en el que se puede hacer clic con acciones y lógica.

Otros recursos

Consulte esta descripción general de Citrix Workspace Intelligence y el servicio de microaplicaciones en Vídeo: Descripción general de Microaplicaciones.

Obtenga más información sobre cómo crear integraciones personalizadas y microaplicaciones en Vídeo: Integraciones personalizadas de microaplicaciones.

Obtenga más información sobre cómo obtener una instancia de prueba en Portal para desarrolladores de Citrix Workspace.

Aquí aparece una guía rápida para configurar una Microaplicación RSS: Recibir notificaciones cuando haya un boletín de seguridad de Citrix.

Visite el Foro de debate sobre microaplicaciones.