Que tipo de aplicacion es la mejor para mi caso. ¿que ventajas y que ventajas tiene cada opcion?
Con este articulo pretendo responder a esta pegunta y crear una guía clara para saber cuándo debemos usar una opción u otra.
Características generales
Las aplicaciones en Canvas o de lienzo, son aplicaciones basadas en un lenguaje de programación en Power FX, muy al estilo Excel. Son ideales para crear aplicaciones de cualquier tamaño. Se generan de manera rápida a raíz de componentes ya predefinidos, aunque también tenemos la posibilidad de crear Componentes Personalizados con propiedades a medida. Ambos tipos de componentes tienen unas propiedades que podremos codificar con Power FX para que se comporten de una manera determinada.
Las aplicaciones basadas en modelos por contra son aplicaciones que nacen a raíz del modelo de datos. Son perfectas para crear aplicaciones más complejas. Mientras que en las Canvas trabajaremos con botones, etiquetas, galerías etc....en las aplicaciones basadas en modelos configuraremos vistas, formularios, gráficos en tablas de Dataverse que podremos usar en nuestra aplicación basada en modelos. Aunque realmente este tipo de aplicaciones son No Code, se pueden personalizar y programar ciertas cosas mediante JavaScript.
Orígenes de datos
Las aplicaciones Canvas soportan múltiples orígenes de datos (Excel, Dataverse, SQL, SharePoint Online...hay más de 200 conectores para estas aplicaciones), en cambio las aplicaciones basadas en modelos solo soportan Dataverse como único origen de datos.
Personalización
En las aplicaciones Canvas podremos implementar cualquier logo, fondo, color o personalización es muy sencillo, incluso las fuentes propias si están instaladas en el equipo se podrán usar en las aplicaciones Canvas. Tener la posibilidad de desarrollar componentes propios o descargarlos desde la web también nos permite que sean mucho más personales. Todo ello hace que estas aplicaciones sean mucho más atractivas para los usuarios.
Las aplicaciones basadas en modelos se pueden personalizar, sí, pero no tienen una capa tan grande de personalización ni es tan intuitivo como en las Canvas Podremos ocultar y mostrar botones, crear gráficas y vistas pero no tenemos tanto poder de personalización como en las Canvas.

Aplicaciones responsivas
Las aplicaciones de lienzo por contra no son responsivas, debemos de utilizar contenedores y ajustar las posiciones y lo tamaños para poder hacerlas responsivas.
Las aplicaciones basadas en modelos son aplicaciones responsivas por defecto, podemos usarlas en cualquier tipo dispositivo y en cualquier resolución y la aplicación se verá correctamente.
Licenciamiento
En temas de licenciamiento también hay diferencias. Las aplicaciones basadas en modelos requieren siempre de una licencia premium ya que solo se pueden usar con Dataverse como origen de datos.
Las de lienzo, si tienen algún conector premium (incluido Dataverse) también requerirán Power apps premium, sino tienen conectores premium valdra con la licencia gratuita de PowerApps.
El tema del licenciamiento siempre da para mucho, en este caso creo que es interesante mencionar que con la licencia de Power Apps premium viene incluida Power Automate premium dentro del mismo contexto de la aplicacion, es decir…siempre que el Power Automate se lance desde la misma aplicación.
Seguridad
Este punto daría para un artículo completo. Es un punto que siempre preocupa a todas las compañías. Ambos tipos de aplicaciones están protegidas por una seguridad a nivel de entorno, de aplicación. La diferencia de la seguridad está en el origen de los datos. Como las Model Driven solo usan Dataverse, los datos estarán protegidos por roles de Dataverse que nos darán acceso a tablas y también nos darán una seguridad a nivel de registro. En el caso de las Canvas como podemos tener diferentes orígenes de datos la seguridad en el back-End vendrá dada por ese origen de datos.
Ambos tipos de aplicaciones pueden compartirse tanto con usuarios internos como externos.

Accesibilidad
Las aplicaciones basadas en modelos vienen ya preparadas para personas con discapacidades visuales, auditivas o motoras. Es una gran ventaja cuando vamos a diseñar aplicaciones que puedan ser utilizadas por personas con estas discapacidades, un tema que siempre deberíamos de tener en cuenta, ya que muchas veces no sabemos quién puede llegar a utilizar estas aplicaciones.
En las aplicaciones de lienzo deberemos de diseñar y configurar las aplicaciones para que sean accesibles, es decir, tienen capacidad para ser accesibles, pero tendremos que configurarlo.
Casos Prácticos
Casos típicos de aplicaciones en Canvas
- Inscripción al evento
- Solicitudes de aprobación.
- Registros de datos
Casos típicos de aplicaciones basadas en modelos
- Diseño de procesos de negocio y flujos de trabajo
- Gestión de oportunidades
- Gestión del servicio de atención al cliente
- Gestión de eventos
Resumen
Caracteristica | Canvas | Model Driven |
---|---|---|
Lenguaje | Power FX | No code (JS) |
Conectores | + 200 conectores | dataverse |
licenciamiento | gratis si no usamos conectores premium | Premium |
Presonalizacion | Totalmente presonalizable | Parcialmente presonalizable |
Experiencia de usuario | Orientado a componente sin codigo | Usando expresiones de Power FX |
Responsive | Bajo Programacion | Si |
Seguridad | Basada en el origende datos | Roles de seguridad de Dataverse |
Validacion de datos y Bussines rules | Manual | Integrada |
Complejidad | Adecuado para diversas aplicaciones. | Ideal para aplicaciones complejas |
Añadir comentario
Comentarios