En el último año las Power Apps se han convertido en una de las herramientas estrellas del ecosistema Microsoft. Para aquellos que aún no las conozcáis, Power Apps es el componente de la Power Platform que nos permite crear aplicaciones empresariales multiplataforma y responsive, sin apenas tener que "picar" código (el debate del low-code / no-code lo dejamos para otro post).
El continuo crecimiento tanto en funcionalidades como en adopción ha venido acompañado con la proliferación de documentación, recursos y una comunidad muy activa.
Como sabemos que los inicios en una nueva solución pueden ser abrumadores, hemos decidido hacer este artículo dónde vamos a proporcionar recursos y consejos para estar preparado antes de empezar a trabajar con la herramienta.
Uno de los principales recursos es sin duda la documentación oficial de Microsoft. Además, en este caso está muy bien redactada y estructurada, por lo que sin duda, es un recurso que siempre debemos tener en cuenta como primera opción de consulta.
La documentación se divide en 4 bloques principales, en función del rol:
La elección del tipo de aplicación puede ser un aspecto clave para el éxito del proyecto. Estos son los factores principales que deben considerarse para tomar la mejor decisión:
Normalmente se utilizan aplicaciones canvas o model-driven para procesos corporativos internos, mientras que los portales se suelen publicar para usuarios externos. Por otra parte, dentro de la organización, las tareas relacionadas con back-office suelen gestionarse con model-driven, mientras que las tareas de campo, operarios, comerciales, etc… suelen apoyarse en aplicaciones de tipo canvas.
Una de las mejores formas de familiarizarse con Power Apps es haciendo uso de plantillas. Estas nos inspirarán con sus diseños y, en algunos casos, incluso podremos aprovecharnos de funcionalidades preconstruidas como pueden ser: solicitudes de ausencias, gestión de casos, onboarding de empleados, entre otras.
Además, podremos modificar la plantilla para añadir funcionalidades propias y adaptar el diseño acorde a nuestras necesidades.
Nos gustaría destacar especialmente la plantilla Power Apps Training, muy útil para el aprendizaje de Power Apps.
Otro de los puntos clave para sacarle partido a Power Apps es conocer bien los conectores con los que podemos trabajar, ya que nos permitirán integrar nuestra aplicación con otros sistemas, tanto propios del ecosistema de Microsoft como externos. Hoy en día existen mas de 300 conectores disponibles:
Algunos de los Conectores más populares son:
Evidentemente, es recomendable hacer uso de estos siempre que sea posible, pero si ninguno cumple con nuestras necesidades, en última instancia siempre podemos crear un conector personalizado a través de una API, que se comunique con cualquier sistema externo. Claro está que, en este escenario, el correcto funcionamiento del conector depende de nosotros, y no de Microsoft.
Si nos decantamos por el uso de una aplicación de tipo lienzo (canvas), es importante conocer los elementos con los que trabajaremos, así como algunas de sus propiedades más utilizadas. Los controles permiten a los usuarios interactuar de distintas formas con la aplicación, por lo que vale la pena invertir algún tiempo en practicar con ellos e identificar los escenarios donde mejor se adaptan:
Estos son algunos los controles más utilizados:
Especial mención para el control Galería, el cual se utiliza para mostrar información procedente de una lista o colección de datos. También se pueden utilizar para tal propósito las tablas o los formularios, pero no proporcionan el nivel de personalización de una galería.
Además de los controles, las aplicaciones de tipo lienzo nos proporcionan una serie de fórmulas, que podremos utilizar y combinar para manipular datos, variables y colecciones. Estas fórmulas tienen una sintaxis muy parecida a Excel, por lo que el aprendizaje es relativamente sencillo para usuarios acostumbrados a trabajar con fórmulas de Excel.
Por ejemplo, dos de las funciones más utilizadas son sin duda Set y Collect, que nos permiten crear variables y colecciones, respectivamente.
Las variables y colecciones son dos elementos fundamentales en las aplicaciones de tipo canvas, ya que nos permiten almacenar temporalmente información en memoria, que no necesitamos guardar en ningún repositorio de datos. Por ejemplo, podemos utilizar una variable con un valor booleano para que, dadas unas condiciones, nos indique si podemos hacer visibles unos determinados controles en la aplicación. Por otra parte, se podría utilizar una colección para cargar toda la información del usuario justo al iniciar la aplicación, y no tener que consultar el conector de Office365 constantemente.
No se puede, o no se debería empezar con Power Apps, sin antes conocer Common Data Service (de ahora en adelante CDS). CDS es el repositorio de datos integrado en la Power Platform, y lo utilizan aplicaciones de Dynamics cómo Sales, Customer Service o Marketing, entre otras.
CDS es una base de datos relacional formada por entidades (tablas) que a su vez están compuestas de campos, claves, vistas, formularios, reglas de negocio, dashboards y gráficos.
Pero CDS es mucho más que un simple repositorio de datos. Nos aporta una potente capa de seguridad que aplica a toda la Power Platform. Esto significa que, si un usuario solo tiene acceso a ciertas entidades, dicha restricción se aplicará automáticamente tanto en una Power App, un Flow de Power Automate y un informe de Power BI.
No obstante, que sea el repositorio de datos de la Power Platform, no significa que sea obligatorio utilizarlo en todas las aplicaciones, al menos en las aplicaciones de tipo lienzo, ya que, en las aplicaciones basadas en modelos o portales, todos los datos tienen que proceder directa o indirectamente de CDS. Decimos de forma indirecta, cuando nos referimos a que CDS actuará de intermediario entre el repositorio de datos original y las aplicaciones, replicando los datos originales en entidades.
Sin embargo, si nuestra aplicación de lienzo no tiene un repositorio de datos definido como por ejemplo SQL, CDS es sin lugar a duda una de las mejores opciones, ya que tendremos a nuestra disposición multitud de entidades procedentes del Common Data Model, que podemos reutilizar o modificar para adaptarlas a nuestras necesidades.
¿Te imaginas tener los datos de Dynamics 365 y todas tus aplicaciones centralizados en un único sitio? CDS lo hace posible.
Como añadido a las plantillas, también tenemos la opción de consultar aplicaciones que han publicado usuarios de la comunidad y partners de Microsoft:
A parte de la documentación oficial de Microsoft, otro recurso muy interesante para formarse en Power Apps, y mucho más ameno e interactivo, es Microsoft Learn, en el que podremos encontrar rutas de aprendizaje especializadas en distintos aspectos de Power Apps.
Con la formación termina nuestra lista con los que consideramos los aspectos más importantes a tener en cuenta antes de empezar con Power Apps. De todas formas, como en cualquier proceso de aprendizaje, el mejor consejo que te podemos dar es que practiques lo aprendido todo lo que puedas, centrándote sobre todo en conseguir pequeños hitos, que poco a poco, irán formando una solución completa.
Esperamos que te haya resultado útil y que puedas empezar a hacer tus primeras aplicaciones en muy poco tiempo. Y recuerda, less code, more power ;)