Canvas Apps en Power Apps: construir una aplicación de registro de datos
João Barros
04 de November de 2024
1 min de lectura
Las Canvas Apps son aplicaciones drag-and-drop en Power Apps donde el creador controla el layout píxel a píxel. Son la elección correcta para aplicaciones móviles personalizadas, formularios complejos y la sustitución de procesos en Excel.
Crear y conectar a una fuente de datos
1. make.powerapps.com → Crear → App de lienzo en blanco (tablet/phone)
2. Ver → Fuentes de datos → Añadir datos → SharePoint
→ Seleccionar sitio y lista: "Registros_Incidentes"
3. La lista queda disponible como: Registros_Incidentes
Galería conectada a la fuente
Control: Galería vertical
Items (propiedad): SortByColumns(
Filter(Registros_Incidentes, Estado = ddEstado.Selected.Value),
"Titulo", Ascending
)
// ddEstado = DropDown con opciones: "Todos","Abierto","Cerrado"
// Si ddEstado = "Todos", mostrar todo:
Items: If(
ddEstado.Selected.Value = "Todos",
Registros_Incidentes,
Filter(Registros_Incidentes, Estado = ddEstado.Selected.Value)
)
Formulario de edición
Control: Edit Form (frmEditar)
DataSource: Registros_Incidentes
Item: gal.Selected // item seleccionado en la galería
// Botón Guardar:
OnSelect: If(
SubmitForm(frmEditar),
Notify("¡Guardado con éxito!", NotificationType.Success),
Notify("Error al guardar.", NotificationType.Error)
)
// Botón Nuevo registro:
OnSelect: NewForm(frmEditar); Navigate(scrFormulario)
Fórmulas Power Fx esenciales
// Filtro combinado (texto + dropdown)
Filter(
Clientes,
(txtSearch.Text = "" || StartsWith(Nombre, txtSearch.Text)) &&
(ddRegion.Selected.Value = "Todas" || Region = ddRegion.Selected.Value)
)
// Calcular días desde la creación
DateDiff(ThisItem.Created, Now(), TimeUnit.Days)
// Navegar entre pantallas con contexto
Navigate(scrDetalle, ScreenTransition.Fade, {itemSeleccionado: ThisItem})
Conclusión
Una Canvas App bien construida sustituye los procesos en Excel y email con una aplicación auditable, accesible en móvil e integrada con SharePoint o Dataverse. Invierta tiempo en la experiencia de usuario — controles bien nombrados y navegación intuitiva aumentan drásticamente la adopción.