¡Bienvenidos, muy buenos días tardes o noches , según donde me leas !
En este artículo, se presenta un procedimiento detallado para replicar un diseño en Power Apps basado en especificaciones previamente establecidas. El objetivo principal es migrar una tabla fija en SharePoint a un modelo de datos transaccional en SQL, asegurando la creación de tablas con llaves primarias para optimizar el rendimiento y la eficiencia del sistema. A través de una serie de pasos, se ilustra cómo conectar Power Apps con una base de datos SQL local, configurar componentes visuales, y manejar operaciones CRUD (Crear, Leer, Actualizar y Eliminar) de manera eficaz.
Replicaremos el diseño en power apps , sobre las especificaciones antes nombradas.
Pero en lugar de una tabla fija en Sharepoint , serán unas tablas en base a un modelo de datos transaccional en SQL.
Debemos replicar este modelo que esta en SP y pasarlo a crearlo en transaccional en SQL , debemos crear las tablas con llaves primarias para que funcione, y sea eficiente.
Tenemos nuestra tabla creada Create table Estudiantes
(
id int identity(1,2) primary key,
Nombre varchar(255),
Apellido varchar(255),
Area varchar(255),
Grado varchar(2),
DiaReporte date,
Activo int,
)
Consulta delñl insert into
INSERT INTO Estudiantes (Nombre, Apellido, Area, Grado, DiaReporte, Activo) VALUES
(‘Reza’, ‘Dorrani’, ‘Geography’, ‘B’, ‘2023-04-01’, 1),
(‘James’, ‘Taylor’, ‘Geography’, ‘A’, ‘2023-03-27’, 1),
(‘Rafael’, ‘Nadal’, ‘Geography’, ‘C’, ‘2023-04-12’, 0),
(‘Serena’, ‘Williams’, ‘Maths’, ‘A’, ‘2023-04-06’, 1),
(‘Novak’, ‘Djokovic’, ‘English’, ‘B’, ‘2023-03-27’, 1),
(‘Stan’, ‘Wawrinka’, ‘Maths’, ‘C’, ‘2023-03-27’, 0),
(‘Andrev’, ‘Rublev’, ‘Geography’, ‘A’, ‘2023-04-11’, 1),
(‘Daniel’, ‘Medvedev’, ‘Maths’, ‘B’, ‘2023-04-12’, 0);
Para recrear el paso a paso del diseño.
Nos vamos a power apps para que funcione de manera eficiente
Insertaremos una galería vertical blanca
Concetaremos el origen al sql de nuestra maquina local
Insertamos inicialmente una seria de componente visual como son entradas de texto , desplegables un selector de fechas y una casilla
Luego de inserta los valores deseaos recordemos que son los controles modernos
Casos específicos para los controles modernos para el desplegable y sus controles, para el caso de ítems y par el caos de Defaultselectditem, como es SQL tenemos consideraciones diferentes en ítems Distinct(Estudiantes; Area)
Y en DefaultSelectedItems {Value: ThisItem.Area}
Para el atributo casilla colocamos un if en If(ThisItem.Activo=1;true;false) en la opción Checked
Creamos específicamente , el proceso en el cual cuando creemos un nuevo registros editamos el proceso visual
If(IsBlank(LookUp(Colgrid;id=ThisItem.id));
Collect(Colgrid;ThisItem))
Continuamos con la actulizaciones para ciertos casos en los cuales los necesitemos usar
UpdateIf(Colgrid;id=ThisItem.id;{Nombre:TextInputCanvas1_1.Value;Apellido:TextInputCanvas1.Value;Area:DropdownCanvas1.Selected.Value;Grado:DropdownCanvas1_1.Selected.Value;DiaReporte:DatePickerCanvas1.SelectedDate;Activo:CheckboxCanvas1.Checked})
Ahora para activar el botón de control seleccionaremos la parte de validación, usaremos el select en la propiedad onchange, menos en la opción casilla la cual no posee esta opción
Patch(
Estudiantes;
ShowColumns(
Colgrid;
Nombre;
Apellido;
Area;Grado;DiaReporte;Activo;id));;
Notify(«Grid updates saved successfully»; NotificationType.Success;3000);;
Clear(Colgrid)
Recordemos que el código de arriba es para actulizar elementos ojo con ese paso este fase es para actulizar en base a la modificación que se realice
Este código lo que realice es el análisis y carga de datos necesario para poder funcionar de manera eficiente
Ahora para que el botón de editar funcione , lo que realizamos específicamente es una edición donde modificamos cada proceso de validación del desarrollo If(CountRows(Colgrid)=0; DisplayMode.Disabled;DisplayMode.Edit)
Añadiremos el boton de nuevo tendrá este patch que lo que realiza es una `pequeña trampa para que cargue de manera eficiente Patch(Estudiantes;Defaults(Estudiantes);
{Nombre:»Nuevo Registro»})
Ahora añadiremos un botón de eliminar para remover los ítems
Remove(Estudiantes;ThisItem)
Ahora procedemos a crear un filtro para este diseño , es decir un filtro por Area , añadiemos el filtro y editamos la conexión del grid Filter(Estudiantes;Area=DropdownCanvas2.Selected.Value)
Por ultimo añadimos un reset al botón de canvas para que actualice y me muestre todo en caso de no estar filtrado
Reset(DropdownCanvas2)
Con estos pasos tenemos el diseño amigable de un Crud DESDE POWER APPS HACIA SQL+
La migración de una tabla fija en SharePoint a un modelo de datos transaccional en SQL mediante Power Apps implica una serie de pasos técnicos y precisos. Desde la creación de la tabla en SQL, la inserción de datos, hasta la configuración de componentes visuales y operaciones CRUD en Power Apps, cada etapa es crucial para garantizar un funcionamiento eficiente y amigable del sistema. Este artículo proporciona una guía completa para llevar a cabo esta migración, facilitando así la gestión y actualización de los datos de manera eficiente y segura.
Video Completo :
Vicente Antonio Juan Magallanes.