Compartir a través de


Integración de flujos de nube con Power Apps

Power Platform ofrece una gama de capacidades que le permiten crear lógica de negocios para sus Power Apps. En este artículo se describen los métodos principales y se proporcionan instrucciones sobre cuál utilizar.

Power Apps con Power Fx

Power Fx es el lenguaje de programación funcional de código bajo compartido por Excel y Power Platform. Mediante el uso de conectores Power Platform, puede acceder a los datos y crear lógica de aplicación personalizada.

Power Fx admite:

  • En vivo: los lienzos de Power Apps recalculan como lo hacen las hojas de cálculo de Excel. A medida que interactúa con la aplicación, Power Fx está en segundo plano realizando solicitudes de datos y manteniendo actualizado el estado de la aplicación con Dataverse.

  • Delegación: Power Fx delega automáticamente lo que puede al servidor. Funciones como Filter(), Lookup() y Search() permiten que una aplicación acceda a los datos mediante el filtrado del lado del servidor, de modo que solo se incorporen a la aplicación los datos relevantes para admitir la experiencia y la lógica funcional. Cuando la delegación no es posible, las funciones se ejecutan en el contexto JavaScript local (es decir, en el explorador local).

  • Optimizado para Dataverse: Dataverse es el servicio de almacenamiento de datos nativo para Power Apps y como tal, hay menos capas involucradas en el uso Power Fx con Dataverse (acceso de baja latencia). Además, Power Fx admite relaciones de varios a uno y de uno a varios disponibles en Dataverse.

  • Fuera de línea: los datos de Dataverse se pueden llevar sin conexión con un reproductor móvil para su uso en el campo. Los cambios en ambos lados se sincronizan cuando se vuelven a conectar. La lógica de negocios definida en la aplicación se ejecuta incluso sin conexión.

Power Automate

Con un servicio de flujo de trabajo de poco código creado sobre el ecosistema de conectores de Power Platform, Power Automate agrega las siguientes capacidades al compilar Power Apps:

  • Asincrónico: un flujo de nube de Power Automate es inherentemente asincrónico. Cuando se inicia un flujo, utiliza un sistema de colas para administrar las distintas subtareas. Su naturaleza asincrónica Power Automate hace muy adecuado para secuencias lógicas complejas de ejecución más larga.

  • Registro detallado: todos los flujos crean un registro de lo que sucedió cuando se ejecutaron, denominado historial de ejecución. El registro proporciona trazabilidad y garantiza que haya un registro de auditoría de lo que sucedió y por qué.

  • Multiconector: aunque puede crear lógica de varios conectores Power Apps, el rendimiento se degrada a medida que aumenta el número de conectores debido a la naturaleza activa de Power Apps. Estos escenarios complejos de varios conectores son un excelente lugar para usar Power Automate, lo que descarga estos casos de la ejecución en vivo en la aplicación.

Los complementos de Dataverse con Power Fx

Muchos desarrolladores confían en Complementos de Dataverse para escribir la lógica empresarial. Como una opción de bajo código, Power Fx ahora se puede usar para crear complementos.

Estos complementos aportan delegación y optimizaciones de Dataverse:

  • En la transacción: los complementos de Power Fx se ejecutan en la transacción de Dataverse que actualiza la base de datos. Si hay un problema al actualizar una tabla secundaria, todos los cambios se revierten, manteniendo la base de datos en un estado coherente.

  • Reporte de errores: notificar un error hasta el usuario final en una aplicación o flujo es tan sencillo como llamar a la función Error(). El usuario final ve el error como el resultado de su acción, toma medidas correctivas inmediatas y vuelve a intentar la operación.

  • Punto de estrangulamiento común: No puede evitar el complemento. La lógica de negocios común se escribe y mantiene en un solo lugar para todas las aplicaciones, flujos y otros puntos de conexión de Power Platform.

  • Eficiencia: los complementos pueden realizar varias llamadas sucesivas a conectores y bases de datos sin la sobrecarga de almacenamiento y red de varios pasos de un flujo de Power Automate.

  • Mayor seguridad: la compatibilidad con redes virtuales de Dataverse le permite proteger las conexiones salientes a los recursos de la red privada. De esta manera, puede administrar Power Platform de forma segura su tráfico de salida de acuerdo con su política de red. Además, puede aislar y proteger los datos de los clientes envolviendo el acceso en un complemento del lado del servidor.

Cuándo usar qué

Power Fx debe ser el método principal para crear lógica de negocios en Power Apps. Sin embargo, como cualquier herramienta, tiene fortalezas y limitaciones, y hay situaciones en las que el uso de otras herramientas podría ser más apropiado.

Casos de uso de baja latencia

Si el enfoque es la baja latencia en un Power App, la naturaleza en vivo de una función de Power Fx significa que tiene la mejor capacidad para entregar lógica de negocios de baja latencia a través de Power Fx. Lograr una latencia baja depende en gran medida de la complejidad de la tarea y del tamaño del conjunto de datos involucrado. Es importante destacar que, aunque se puede lograr una baja latencia a través de Power Fx, lo que se intenta hacer y cómo está diseñado tienen una relación directa con el rendimiento. Más información: Consideraciones de rendimiento con Power Apps.

Para escenarios comunes de acceso a datos, Dataverse combinado con Power Fx es el enfoque más rápido.

Secuencias complejas y multi-conector

Para secuencias complejas de acciones que involucran múltiples conectores, Power Automate sirve como un mecanismo asincrónico para descargar el procesamiento del Power App. Su naturaleza asincrónica permite al Power App iniciar un flujo de trabajo y continuar sus operaciones sin esperar una respuesta, lo que mejora directamente la experiencia del usuario.

Lógica de negocios centralizada

Cuando la lógica empresarial implica controlar los cambios en la base de datos, como validar los datos antes de agregar un registro, Dataverse los complementos combinados con Power Fx son la solución recomendada. Este enfoque es único porque se integra directamente con la transacción de Dataverse, lo que permite que los errores se comuniquen al usuario que inició el cambio. Este mecanismo de comentarios permite a los usuarios corregir y volver a intentar sus acciones, lo que garantiza la coherencia de la base de datos durante todo el proceso. Los complementos sirven como un punto de control centralizado, aplicando una lógica empresarial coherente en todas las aplicaciones (tanto lienzo como basadas en modelos), flujos y otros puntos finales.

Además, de manera similar a Power Automate, los complementos de Dataverse con Power Fx proporcionan una ubicación centralizada para definir acciones personalizadas que no necesariamente alteran la base de datos. Esta configuración facilita el intercambio de lógica empresarial basada en Power Fx a través de todos los puntos de Power Platform conexión, lo que promueve la coherencia y la reutilización.